Pengxy пре 9 месеци
родитељ
комит
aef44618c7

+ 19 - 5
MicroServices/Business/Business.Application/ReplenishmentManagement/ReplenishmentAppService.cs

@@ -3191,7 +3191,8 @@ namespace Business.Replenishment
             if (workOrdSave.Any())
             {
                 _businessDbContext.BulkInsert(workOrdSave);
-                CalcPriority(input.factory_id.ToString());
+                //CalcPriority(input.factory_id.ToString());
+                RefreshPriority(null, input.factory_id.ToString());
             }
             var DBworkOrdList = _workOrdMaster.Select(a => workOrdSave.Count > 0 && a.Domain == workOrdSave[0].Domain && workOrdSave.Select(c => c.WorkOrd).Contains(a.WorkOrd));
             if (workOrdRoutingSave.Any())
@@ -3573,7 +3574,8 @@ namespace Business.Replenishment
             if (workOrdSave.Any())
             {
                 _businessDbContext.BulkInsert(workOrdSave);
-                CalcPriority(input.factory_id.ToString());
+                //CalcPriority(input.factory_id.ToString());
+                RefreshPriority(null, input.factory_id.ToString());
             }
             var DBworkOrdList = _workOrdMaster.Select(a => workOrdSave.Count > 0 && a.Domain == workOrdSave[0].Domain && workOrdSave.Select(c => c.WorkOrd).Contains(a.WorkOrd));
             if (workOrdRoutingSave.Any())
@@ -4677,6 +4679,11 @@ namespace Business.Replenishment
 
         public List<WorkOrdMaster> RefreshPriority(List<string> workOrdMasters, string domain)
         {
+            if (workOrdMasters == null)
+            {
+                var workOrds = _workOrdMaster.Select(a => (string.IsNullOrEmpty(a.Status) || a.Status.ToUpper() == "P") && a.Typed.ToUpper() != "PW" && a.Domain == domain && a.IsActive);
+                workOrdMasters = workOrds.Select(w => w.WorkOrd).ToList();
+            }
             //优先级越高越往后排
             var prioritylist = _PriorityCode.Select(p => p.IsActive && p.Domain == domain).OrderBy(p => p.Priority).ToList();
             //排序字段
@@ -4723,7 +4730,14 @@ namespace Business.Replenishment
                 {
                     works[i].Class = 9999m;
                 }
+            }
 
+            works.Sort(new DynamicOrderComparer<WorkOrdMaster>(sortColumns, sortDirections));
+            decimal Priority = 1.0m;
+            for (int i = 0; i < works.Count; i++)
+            {
+                works[i].Priority = Priority;
+                Priority = Priority + 1.0m;
                 //拼接
                 var str = "";
                 foreach (var fieldName in sortColumns)
@@ -4736,8 +4750,7 @@ namespace Business.Replenishment
                 }
                 works[i].PriorityNo = str.Substring(1);
             }
-
-            works.Sort(new DynamicOrderComparer<WorkOrdMaster>(sortColumns, sortDirections));
+            _businessDbContext.BulkUpdate(works);
             return works;
         }
 
@@ -5853,7 +5866,8 @@ namespace Business.Replenishment
                                 {
                                     workOrdSave.ForEach(a => { a.AnalogCalcVersion = analogCalcVersion; });
                                     _businessDbContext.BulkInsert(workOrdSave);
-                                    CalcPriority(input.factoryId.ToString());
+                                    //CalcPriority(input.factoryId.ToString());
+                                    RefreshPriority(null, input.factoryId.ToString());
                                 }
                                 var DBworkOrdList = _workOrdMaster.Select(a => workOrdSave.Count > 0 && a.Domain == workOrdSave[0].Domain && workOrdSave.Select(c => c.WorkOrd).Contains(a.WorkOrd));
                                 if (workOrdRoutingSave.Any())

+ 1 - 1
MicroServices/Business/Business.Application/ResourceExamineManagement/ResourceExamineAppService.cs

@@ -6240,7 +6240,7 @@ namespace Business.ResourceExamineManagement
                 Priority = p.Priority,
                 QtyOrded = p.QtyOrded
             }).ToList();
-            //处理工单优先级:正常投产工单优先级最高,其次是前处理状态为部分完成/全部完成,其他按照工单优先级排
+            //处理工单优先级:特急工单、正常投产工单、加急工单、已备料工单、下达工单、其他工单
             decimal ytc = 1m;
             decimal ktc = 10000m;
             decimal bktc = 20000m;

+ 12 - 0
MicroServices/Business/QuartzSettings/logs/logs.txt

@@ -4078,3 +4078,15 @@
 {"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2025-06-25T18:03:15.9225399+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
 {"TaskName":"TestTimeOut","GroupName":"systemquartzjob","BeginDate":"2025-06-25T18:03:15.9282499+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
 {"TaskName":"BOM预处理自动任务","GroupName":"BOM预处理自动任务","BeginDate":"2025-06-25T18:03:15.9310798+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2025-06-26T16:02:57.4468077+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2025-06-26T16:02:57.4991197+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2025-06-26T16:02:57.5023627+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2025-06-26T16:02:57.5041596+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"TestTimeOut","GroupName":"systemquartzjob","BeginDate":"2025-06-26T16:02:57.5079309+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"BOM预处理自动任务","GroupName":"BOM预处理自动任务","BeginDate":"2025-06-26T16:02:57.5098457+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步WMS物料订单等基础数据到MySQL","GroupName":"systemquartzjob","BeginDate":"2025-06-26T16:22:01.7320715+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时创建NLog日志按月分表","GroupName":"systemquartzjob","BeginDate":"2025-06-26T16:22:01.769347+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"定时同步MySQL基础数据到MongoDB","GroupName":"systemquartzjob","BeginDate":"2025-06-26T16:22:01.7735507+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"长周期物料PR","GroupName":"systemquartzjob","BeginDate":"2025-06-26T16:22:01.7754136+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"TestTimeOut","GroupName":"systemquartzjob","BeginDate":"2025-06-26T16:22:01.7791384+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}
+{"TaskName":"BOM预处理自动任务","GroupName":"BOM预处理自动任务","BeginDate":"2025-06-26T16:22:01.7809323+08:00","EndDate":null,"Msg":"任务初始化启动成功:6","id":0,"timeflag":null,"changetime":null}