diff --git a/API/TaskManager.Entity/Entity.cs b/API/TaskManager.Entity/Entity.cs
index f8253e8..ee5ff3b 100644
--- a/API/TaskManager.Entity/Entity.cs
+++ b/API/TaskManager.Entity/Entity.cs
@@ -541,10 +541,12 @@ namespace TaskManager.Entity
[ExporterHeader(DisplayName = "版本号")]
public int Version { get; set; } =0;
+ [MaxLength(50)]
[JsonProperty("omterior")]
[ExporterHeader(DisplayName = "内外饰")] // 推测拼写错误并自定义显示名
public string? Omterior { get; set; } = String.Empty;
+ [MaxLength(50)]
[JsonProperty("salseDepartment")]
[ExporterHeader(DisplayName = "销售部门")] // 推测拼写错误并自定义显示名
public string? SalseDepartment { get; set; } = String.Empty;
diff --git a/API/TaskManager.Entity/QRReturnInfo.cs b/API/TaskManager.Entity/QRReturnInfo.cs
index c612207..be4010f 100644
--- a/API/TaskManager.Entity/QRReturnInfo.cs
+++ b/API/TaskManager.Entity/QRReturnInfo.cs
@@ -19,27 +19,42 @@ namespace TaskManager.Entity
public string apiName { get; set; }
///
- /// 收到总数
+ /// 获取的总记录数
///
public int totalGet { get; set; }
///
- /// 未成功数量
+ /// 出错的总记录数
///
public int totalError { get; set; }
///
- /// 成功保存数量
+ /// 保存的总记录数
///
public int totalSave { get; set; }
+
+ ///
+ /// 操作时间
+ ///
+ public DateTime? time { get; set; }
+
+
+
}
public class QRReturnInfo
{
+
+
+
+ //{"code":200,"data":{"batchNo":"BYE4NER8EGYEHV9F51CELEOCBU6CPGYZ","apiName":"supplier_pro_attachment_data","totalGet":1,"totalError":0,"totalSave":1,"time":null},"message":"操作成功"}
+
+
+
///
/// 返回信息,200成功,其他不成功
///
- public string code { get; set; }
+ public int code { get; set; }
///
/// 操作描述
diff --git a/API/Wood.Admin.WebApi/Startup.cs b/API/Wood.Admin.WebApi/Startup.cs
index c27ef33..e3c84a1 100644
--- a/API/Wood.Admin.WebApi/Startup.cs
+++ b/API/Wood.Admin.WebApi/Startup.cs
@@ -74,10 +74,6 @@ namespace Wood.Admin.WebApi
GlobalContext.JwtConfig = Configuration.GetSection("JwtConfig").Get()!;
GlobalContext.Services = services;
GlobalContext.Configuration = Configuration;
-
-
-
-
//初始化 eventbus
services.AddEventBus();
@@ -93,6 +89,7 @@ namespace Wood.Admin.WebApi
// 配置 DbContext 使用 SQL Server 连接字符串
services.AddDbContext(options =>
options.UseSqlServer(GlobalContext.SystemConfig.CustomerDb));
+
// 配置 Hangfire 使用 SQL Server 存储
services.AddHangfire(
diff --git a/API/Wood.Service/Controllers/CheryRecurringJobInputPageController.cs b/API/Wood.Service/Controllers/CheryRecurringJobInputPageController.cs
index f8c0f6f..7f96ce0 100644
--- a/API/Wood.Service/Controllers/CheryRecurringJobInputPageController.cs
+++ b/API/Wood.Service/Controllers/CheryRecurringJobInputPageController.cs
@@ -87,17 +87,11 @@ namespace TaskManager.Controllers
new JsonSerializerOptions
{
PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
-
- Converters= { new DecimalTrimConverter() },
-
- WriteIndented = true // 可选,用于格式化输出
-
-
-
-
+ Converters = { new DecimalTrimConverter() },
+ WriteIndented = false // 可选,用于格式化输出
}
);
- inputjson = RemoveWhitespace(inputjson);
+ //inputjson = RemoveWhitespace(inputjson);
var content = await Post(Url, Path, inputjson,taskId,version);
if (!string.IsNullOrEmpty(content))
{
@@ -173,12 +167,14 @@ namespace TaskManager.Controllers
{
foreach (var sub in sublist)
{
+
string querystr = $"select * from {sub.TableName} where TaskId='{sub.TaskId}' and WriteState=0 and ReadState=1 order by uid";//任务表
var entites = _jobDbContext.Database.GetDbConnection().Query(querystr);//明细表
if (entites.Any())
{
var total = entites.Count();
+ sub.DataCount = total;
int totalPages = (int)Math.Ceiling((double)total / pageSize);
for (int i = sub.SyncedPageCount; i <= totalPages; i++)
@@ -208,13 +204,14 @@ namespace TaskManager.Controllers
itm.WriteState = true;
}
var result = await PostPageAsync(pagedRequest,sub.TaskId, DateTime.Now.ToString("yyyyMMdd"));
- if(result.code == "200")
+ if(result.code == 200)
{
+
_jobDbContext.BulkUpdate(records);
sub.SyncedPageCount = i;
-
- if (result.data.totalGet == total)
+ if (i == totalPages)
{
+
sub.WriteState = true;
_jobDbContext.Set().Update(sub);
_jobDbContext.SaveChanges();
@@ -222,7 +219,9 @@ namespace TaskManager.Controllers
}
else
{
- await _logger.AddError($"第 {i} 页数据保存失败,请检查数据。", TaskName,sub.TaskId, DateTime.Now.ToString("yyyyMMdd"));
+ sub.FailedCount = i*pageSize;
+
+ await _logger.AddError($"第 {i} 页奇瑞数据保存失败 {result.message}。", TaskName,sub.TaskId, DateTime.Now.ToString("yyyyMMdd"));
}
}
diff --git a/API/Wood.Service/Controllers/CherySupplierProAttachmentDataService.cs b/API/Wood.Service/Controllers/CherySupplierProAttachmentDataService.cs
index 94be581..a4f440e 100644
--- a/API/Wood.Service/Controllers/CherySupplierProAttachmentDataService.cs
+++ b/API/Wood.Service/Controllers/CherySupplierProAttachmentDataService.cs
@@ -5,6 +5,9 @@ using TaskManager.EntityFramework;
namespace TaskManager.Controllers
{
+ ///
+ /// 附件类数据
+ ///
public class CherySupplierProAttachmentDataService : CheryRecurringJobInputPageController
{
public CherySupplierProAttachmentDataService(HttpClient httpClient, JobDbContext jobDbContext, LogController log, IRepository repository) : base(httpClient, jobDbContext, log, repository)