From 18d942a236b4cf522256e4e095de395a472d9932 Mon Sep 17 00:00:00 2001 From: Junjie <xjj@123> Date: 星期六, 29 三月 2025 10:05:42 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/impl/NyShuttleThread.java | 17 +++++++++++++++++ src/main/java/com/zy/asrs/utils/Utils.java | 21 ++++++++++++++++++++- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 2 +- src/main/java/com/zy/core/thread/ShuttleThread.java | 2 ++ 4 files changed, 40 insertions(+), 2 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 a08f26f..2713265 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -716,7 +716,7 @@ } } - //妫�娴嬫ゼ灞傛槸鍚︽湁绌挎杞� + //妫�娴嬫ゼ灞傛槸鍚︽湁鍙敤绌挎杞� boolean checkLevHasShuttle = Utils.checkLevHasShuttle(liftSta.getLev()); if (!checkLevHasShuttle) { if (wrkMast.getShuttleNo() != null) { diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java index 3f6b511..bf3ea83 100644 --- a/src/main/java/com/zy/asrs/utils/Utils.java +++ b/src/main/java/com/zy/asrs/utils/Utils.java @@ -5,7 +5,9 @@ import com.core.common.Cools; import com.core.common.SpringUtils; import com.zy.asrs.entity.LocMast; +import com.zy.asrs.entity.WrkMast; import com.zy.asrs.service.LocMastService; +import com.zy.asrs.service.WrkMastService; import com.zy.common.model.NavigateNode; import com.zy.common.model.enums.NavigationMapType; import com.zy.common.utils.NavigatePositionConvert; @@ -142,9 +144,10 @@ return list; } - //妫�娴嬫ゼ灞傛槸鍚︽湁绌挎杞� + //妫�娴嬫ゼ灞傛槸鍚︽湁鍙敤绌挎杞� public static boolean checkLevHasShuttle(Integer lev) { SlaveProperties slaveProperties = SpringUtils.getBean(SlaveProperties.class); + WrkMastService wrkMastService = SpringUtils.getBean(WrkMastService.class); for (ShuttleSlave shuttle : slaveProperties.getShuttle()) { //鑾峰彇鍥涘悜绌挎杞︾嚎绋� ShuttleThread shuttleThread = (ShuttleThread) SlaveConnection.get(SlaveType.Shuttle, shuttle.getId()); @@ -160,6 +163,22 @@ continue; } + //灏忚溅姝e湪鍏呯數 + if (shuttleThread.isCharging()) { + continue; + } + + //灏忚溅鏈夊厖鐢典换鍔� + WrkMast chargeWorking = wrkMastService.selectChargeWorking(shuttleProtocol.getShuttleNo()); + if (chargeWorking != null) {//宸叉湁鍏呯數浠诲姟 + continue; + } + + //灏忚溅澶勪簬鏁呴殰鐘舵�� + if (shuttleThread.isFault()) { + continue; + } + if (lev == Utils.getLev(currentLocNo)) { return true;//鎸囧畾妤煎眰鏈夌┛姊溅 } diff --git a/src/main/java/com/zy/core/thread/ShuttleThread.java b/src/main/java/com/zy/core/thread/ShuttleThread.java index 3ddda33..993d0d1 100644 --- a/src/main/java/com/zy/core/thread/ShuttleThread.java +++ b/src/main/java/com/zy/core/thread/ShuttleThread.java @@ -45,6 +45,8 @@ boolean isChargingCompleted();//鏄惁鍏呯數瀹屾垚 + boolean isFault();//鏄惁鏁呴殰 + List<NavigateNode> getMoveAdvancePath();//鑾峰彇绌挎杞︿换鍔¤矾寰� int generateDeviceTaskNo(int taskNo, ShuttleTaskNoType type);//鐢熸垚纭欢璁惧宸ヤ綔鍙� diff --git a/src/main/java/com/zy/core/thread/impl/NyShuttleThread.java b/src/main/java/com/zy/core/thread/impl/NyShuttleThread.java index ce3f72e..b7aacc2 100644 --- a/src/main/java/com/zy/core/thread/impl/NyShuttleThread.java +++ b/src/main/java/com/zy/core/thread/impl/NyShuttleThread.java @@ -715,6 +715,23 @@ } @Override + public boolean isFault() { + if (this.shuttleProtocol.getErrorCode() == null + || this.shuttleProtocol.getMode() == null + || this.shuttleProtocol.getExtend() == null + ) { + return false; + } + + InnerSuhttleExtend extend = (InnerSuhttleExtend) this.shuttleProtocol.getExtend(); + boolean res = this.shuttleProtocol.getMode() == 0 + && !this.shuttleProtocol.getErrorCode().equals("0") + && extend.getSuspendState() == 1 + ; + return res; + } + + @Override public List<NavigateNode> getMoveAdvancePath() { ObjectMapper objectMapper = SpringUtils.getBean(ObjectMapper.class); NavigateMapData navigateMapData = SpringUtils.getBean(NavigateMapData.class); -- Gitblit v1.9.1