林豪 左 1 年之前
父節點
當前提交
75c74ab782
共有 1 個文件被更改,包括 19 次插入5 次删除
  1. 19 5
      业务工程/分拣库/WCS.WorkEngineering/Systems/UpLoadSystems.cs

+ 19 - 5
业务工程/分拣库/WCS.WorkEngineering/Systems/UpLoadSystems.cs

@@ -34,11 +34,20 @@ namespace WCS.WorkEngineering.Systems
                 var db = _db.Default;
                 var taskList = db.Queryable<WCS_TaskInfo>().Where(x => x.Type == TaskType.OutDepot && x.Status == TaskStatus.ConveyorExecution && x.Uploaded != TaskStatus.ConveyorExecution).ToList();
 
+                var isEnd = false;
+
+                //一次就同步一条数据即可
                 foreach (var task in taskList)
                 {
+                    if (isEnd) continue;
+
                     var res = WmsApi.SrmPickOutCompleted(task.ID);
-                    if (res.ResCode == ResponseStatusCodeEnum.Sucess) taskIdList.Add(task.ID); //更新成功
-                    else World.Log($"出库放货完成状态同步失败:{task.ID}[{res.ResMsg}]");
+                    if (res.ResCode == ResponseStatusCodeEnum.Sucess)
+                    {
+                        taskIdList.Add(task.ID); //更新成功
+                        isEnd = true;
+                    }
+                    World.Log($"出库放货完成状态同步失败:{task.ID}[{res.ResMsg}]");
                 }
 
                 //拆分防止锁表
@@ -64,12 +73,17 @@ namespace WCS.WorkEngineering.Systems
                                  || ((x.Type == TaskType.EnterDepot || x.Type == TaskType.OutDepot) && !x.WarehouseCode.Contains("R")))
                                 && x.Status == TaskStatus.Finish
                                 && x.Uploaded != TaskStatus.Finish).SplitTable(x => x.Take(2)).ToList();
-
+                var isEnd = false;
                 foreach (var task in taskList)
                 {
+                    if (isEnd) continue;
                     var res = WmsApi.CompleteTask(task.Id);
-                    if (res.ResCode == ResponseStatusCodeEnum.Sucess) taskIdList.Add(task.Id);
-                    else World.Log($"入库完成状态同步失败:{task.Id}[{res.ResMsg}]");
+                    if (res.ResCode == ResponseStatusCodeEnum.Sucess)
+                    {
+                        taskIdList.Add(task.Id);
+                        isEnd = true;
+                    }
+                    World.Log($"入库完成状态同步失败:{task.Id}[{res.ResMsg}]");
                 }
 
                 //拆分防止锁表