From 314729da5f6f84a6112344a2210aadfeeb2bac0c Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期一, 21 四月 2025 10:35:43 +0800
Subject: [PATCH] #出库找待机位优化
---
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/model/protocol/ShuttleProtocol.java | 19 +++++++++++++++++--
1 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/model/protocol/ShuttleProtocol.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/model/protocol/ShuttleProtocol.java
index 388135e..9925d1e 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/model/protocol/ShuttleProtocol.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/model/protocol/ShuttleProtocol.java
@@ -3,16 +3,22 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zy.asrs.framework.common.Cools;
import com.zy.asrs.framework.common.SpringUtils;
+import com.zy.asrs.wcs.core.entity.BasLift;
import com.zy.asrs.wcs.core.entity.Loc;
+import com.zy.asrs.wcs.core.service.BasLiftService;
import com.zy.asrs.wcs.core.service.LocService;
import com.zy.asrs.wcs.core.utils.RedisUtil;
+import com.zy.asrs.wcs.core.utils.Utils;
+import com.zy.asrs.wcs.rcs.cache.SlaveConnection;
import com.zy.asrs.wcs.rcs.constant.DeviceRedisConstant;
import com.zy.asrs.wcs.rcs.entity.BasShuttleErr;
import com.zy.asrs.wcs.rcs.model.enums.ShuttleProtocolStatusType;
import com.zy.asrs.wcs.rcs.entity.Device;
import com.zy.asrs.wcs.rcs.entity.ShuttleDeviceStatus;
+import com.zy.asrs.wcs.rcs.model.enums.SlaveType;
import com.zy.asrs.wcs.rcs.service.BasShuttleErrService;
import com.zy.asrs.wcs.rcs.service.ShuttleDeviceStatusService;
+import com.zy.asrs.wcs.rcs.thread.LiftThread;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
@@ -257,7 +263,8 @@
//閫氳繃褰撳墠浜岀淮鐮佽幏鍙栧綋鍓嶅簱浣嶅彿
public String getCurrentLocNo() {
LocService locService = SpringUtils.getBean(LocService.class);
- if (locService == null) {
+ BasLiftService basLiftService = SpringUtils.getBean(BasLiftService.class);
+ if (locService == null || basLiftService == null) {
return null;
}
if (this.currentCode == null) {
@@ -270,9 +277,17 @@
.eq(Loc::getHostId, this.device.getHostId());
Loc currentLoc = locService.getOne(wrapper);
if (currentLoc == null) {
+ //鍙兘鏄彁鍗囨満鏉$爜
+ BasLift basLift = basLiftService.getOne(new LambdaQueryWrapper<BasLift>().eq(BasLift::getCode, this.currentCode).eq(BasLift::getStatus, 1));
+ if(basLift != null) {
+ LiftThread liftThread = (LiftThread) SlaveConnection.get(SlaveType.Lift, basLift.getDeviceId().intValue());
+ if (liftThread != null) {
+ LiftProtocol liftProtocol = liftThread.getStatus();
+ return Utils.getLocNo(basLift.getRow(), basLift.getBay(), liftProtocol.getLev());
+ }
+ }
return null;
}
-
return currentLoc.getLocNo();
}
--
Gitblit v1.9.1