From 3f0537d8c82eec18fc5e3adc52118efc5e474b77 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期三, 23 四月 2025 13:23:25 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   73 +++++++++++++++++++-----------------
 1 files changed, 39 insertions(+), 34 deletions(-)

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 118d72d..d81f88c 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -179,14 +179,14 @@
                 return false;
             }
 
-//            //妫�娴嬮殰纰嶇墿杞�
-//            boolean checkObstacle = shuttleOperaUtils.checkObstacle(wrkMast.getLocNo(), new ArrayList<Integer>() {{
-//                add(shuttleProtocol.getShuttleNo());
-//            }});
-//            if (checkObstacle) {
-//                News.info("{}浠诲姟锛岄伩闅滆寖鍥存湁灏忚溅锛岀瓑寰呴殰纰嶅皬杞﹁皟绂讳腑", wrkMast.getWrkNo());
-//                return false;
-//            }
+            //妫�娴嬮殰纰嶇墿杞�
+            boolean checkObstacle = shuttleOperaUtils.checkObstacle(wrkMast.getLocNo(), new ArrayList<Integer>() {{
+                add(shuttleProtocol.getShuttleNo());
+            }});
+            if (checkObstacle) {
+                News.info("{}浠诲姟锛岄伩闅滆寖鍥存湁灏忚溅锛岀瓑寰呴殰纰嶅皬杞﹁皟绂讳腑", wrkMast.getWrkNo());
+                return false;
+            }
 
             ShuttleAssignCommand assignCommand = new ShuttleAssignCommand();
             assignCommand.setShuttleNo(shuttleProtocol.getShuttleNo()); // 鍥涘悜绌挎杞︾紪鍙�
@@ -350,14 +350,14 @@
                 return false;
             }
 
-//            //妫�娴嬮殰纰嶇墿杞�
-//            boolean checkObstacle = shuttleOperaUtils.checkObstacle(liftSta.getLocNo(), new ArrayList<Integer>() {{
-//                add(shuttleProtocol.getShuttleNo());
-//            }});
-//            if (checkObstacle) {
-//                News.info("{}浠诲姟锛岄伩闅滆寖鍥存湁灏忚溅锛岀瓑寰呴殰纰嶅皬杞﹁皟绂讳腑", wrkMast.getWrkNo());
-//                return false;
-//            }
+            //妫�娴嬮殰纰嶇墿杞�
+            boolean checkObstacle = shuttleOperaUtils.checkObstacle(liftSta.getLocNo(), new ArrayList<Integer>() {{
+                add(shuttleProtocol.getShuttleNo());
+            }});
+            if (checkObstacle) {
+                News.info("{}浠诲姟锛岄伩闅滆寖鍥存湁灏忚溅锛岀瓑寰呴殰纰嶅皬杞﹁皟绂讳腑", wrkMast.getWrkNo());
+                return false;
+            }
 
             ShuttleAssignCommand assignCommand = new ShuttleAssignCommand();
             assignCommand.setShuttleNo(shuttleProtocol.getShuttleNo()); // 鍥涘悜绌挎杞︾紪鍙�
@@ -539,6 +539,15 @@
 
             if (!shuttleProtocol.getCurrentLocNo().equals(wrkMast.getSourceLocNo())) {
                 News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛屽皬杞︽湭鍒拌揪鍙栬揣浣嶇疆", wrkMast.getWrkNo(), wrkMast.getSourceLocNo());
+                return false;
+            }
+
+            //妫�娴嬮殰纰嶇墿杞�
+            boolean checkObstacle = shuttleOperaUtils.checkObstacle(wrkMast.getLocNo(), new ArrayList<Integer>() {{
+                add(shuttleProtocol.getShuttleNo());
+            }});
+            if (checkObstacle) {
+                News.info("{}浠诲姟锛岄伩闅滆寖鍥存湁灏忚溅锛岀瓑寰呴殰纰嶅皬杞﹁皟绂讳腑", wrkMast.getWrkNo());
                 return false;
             }
 
@@ -1375,14 +1384,14 @@
                 return false;
             }
 
-//            //妫�娴嬮殰纰嶇墿杞�
-//            boolean checkObstacle = shuttleOperaUtils.checkObstacle(basShuttleCharge.getWaitLocNo(), new ArrayList<Integer>() {{
-//                add(shuttleProtocol.getShuttleNo());
-//            }});
-//            if (checkObstacle) {
-//                News.info("{}浠诲姟锛岄伩闅滆寖鍥存湁灏忚溅锛岀瓑寰呴殰纰嶅皬杞﹁皟绂讳腑", wrkMast.getWrkNo());
-//                return false;
-//            }
+            //妫�娴嬮殰纰嶇墿杞�
+            boolean checkObstacle = shuttleOperaUtils.checkObstacle(basShuttleCharge.getWaitLocNo(), new ArrayList<Integer>() {{
+                add(shuttleProtocol.getShuttleNo());
+            }});
+            if (checkObstacle) {
+                News.info("{}浠诲姟锛岄伩闅滆寖鍥存湁灏忚溅锛岀瓑寰呴殰纰嶅皬杞﹁皟绂讳腑", wrkMast.getWrkNo());
+                return false;
+            }
 
             //璋冨害灏忚溅鍘诲緟鏈轰綅
             boolean dispatched = shuttleDispatchUtils.dispatchShuttle(wrkMast.getWrkNo(), basShuttleCharge.getWaitLocNo(), wrkMast.getShuttleNo());
@@ -1767,15 +1776,6 @@
                 return false;//璺緞璁$畻澶辫触
             }
 
-//            //妫�娴嬮殰纰嶇墿杞�
-//            boolean checkObstacle = shuttleOperaUtils.checkObstacle(wrkMast.getLocNo(), new ArrayList<Integer>() {{
-//                add(shuttleProtocol.getShuttleNo());
-//            }});
-//            if (checkObstacle) {
-//                News.info("{}浠诲姟锛岄伩闅滆寖鍥存湁灏忚溅锛岀瓑寰呴殰纰嶅皬杞﹁皟绂讳腑", wrkMast.getWrkNo());
-//                return false;
-//            }
-
             assignCommand.setCommands(commands);
 
             wrkMast.setWrkSts(WrkStsType.MOVE_SHUTTLE.sts);//灏忚溅绉诲姩鍒扮洰鏍囧簱浣嶄腑  309.灏忚溅杩佸嚭鎻愬崌鏈哄畬鎴� ==> 310.灏忚溅绉诲姩涓�
@@ -1809,6 +1809,11 @@
                 continue;
             }
 
+            List<Integer> conveyorBindLiftAllStaNo = ForkLiftUtils.getConveyorBindLiftAllStaNo(liftNo);
+            if (conveyorBindLiftAllStaNo.isEmpty()) {
+                continue;
+            }
+
             //鑾峰彇鍏ュ簱浠诲姟
             List<WrkMast> inWrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
                     .in("sta_no", liftAllStaNo)
@@ -1823,7 +1828,7 @@
 
             //鑾峰彇鍑哄簱浠诲姟
             List<WrkMast> outWrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
-                    .eq("lift_no", liftNo)
+                    .in("sta_no", conveyorBindLiftAllStaNo)
                     .in("wrk_sts"
                             , WrkStsType.NEW_OUTBOUND.sts
                             , WrkStsType.OUTBOUND_SHUTTLE_RUN.sts

--
Gitblit v1.9.1