From 6c467481fdaccead755bb803224c555b42e5579b Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期四, 17 四月 2025 19:12:42 +0800
Subject: [PATCH] 999

---
 src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java   |    4 
 src/main/java/com/zy/asrs/service/WrkMastService.java            |    2 
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java      |   94 +++++++++++++++++++------------
 src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java |   27 ++++++--
 src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java   |    5 +
 src/main/java/com/zy/asrs/mapper/WrkMastMapper.java              |    3 +
 src/main/resources/mapper/WrkMastMapper.xml                      |   14 ++++
 src/main/java/com/zy/asrs/task/WrkMastScheduler.java             |    2 
 src/main/java/com/zy/asrs/service/impl/NoLiftInServiceImpl.java  |   23 +++----
 src/main/java/com/zy/core/thread/impl/NyLiftThread.java          |    2 
 10 files changed, 116 insertions(+), 60 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
index 5bb9bce..f4b320f 100644
--- a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
@@ -55,6 +55,9 @@
 
     WrkMast selectShuttleWorking(@Param("shuttleNo") Integer shuttleNo);//鏄惁鏈夌┛姊溅浠诲姟(绉诲簱浠诲姟闄ゅ)
 
+    WrkMast selectShuttleWorking2(@Param("shuttleNo") Integer shuttleNo, @Param("wrkNo") Integer wrkNo, @Param("wrkNo2") Integer wrkNo2);//鏄惁鏈夌┛姊溅浠诲姟(绉诲簱浠诲姟闄ゅ)
+
+
     WrkMast selectByBarcode(String barcode);
 
     List<WrkMast> selectInWrkMastByLiftNo(Integer liftNo);//鎼滅储鎸囧畾鎻愬崌鏈虹殑鍏ュ簱浠诲姟
diff --git a/src/main/java/com/zy/asrs/service/WrkMastService.java b/src/main/java/com/zy/asrs/service/WrkMastService.java
index 176416a..37197a5 100644
--- a/src/main/java/com/zy/asrs/service/WrkMastService.java
+++ b/src/main/java/com/zy/asrs/service/WrkMastService.java
@@ -13,6 +13,8 @@
 
     WrkMast selectByShuttleNo(Integer shuttleNo);
 
+    WrkMast selectShuttleWorking2(Integer shuttleNo, Integer wrkNo, Integer wrkNo2);
+
     Boolean judgeInbound(WrkMast wrkMast);
 
     //鏌ヨ鎸囧畾妤煎眰寰呭垎閰嶈溅杈嗙殑浠诲姟
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 2b97ce7..ad2d629 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -101,11 +101,6 @@
     private BasWrkStatusService wrkStatusService;
 
 
-    public static List<Integer> staNosIn = new ArrayList<Integer>() {{
-        add(1015);
-        add(1026);
-    }};
-
     private boolean isInEnable(DevpThread devpThread, Integer staNo) {
         if (staNo == null) {
             return false;
@@ -290,7 +285,7 @@
                     if (liftWrkMast != null) {
                         if (!liftWrkMast.getWrkNo().equals(wrkMast.getWrkNo())) {//鎻愬崌鏈轰换鍔″拰褰撳墠浠诲姟涓嶇浉鍚�
                             News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満瀛樺湪鏈畬鎴愪换鍔★紝绂佹娲惧彂", wrkMast.getWrkNo(), 1);
-                            return;
+                            continue;
                         }
                     }
                     wrkMast.setLiftNo(1);
@@ -302,24 +297,24 @@
 
 
                 String locNo = "1200301";
-                if (wrkMast.getStaNo() == 1025) {
+                if (wrkMast.getStaNo() == 1026) {
                     locNo = "1200305";
                 }
                 boolean dispatchShuttle = shuttleDispatchUtils.searchDispatchShuttleS(wrkMast.getWrkNo(), locNo, wrkMast.getLocNo(), "TRANSPORT_DEVP");
                 if (!dispatchShuttle) {
                     News.info("{}浠诲姟锛岃皟搴﹀皬杞﹀け璐�", wrkMast.getWrkNo());
-                    return;
+                    continue;
+                } else {
+                    News.info("{}浠诲姟锛岃皟搴﹀皬杞﹀け鎴愬姛", wrkMast.getWrkNo());
                 }
                 wrkMast.setWrkSts(WrkStsType.INBOUND_SHUTTLE_RUN.sts);
                 wrkMast.setLiftNo(null);
                 wrkMast.setSystemMsg("");//娓呯┖娑堟伅
                 wrkMast.setModiTime(new Date());
-                if (wrkMastService.updateById(wrkMast)) {
-                    return;
+                if (!wrkMastService.updateById(wrkMast)) {
+                    News.info("{}浠诲姟锛屾洿鏂板伐浣滄。澶辫触", wrkMast.getWrkNo());
                 }
             }
-
-
         }
     }
 
@@ -332,21 +327,21 @@
         List<WrkMast> wrkSts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("wrk_sts", WrkStsType.NEW_OUTBOUND.sts).in("sta_no", 1013, 1024));
         for (WrkMast wrkMast : wrkSts) {
             if (devpThread == null) {
-                return;
+                continue;
             }
             Map<Integer, StaProtocol> station = devpThread.getStation();
             StaProtocol staProtocol = station.get(wrkMast.getStaNo());
             if (staProtocol == null) {
-                return;
+                continue;
             }
 
             if (!staProtocol.isAutoing()) {
                 News.info("{}浠诲姟锛寋}绔欑偣锛屼笉鍦ㄨ嚜鍔ㄧ姸鎬�", wrkMast.getWrkNo(), staProtocol.getSiteId());
-                return;
+                continue;
             }
             if (!staProtocol.isOutEnable()) {
                 News.info("{}浠诲姟锛寋}绔欑偣锛屾病鏈夊彲鍑轰俊鍙�", wrkMast.getWrkNo(), staProtocol.getSiteId());
-                return;
+                continue;
             }
             String locNo = "1200301";
             if (wrkMast.getStaNo() == 1024) {
@@ -355,7 +350,7 @@
             boolean dispatchShuttle = shuttleDispatchUtils.searchDispatchShuttleS(wrkMast.getWrkNo(), wrkMast.getSourceLocNo(), locNo, "TRANSPORT_DEVP");
             if (!dispatchShuttle) {
                 News.info("{}浠诲姟锛岃皟搴﹀皬杞﹀け璐�", wrkMast.getWrkNo());
-                return;
+                continue;
             } else {
                 News.info("{}浠诲姟锛屾棤鎻愬崌鏈哄璋冨害灏忚溅鎴愬姛", wrkMast.getWrkNo());
             }
@@ -363,8 +358,11 @@
             wrkMast.setWrkSts(WrkStsType.OUTBOUND_SHUTTLE_RUN.sts);
             wrkMast.setSystemMsg("");//娓呯┖娑堟伅
             wrkMast.setModiTime(now);
-            if (wrkMastService.updateById(wrkMast)) {
-                return;
+            if (!wrkMastService.updateById(wrkMast)) {
+                News.info("{}浠诲姟锛屾洿鏂板伐浣滄。澶辫触", wrkMast.getWrkNo());
+            } else {
+                WrkMast wrkMast1 = wrkMastService.selectByMainWrkNo(wrkMast.getWrkNo());
+                News.info("{}浠诲姟锛岀Щ鍔ㄤ换鍔$敓鎴愭垚鍔熲�斺��1", wrkMast1.getWrkNo());
             }
         }
     }
@@ -834,7 +832,6 @@
             boolean result = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
 
             wrkMast.setWrkSts(WrkStsType.INBOUND_DEVICE_RUN.sts);
-            wrkMast.setLiftNo(1);
             wrkMast.setSystemMsg("");//娓呯┖娑堟伅
             wrkMast.setModiTime(now);
             if (wrkMastService.updateById(wrkMast)) {
@@ -909,19 +906,42 @@
                 News.info("{}浠诲姟锛寋}绔欑偣锛屾棤鎵樼洏", wrkMast.getWrkNo(), staProtocol.getSiteId());
                 return false;
             }
+            if (sourceStaNo == 1023) {
+                if (staProtocol.getFinishWorkNo().intValue() != wrkMast.getWrkNo()) {
+                    News.info("{}浠诲姟锛寋}绔欑偣锛屼换鍔″彿涓嶄竴鑷�", wrkMast.getWrkNo(), staProtocol.getSiteId());
+                    return false;
+                }
+                if (!station.get(1022).getBarcode().equals(wrkMast.getBarcode())) {
+                    News.info("{}浠诲姟锛寋}绔欑偣锛屾墭鐩樼爜涓嶅尮閰嶏紝绔欑偣鎵樼洏鐮侊細{}锛屼换鍔℃墭鐩樼爜锛歿}", wrkMast.getWrkNo(), staProtocol.getSiteId(), staProtocol.getBarcode(), wrkMast.getBarcode());
+                    return false;
+                }
+            } else {
+                if (staProtocol.getWorkNo().intValue() != wrkMast.getWrkNo()) {
+                    News.info("{}浠诲姟锛寋}绔欑偣锛屼换鍔″彿涓嶄竴鑷�", wrkMast.getWrkNo(), staProtocol.getSiteId());
+                    return false;
+                }
+                if (!staProtocol.getBarcode().equals(wrkMast.getBarcode())) {
+                    News.info("{}浠诲姟锛寋}绔欑偣锛屾墭鐩樼爜涓嶅尮閰嶏紝绔欑偣鎵樼洏鐮侊細{}锛屼换鍔℃墭鐩樼爜锛歿}", wrkMast.getWrkNo(), staProtocol.getSiteId(), staProtocol.getBarcode(), wrkMast.getBarcode());
+                    return false;
+                }
+            }
 
-            if (staProtocol.getWorkNo().intValue() != wrkMast.getWrkNo()) {
-                News.info("{}浠诲姟锛寋}绔欑偣锛屼换鍔″彿涓嶄竴鑷�", wrkMast.getWrkNo(), staProtocol.getSiteId());
+            String locNo = "0200305";
+            if (wrkMast.getSourceStaNo() == 1012) {
+                locNo = "0200301";
+            }
+            boolean dispatchShuttle = shuttleDispatchUtils.searchDispatchShuttleS(wrkMast.getWrkNo(), locNo, wrkMast.getLocNo(), "TRANSPORT_LIFT");
+            if (!dispatchShuttle) {
+                News.info("{}浠诲姟锛岃皟搴﹀皬杞﹀け璐�", wrkMast.getWrkNo());
                 return false;
             }
 
-            if (!staProtocol.getBarcode().equals(wrkMast.getBarcode())) {
-                News.info("{}浠诲姟锛寋}绔欑偣锛屾墭鐩樼爜涓嶅尮閰嶏紝绔欑偣鎵樼洏鐮侊細{}锛屼换鍔℃墭鐩樼爜锛歿}", wrkMast.getWrkNo(), staProtocol.getSiteId(), staProtocol.getBarcode(), wrkMast.getBarcode());
-                return false;
+            int lev = 105;
+            if (wrkMast.getSourceStaNo() == 1012) {
+                lev = 101;
             }
-
             //鑾峰彇鎻愬崌鏈哄懡浠�
-            List<LiftCommand> liftCommands = liftThread.getPalletInCommand(wrkMast.getWrkNo(), wrkMast.getSourceStaNo(), 101);
+            List<LiftCommand> liftCommands = liftThread.getPalletInCommand(wrkMast.getWrkNo(), sourceStaNo, lev);
             LiftCommand liftCommand = liftCommands.get(0);
 
             int deviceWrk = commonService.getWorkNo(8);//鐢熸垚鎻愬崌鏈鸿澶囧伐浣滃彿
@@ -981,15 +1001,15 @@
                 News.info("{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮棤鎵樼洏锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo());
                 return false;
             }
-            String locNo = "0200305";
-            if (wrkMast.getStaNo() == 1011) {
-                locNo = "0200301";
-            }
-            boolean dispatchShuttle = shuttleDispatchUtils.searchDispatchShuttleS(wrkMast.getWrkNo(), locNo, wrkMast.getLocNo(), "TRANSPORT_LIFT");
-            if (!dispatchShuttle) {
-                News.info("{}浠诲姟锛岃皟搴﹀皬杞﹀け璐�", wrkMast.getWrkNo());
-                return false;
-            }
+//            String locNo = "0200305";
+//            if (wrkMast.getStaNo() == 1011) {
+//                locNo = "0200301";
+//            }
+//            boolean dispatchShuttle = shuttleDispatchUtils.searchDispatchShuttleS(wrkMast.getWrkNo(), locNo, wrkMast.getLocNo(), "TRANSPORT_LIFT");
+//            if (!dispatchShuttle) {
+//                News.info("{}浠诲姟锛岃皟搴﹀皬杞﹀け璐�", wrkMast.getWrkNo());
+//                return false;
+//            }
 
             wrkMast.setWrkSts(WrkStsType.INBOUND_SHUTTLE_RUN.sts);
             // TODO 娴嬭瘯涓彂鐜颁笉鑳借В绂侊紝鍥犱负鎻愬崌鏈洪噷瀛樺湪鎵樼洏锛屽氨涓嶈兘瑙g锛屼笉鐒跺彟涓�杈嗗皬杞﹀彲鑳戒細杩戞彁鍗囨満
@@ -1541,7 +1561,7 @@
             Map<Integer, StaProtocol> station = devpThread.getStation();
             WrkMast wrkMast = null;
             for (StaProtocol staProtocol : station.values()) {
-                if (staProtocol.getSiteId() == 1013 || staProtocol.getSiteId() == 1014) {
+                if (staProtocol.getSiteId() == 1013 || staProtocol.getSiteId() == 1024) {
                     wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", staProtocol.getFinishWorkNo()).eq("wrk_sts", WrkStsType.OUTBOUND_DEVP_RUN.sts));
                     if (wrkMast != null) {
                         wrkMast.setWrkSts(WrkStsType.COMPLETE_OUTBOUND.sts);
diff --git a/src/main/java/com/zy/asrs/service/impl/NoLiftInServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/NoLiftInServiceImpl.java
index 863ba5a..7c95c3c 100644
--- a/src/main/java/com/zy/asrs/service/impl/NoLiftInServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/NoLiftInServiceImpl.java
@@ -139,12 +139,12 @@
                 News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎鏃犵墿", wrkMast.getWrkNo(), wrkMast.getSourceLocNo());
                 return false;
             }
-            //TODO
-//            if (!staProtocol.getFinishWorkNo().equals(wrkMast.getWrkNo())) {
-//                            log.info( "{}浠诲姟锛寋}鍙疯緭閫佺嚎鐨勫伐浣滃彿鍜屽伐浣滄。涓嶅尮閰�", wrkMast.getWrkNo(), wrkMast.getSourceStaNo());
-//                News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎鐨勫伐浣滃彿鍜屽伐浣滄。涓嶅尮閰�", wrkMast.getWrkNo(), wrkMast.getSourceStaNo());
-//                return false;
-//            }
+
+            if (!staProtocol.getFinishWorkNo().equals(wrkMast.getWrkNo())) {
+                            log.info( "{}浠诲姟锛寋}鍙疯緭閫佺嚎鐨勫伐浣滃彿鍜屽伐浣滄。涓嶅尮閰�", wrkMast.getWrkNo(), wrkMast.getSourceStaNo());
+                News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎鐨勫伐浣滃彿鍜屽伐浣滄。涓嶅尮閰�", wrkMast.getWrkNo(), wrkMast.getSourceStaNo());
+                return false;
+            }
             //灏忚溅澶勪簬绌洪棽鐘舵��
             if (!shuttleThread.isIdle()) {
                 News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}灏忚溅锛屽皬杞﹀繖纰屼腑", wrkMast.getWrkNo(), shuttleProtocol.getShuttleNo());
@@ -841,12 +841,11 @@
                 News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎鏃犵墿", wrkMast.getWrkNo(), wrkMast.getSourceStaNo());
                 return false;
             }
-            //TODO
-//            if (!staProtocol.getFinishWorkNo().equals(wrkMast.getWrkNo())) {
-//                log.error("{}浠诲姟锛寋}鍙疯緭閫佺嚎鐨勫伐浣滃彿鍜屽伐浣滄。涓嶅尮閰�", wrkMast.getWrkNo(), wrkMast.getSourceStaNo());
-//                News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎鐨勫伐浣滃彿鍜屽伐浣滄。涓嶅尮閰�", wrkMast.getWrkNo(), wrkMast.getSourceStaNo());
-//                return false;
-//            }
+            if (!staProtocol.getFinishWorkNo().equals(wrkMast.getWrkNo())) {
+                log.error("{}浠诲姟锛寋}鍙疯緭閫佺嚎鐨勫伐浣滃彿鍜屽伐浣滄。涓嶅尮閰�", wrkMast.getWrkNo(), wrkMast.getSourceStaNo());
+                News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎鐨勫伐浣滃彿鍜屽伐浣滄。涓嶅尮閰�", wrkMast.getWrkNo(), wrkMast.getSourceStaNo());
+                return false;
+            }
 
             if (!shuttleProtocol.getCurrentLocNo().equals(wrkMast.getSourceLocNo())) {
                 return false;
diff --git a/src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java
index b6ce7a7..53a225c 100644
--- a/src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/NoLiftOutServiceImpl.java
@@ -144,12 +144,13 @@
             }
             int lev = Utils.getLev(wrkMast.getLocNo());
             StaProtocol staProtocol2 = devpThread.getStation().get(lev == 1 ? 1014 : 1025);
-            //TODO
-//            if (!staProtocol2.isOutEnable()) {
-//                log.error("{}浠诲姟锛寋}鍙疯緭閫佺嚎涓嶅彲鍑�", wrkMast.getWrkNo(), lev == 1 ? 1014 : 1025);
-//                News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎涓嶅彲鍑�", wrkMast.getWrkNo(), lev == 1 ? 1014 : 1025);
-//                return false;
-//            }
+
+            if (!staProtocol2.isOutEnable()) {
+                log.error("{}浠诲姟锛寋}鍙疯緭閫佺嚎涓嶅彲鍑�", wrkMast.getWrkNo(), lev == 1 ? 1014 : 1025);
+                News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}鍙疯緭閫佺嚎涓嶅彲鍑�", wrkMast.getWrkNo(), lev == 1 ? 1014 : 1025);
+                return false;
+            }
+
             StaProtocol staProtocol = devpThread.getStation().get(lev == 1 ? 1015 : 1026);
             if (staProtocol.isLoading()) {
                 log.error("{}浠诲姟锛寋}鍙疯緭閫佺嚎鏈夌墿", wrkMast.getWrkNo(), wrkMast.getSourceStaNo());
@@ -216,7 +217,7 @@
             //鑾峰彇绌挎杞︽渶杩戜笖绌洪棽鐨勬彁鍗囨満
             LiftThread liftThread = LiftUtils.getRecentLift(shuttleProtocol.getCurrentLocNo());
             if (liftThread == null) {
-                News.info("{}鍙峰皬杞︼紝{}鐩爣搴撲綅锛屾病鏈夊彲鐢ㄧ┖闂叉彁鍗囨満", shuttleProtocol.getShuttleNo(), shuttleProtocol.getCurrentLocNo());
+                News.info("{}鍙峰皬杞︼紝{}灏忚溅搴撲綅锛屾病鏈夊彲鐢ㄧ┖闂叉彁鍗囨満", shuttleProtocol.getShuttleNo(), shuttleProtocol.getCurrentLocNo());
                 return false;//娌℃湁鍙敤涓旂┖闂茬殑鎻愬崌鏈�
             }
 
@@ -302,6 +303,18 @@
                 }
 
                 liftProtocol = liftThread.getStatus();
+                //鍒ゆ柇鎻愬崌鏈哄唴鏄惁鏈夊皬杞�
+                if (liftProtocol.getHasCar()) {
+                    News.info("{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁灏忚溅锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo());
+                    return false;
+                }
+
+                //鍒ゆ柇鎻愬崌鏈哄唴鏄惁鏈夋墭鐩�
+                if (liftProtocol.getHasTray()) {
+                    News.info("{}浠诲姟锛寋}鍙锋彁鍗囨満锛屾彁鍗囨満鍐呮湁鎵樼洏锛岀姝㈡淳鍙�", wrkMast.getWrkNo(), liftProtocol.getLiftNo());
+                    return false;
+                }
+
                 if (liftProtocol == null) {
                     News.info("{}鍙锋彁鍗囨満瀵硅薄涓嶅瓨鍦�", wrkMast.getLiftNo());
                     return false;
diff --git a/src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java
index 01aa8e7..157030e 100644
--- a/src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java
@@ -122,6 +122,11 @@
     }
 
     @Override
+    public WrkMast selectShuttleWorking2(Integer shuttleNo,Integer wrkNo,Integer wrkNo2) {
+        return this.baseMapper.selectShuttleWorking2(shuttleNo,wrkNo,wrkNo2);
+    }
+
+    @Override
     public WrkMast selectByShuttleNo(Integer shuttleNo) {
         return this.baseMapper.selectByShuttleNo(shuttleNo);
     }
diff --git a/src/main/java/com/zy/asrs/task/WrkMastScheduler.java b/src/main/java/com/zy/asrs/task/WrkMastScheduler.java
index 725af3a..7b825ed 100644
--- a/src/main/java/com/zy/asrs/task/WrkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WrkMastScheduler.java
@@ -212,8 +212,6 @@
                 if (!wrkMastService.updateById(main)) {
                     log.info("鏇存柊涓诲伐浣滄。[workNo={}]澶辫触", wrkMast.getWrkNo());
                 }
-            } else {
-                log.info("鎵句笉鍒颁富宸ヤ綔妗workNo={},mainWorkNo={}]澶辫触", wrkMast.getWrkNo(), wrkMast.getMainWrkNo());
             }
             // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
             if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
diff --git a/src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java b/src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java
index 2e9c8bf..a87747e 100644
--- a/src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java
+++ b/src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java
@@ -402,13 +402,13 @@
         }
 
         //鍒ゆ柇鏄惁鏈夊叾浠栦换鍔℃鍦ㄤ娇鐢ㄧ┛姊溅
-        WrkMast wrkMast2 = wrkMastService.selectShuttleWorking(shuttleNo);
+        WrkMast wrkMast2 = wrkMastService.selectShuttleWorking2(shuttleNo, wrkNo, mainWrkMast != null ? mainWrkMast.getMainWrkNo() : null);
         if (wrkMast2 != null && !disableCheck) {//灏忚溅瀛樺湪鍏朵粬宸ヤ綔妗d换鍔★紝绛夊緟鎵ц瀹屾垚鍚庡啀鐢熸垚鏂扮殑浠诲姟
             if (mainWrkMast == null) {
                 News.info("{}鍙峰皬杞︼紝瀛樺湪鍏朵粬宸ヤ綔妗d换鍔★紝绛夊緟鎵ц瀹屾垚鍐嶇敓鎴愭柊鐨勪换鍔�", shuttleNo);
                 return false;
             } else {
-                if (!mainWrkMast.getShuttleNo().equals(shuttleNo)) {
+                if (mainWrkMast.getShuttleNo() != null && !mainWrkMast.getShuttleNo().equals(shuttleNo)) {
                     News.info("{}鍙峰皬杞︼紝瀛樺湪鍏朵粬宸ヤ綔妗d换鍔★紝绛夊緟鎵ц瀹屾垚鍐嶇敓鎴愭柊鐨勪换鍔�", shuttleNo);
                     return false;
                 }
diff --git a/src/main/java/com/zy/core/thread/impl/NyLiftThread.java b/src/main/java/com/zy/core/thread/impl/NyLiftThread.java
index 845085e..9694939 100644
--- a/src/main/java/com/zy/core/thread/impl/NyLiftThread.java
+++ b/src/main/java/com/zy/core/thread/impl/NyLiftThread.java
@@ -59,6 +59,8 @@
         put(7, 107);
         put(8, 108);
         put(9, 109);
+        put(10, 1023);
+        put(11, 1032);
     }};
 
     public static final HashMap<Integer, List<String>> liftNodeMap = new HashMap<Integer, List<String>>() {{
diff --git a/src/main/resources/mapper/WrkMastMapper.xml b/src/main/resources/mapper/WrkMastMapper.xml
index 7a35e8d..e8f6cfa 100644
--- a/src/main/resources/mapper/WrkMastMapper.xml
+++ b/src/main/resources/mapper/WrkMastMapper.xml
@@ -189,6 +189,20 @@
         order by io_pri desc, io_time, wrk_no asc limit 0,1
     </select>
 
+    <select id="selectShuttleWorking2" resultMap="BaseResultMap">
+        select *
+        from asr_wrk_mast
+        where 1 = 1
+          and shuttle_no = #{shuttleNo}
+        <if test="wrkNo !=null">
+            and wrk_no != #{wrkNo}
+        </if>
+        <if test="wrkNo2 !=null">
+            and wrk_no != #{wrkNo2}
+        </if>
+        order by io_pri desc, io_time, wrk_no asc limit 0,1
+    </select>
+
     <select id="selectByBarcode" resultMap="BaseResultMap">
         select *
         from asr_wrk_mast

--
Gitblit v1.9.1