From aa6c2d4ed63195e007b44007c29547f1d66c7b49 Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期五, 19 十二月 2025 08:40:51 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 28 +++++++++++++++++++++++++---
1 files changed, 25 insertions(+), 3 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 b2bc20e..df1ca0d 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -114,6 +114,8 @@
@Autowired
private BasDevpOptService basDevpOptService;
@Autowired
+ private BasRgvOptService basRgvOptService;
+ @Autowired
private MatService matService;
@Value("${wms.url}")
@@ -3722,9 +3724,14 @@
}
- if(rgvProtocol.getStatusType1() == RgvStatusType.IDLE &&
- rgvProtocol.getModeType() == RgvModeType.AUTO && rgvThread.isPakMk()
- && rgvThread.isPaking() && basRgv.getPakAll().equals("1")){
+ RgvThread rgvThread1 = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
+ RgvProtocol rgvProtocol1 = rgvThread.getRgvProtocol();
+ if (rgvProtocol1 == null) {
+ continue;
+ }
+ if(rgvProtocol1.getStatusType1() == RgvStatusType.IDLE &&
+ rgvProtocol1.getModeType() == RgvModeType.AUTO && rgvThread1.isPakMk()
+ && rgvThread1.isPaking() && basRgv.getPakAll().equals("1")){
if(basRgv.getPakOut().equals("1") && basRgv.getPakIn().equals("1")){
rgvPreSchedulingIn(rgv, rgvProtocol);//鑻ユ殏鏃犱笅鍙戜换鍔¢璋冨害鎻愬墠鍒板彇璐х偣
if (rgvProtocol.getLastIo().equals("I")) {
@@ -4601,6 +4608,21 @@
System.out.println("灏忚溅涓嬪彂鍛戒护鏃堕棿锛�" +
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").format(now));
}
+ EntityWrapper<BasRgvOpt> entityWrapper = new EntityWrapper<>();
+ entityWrapper.eq("rgv_no", rgvId)
+ .orderBy("send_time"); // 鎸� send_time 闄嶅簭鎺掑垪
+ BasRgvOpt basRgvOpt = basRgvOptService.selectOne(entityWrapper);
+ // 闃叉閲嶅涓嬪彂鍛戒护
+ if (basRgvOpt != null) {
+ // 鑾峰彇鏈�鏂拌褰曠殑 mode 瀵瑰簲鐨勪换鍔$被鍨�
+ RgvTaskStatusType latestTaskStatus = RgvTaskStatusType.valueOf(basRgvOpt.getMode());
+ // 鍒ゆ柇褰撳墠鍛戒护涓庢渶鏂拌褰曟槸鍚︾浉鍚�
+ if (latestTaskStatus != null && latestTaskStatus == type && basRgvOpt.getPosSta().equals(wrkMastSta.getWorkSta())) {
+ // 濡傛灉鏈�鏂拌褰曠殑 mode 鍜� posSta 涓庡綋鍓嶅懡浠ょ浉鍚岋紝璁や负鏄噸澶嶅懡浠�
+ log.error("鍛戒护閲嶅涓嬪彂锛屽綋鍓嶅懡浠や笌鏈�鏂拌褰曠浉鍚岋紝浠诲姟涓嶄笅鍙戯紒");
+ return false;
+ }
+ }
rgvCommand.setTaskNo(Math.toIntExact(wrkMastSta.getWrkNo())); // 宸ヤ綅宸ヤ綔鍙�
rgvCommand.setTaskStatus(type); // 宸ヤ綅浠诲姟妯″紡: 鍙栬揣
--
Gitblit v1.9.1