林豪 左 2 lat temu
rodzic
commit
385b547e1f

+ 6 - 6
Projects/永冠OPP/WCS.Service/Extensions/DeviceExtension.cs

@@ -989,42 +989,42 @@ namespace WCS.Service.Extensions
                     switch (Entity.CODE)
                     {
                         case "SRM3":
-                            if (srm.Data3.SCAlarm == 0 || srm.Data2.SRMMode == WCS.Entity.Protocol.SRM.SCMode.远程 || task)
+                            if (srm.Data3.SCAlarm != 0  || srm.Data2.SRMMode != WCS.Entity.Protocol.SRM.SCMode.远程 || task)
                                 throw new DoException("SRM4正在执行出库任务");
                             break;
 
                         case "SRM4":
                             srm = Device.Find("SRM3").Create<SRMDevice>();
                             task = db.Default.Set<WCS_TASK>().Any(v => v.STATUS == TaskStatus.堆垛机执行 && v.DEVICE == "SRM3" && v.TYPE == TaskType.出库);
-                            if (srm.Data3.SCAlarm == 0 || srm.Data2.SRMMode == WCS.Entity.Protocol.SRM.SCMode.远程 || task)
+                            if (srm.Data3.SCAlarm != 0  || srm.Data2.SRMMode != WCS.Entity.Protocol.SRM.SCMode.远程 || task)
                                 throw new DoException("SRM3正在执行出库任务");
                             break;
 
                         case "SRM5":
                             srm = Device.Find("SRM6").Create<SRMDevice>();
                             task = db.Default.Set<WCS_TASK>().Any(v => v.STATUS == TaskStatus.堆垛机执行 && v.DEVICE == "SRM6" && v.TYPE == TaskType.出库);
-                            if (srm.Data3.SCAlarm == 0 || srm.Data2.SRMMode == WCS.Entity.Protocol.SRM.SCMode.远程 || task)
+                            if (srm.Data3.SCAlarm != 0  || srm.Data2.SRMMode != WCS.Entity.Protocol.SRM.SCMode.远程 || task)
                                 throw new DoException("SRM6正在执行出库任务");
                             break;
 
                         case "SRM6":
                             srm = Device.Find("SRM5").Create<SRMDevice>();
                             task = db.Default.Set<WCS_TASK>().Any(v => v.STATUS == TaskStatus.堆垛机执行 && v.DEVICE == "SRM5" && v.TYPE == TaskType.出库);
-                            if (srm.Data3.SCAlarm == 0 || srm.Data2.SRMMode == WCS.Entity.Protocol.SRM.SCMode.远程 || task)
+                            if (srm.Data3.SCAlarm != 0  || srm.Data2.SRMMode != WCS.Entity.Protocol.SRM.SCMode.远程 || task)
                                 throw new DoException("SRM5正在执行出库任务");
                             break;
 
                         case "SRM7":
                             srm = Device.Find("SRM8").Create<SRMDevice>();
                             task = db.Default.Set<WCS_TASK>().Any(v => v.STATUS == TaskStatus.堆垛机执行 && v.DEVICE == "SRM8" && v.TYPE == TaskType.出库);
-                            if (srm.Data3.SCAlarm == 0 || srm.Data2.SRMMode == WCS.Entity.Protocol.SRM.SCMode.远程 || task)
+                            if (srm.Data3.SCAlarm != 0  || srm.Data2.SRMMode != WCS.Entity.Protocol.SRM.SCMode.远程 || task)
                                 throw new DoException("SRM8正在执行出库任务");
                             break;
 
                         case "SRM8":
                             srm = Device.Find("SRM7").Create<SRMDevice>();
                             task = db.Default.Set<WCS_TASK>().Any(v => v.STATUS == TaskStatus.堆垛机执行 && v.DEVICE == "SRM7" && v.TYPE == TaskType.出库);
-                            if (srm.Data3.SCAlarm == 0 || srm.Data2.SRMMode == WCS.Entity.Protocol.SRM.SCMode.远程 || task)
+                            if (srm.Data3.SCAlarm != 0  || srm.Data2.SRMMode != WCS.Entity.Protocol.SRM.SCMode.远程 || task)
                                 throw new DoException("SRM7正在执行出库任务");
                             break;
                     }

+ 2 - 2
Projects/永冠OPP/WCS.Service/Works/Station/BOPP入库.cs

@@ -192,8 +192,8 @@ namespace WCS.Service.Works.Station
                         });
                     }
                     //筛选出优先级最高的可用巷道
-                    var tunnelInfo = tunnelInfos.Where(v => { try { return (v.SRM.Data3.SCAlarm == 0 && v.SRM.Data2.SRMMode == SCMode.远程) || v.SRM.Entity.CODE == "SRM1"; } catch { return false; } })
-                        .Where(v => !db.Default.Set<WCS_TASK>().Any(p => p.Priority > 0 && p.DEVICE == v.SRM.Entity.CODE && p.STATUS < TaskStatus.堆垛机完成)).MinBy(v => tunnelNo.IndexOf(v.Tunnel.CODE));
+                    var tunnelInfo = tunnelInfos.Where(v => { try { return (v.SRM.Data3.SCAlarm == 0 && v.SRM.Data2.SRMMode == SCMode.远程) || v.SRM.Entity.CODE == "SRM1"; } catch { return false; } }).MinBy(v => tunnelNo.IndexOf(v.Tunnel.CODE));
+                        
                     if (tunnelInfo == null) throw new WarnException("无可用巷道");
 
                     //开始变更任务信息