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