From 3df03c486fde77ab36b9298a94bdbb0aa065a7e2 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期二, 08 四月 2025 09:07:40 +0800
Subject: [PATCH] #
---
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/LiftDispatcher.java | 35 +++++++++++++++++++++++++++--------
1 files changed, 27 insertions(+), 8 deletions(-)
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/LiftDispatcher.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/LiftDispatcher.java
index af6aa85..c50a28b 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/LiftDispatcher.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/LiftDispatcher.java
@@ -38,7 +38,7 @@
private NavigateUtils navigateUtils;
/**
- * 鏍规嵁鐩爣浣嶇疆鎼滅储绌洪棽鎻愬崌鏈�
+ * 鏍规嵁鐩爣浣嶇疆鎼滅储鎻愬崌鏈�
* transfer: 鏄惁鍙崲灞�
*/
public LiftThread searchLift(String locNo, Long hostId, Boolean transfer) {
@@ -56,10 +56,6 @@
LiftProtocol liftProtocol = liftThread.getStatus();
if (liftProtocol == null) {
- continue;
- }
-
- if (!liftThread.isIdle()) {
continue;
}
@@ -82,6 +78,13 @@
}
String liftLocNo = Utils.getLocNo(Utils.getRow(standby.getDeviceStandbyLoc()), Utils.getBay(standby.getDeviceStandbyLoc()), Utils.getLev(locNo));
+
+ if (locNo.equals(liftLocNo)) {
+ finalDistance = 100;
+ recentLiftThread = liftThread;
+ continue;
+ }
+
List<NavigateNode> nodeList = navigateUtils.calc(locNo, liftLocNo, NavigationMapType.NONE.id, null);
if (nodeList == null) {
continue;
@@ -205,15 +208,15 @@
return standby.getLockPath$();
}
- public Integer getLiftLevOffset(Integer deviceId,Integer lev) {
+ public Integer getLiftLevOffset(Integer deviceId, Integer lev) {
BasLift basLift = basLiftService.getOne(new LambdaQueryWrapper<BasLift>().eq(BasLift::getDeviceId, deviceId));
if (basLift != null) {
- if(Cools.isEmpty(basLift.getLevOffset())) {
+ if (Cools.isEmpty(basLift.getLevOffset())) {
return lev;
}
List<BasLiftLevOffsetDto> levOffsetDtos = JSON.parseArray(basLift.getLevOffset(), BasLiftLevOffsetDto.class);
for (BasLiftLevOffsetDto offsetDto : levOffsetDtos) {
- if(lev == offsetDto.getLogicLev()){
+ if (lev.equals(offsetDto.getLogicLev())) {
return offsetDto.getRealLev();
}
}
@@ -221,4 +224,20 @@
return lev;
}
+ public Integer getLiftLevLogic(Integer deviceId, Integer lev) {
+ BasLift basLift = basLiftService.getOne(new LambdaQueryWrapper<BasLift>().eq(BasLift::getDeviceId, deviceId));
+ if (basLift != null) {
+ if (Cools.isEmpty(basLift.getLevOffset())) {
+ return lev;
+ }
+ List<BasLiftLevOffsetDto> levOffsetDtos = JSON.parseArray(basLift.getLevOffset(), BasLiftLevOffsetDto.class);
+ for (BasLiftLevOffsetDto offsetDto : levOffsetDtos) {
+ if (lev.equals(offsetDto.getRealLev())) {
+ return offsetDto.getLogicLev();
+ }
+ }
+ }
+ return lev;
+ }
+
}
--
Gitblit v1.9.1