Bladeren bron

涂布入库agv交互(到指定位置再分配站台)

xu.lu 3 jaren geleden
bovenliggende
commit
4858e060bc
2 gewijzigde bestanden met toevoegingen van 23 en 10 verwijderingen
  1. BIN
      DLL/PLC.Siemens.dll
  2. 23 10
      Projects/永冠OPP/WCS.Service/Works/Station/涂布入库.cs

BIN
DLL/PLC.Siemens.dll


+ 23 - 10
Projects/永冠OPP/WCS.Service/Works/Station/涂布入库.cs

@@ -47,11 +47,11 @@ namespace WCS.Service.Works.Station
 
                         if (agvtask.Status == AGVTaskStatus.新建)
                         {
-                            if (obj.Items.Any(v => !v.Data3.Status.HasFlag(StationStatus.自动)))
-                            {
-                                InfoLog.INFO_INFO($"{station}手动状态");
-                                continue;
-                            };
+                            //if (obj.Items.Any(v => !v.Data3.Status.HasFlag(StationStatus.自动)))
+                            //{
+                            //    InfoLog.INFO_INFO($"{station}手动状态");
+                            //    continue;
+                            //};
                             var qty = db.Default.Set<WCS_AGVTask>().Where(v => v.TaskType == AGVTaskType.入库 && v.Status > AGVTaskStatus.新建 && v.Status < AGVTaskStatus.完成);
                             //同时最多只能有10个任务被确认
                             if (qty.Count() >= 10)
@@ -60,6 +60,24 @@ namespace WCS.Service.Works.Station
                                 continue;
                             };
 
+                            //if (qty.Count(v => v.Station == obj.Entity.CODE) > qty.Count(v => v.Station != obj.Entity.CODE))
+                            //{
+                            //    InfoLog.INFO_INFO($"{station}触发均分");
+                            //    continue;
+                            //}
+
+                            //agvtask.Station = obj.Entity.CODE;
+                            agvtask.Status = AGVTaskStatus.确认;
+                            agvtask.UpdateTime = DateTime.Now;
+                        }
+                        else if (agvtask.Status == AGVTaskStatus.确认 && agvtask.Status == agvtask.AGVStatus)
+                        {
+                            if (obj.Items.Any(v => !v.Data3.Status.HasFlag(StationStatus.自动)))
+                            {
+                                InfoLog.INFO_INFO($"{station}手动状态");
+                                continue;
+                            };
+                            var qty = db.Default.Set<WCS_AGVTask>().Where(v => v.TaskType == AGVTaskType.入库 && v.Status > AGVTaskStatus.新建 && v.Status < AGVTaskStatus.完成);
                             if (qty.Count(v => v.Station == obj.Entity.CODE) > qty.Count(v => v.Station != obj.Entity.CODE))
                             {
                                 InfoLog.INFO_INFO($"{station}触发均分");
@@ -67,11 +85,6 @@ namespace WCS.Service.Works.Station
                             }
 
                             agvtask.Station = obj.Entity.CODE;
-                            agvtask.Status = AGVTaskStatus.确认;
-                            agvtask.UpdateTime = DateTime.Now;
-                        }
-                        else if (agvtask.Status == AGVTaskStatus.确认 && agvtask.Status > agvtask.AGVStatus)
-                        {
                             agvtask.Status = AGVTaskStatus.执行;
                             agvtask.UpdateTime = DateTime.Now;
                             db.Default.SaveChanges();