From 1a518d788ee36886af92b2adfcbe9e79e83ef08e Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期四, 22 一月 2026 09:44:51 +0800
Subject: [PATCH] #
---
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TransferStationHandler.java | 47 ++++++++++++++++++-----------------------------
1 files changed, 18 insertions(+), 29 deletions(-)
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TransferStationHandler.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TransferStationHandler.java
index ff1ea3f..c75c44e 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TransferStationHandler.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TransferStationHandler.java
@@ -13,26 +13,11 @@
import java.util.List;
import java.util.Objects;
-// man_segment: start_time, end_time, alter table man_segment
-// add roller_waiting int(1) default 0 null comment '婊氱瓛绾跨瓑寰�' after end_time;
-/**
- * alter table man_sta
- * add capacity int null comment '妲戒綅鏁�' after angle;
- *
- * alter table man_sta
- * add occ_cnt int null comment '鍗犵敤鏁�' after capacity;
- *
- * alter table man_sta
- * add rsv_in_cnt int null comment '棰勭害鏀捐揣閲�' after occ_cnt;
- *
- * alter table man_sta
- * add rsv_out_cnt int null comment '棰勭害鍙栬揣閲�' after rsv_in_cnt;
- */
@Slf4j
@Service
public class TransferStationHandler {
- private static final long LOAD_DELAY_MS = 15000L; // load ( inbound ) delay timeout
+ private static final long LOAD_DELAY_MS = 60000L; // load ( inbound ) delay timeout
private static final long PLACE_DELAY_MS = 15000L; // place ( outbound ) delay timeout
@Autowired
@@ -45,6 +30,8 @@
private CodeService codeService;
@Autowired
private StaService staService;
+ @Autowired
+ private TravelService travelService;
/**
* 鍙栬揣锛堝叆搴擄級锛氬湪鍙栧畬绗竴涓揣鐨勬椂鍊欙紝鎷呭績婊氱瓛杈撻�佺嚎浼氭湁涓嬩竴涓揣鐗╋紝鎵�浠ュ缓璁瓵GV鍦ㄥ師鍦扮瓑寰呬竴娈垫椂闂�
@@ -55,8 +42,9 @@
if (currSeg == null) {
throw new NullPointerException("segment is null in hasDelayAtSta.");
}
+ Long agvId = currSeg.getAgvId();
// 鍒ゆ柇AGV鏄惁鍦ㄦ粴鍔ㄨ緭閫佺嚎鍓�
- Code currentCode = agvDetailService.getCurrentCode(currSeg.getAgvId());
+ Code currentCode = agvDetailService.getCurrentCode(agvId);
if (null == currentCode) {
return false;
}
@@ -77,23 +65,23 @@
}
long preEndTime = preSeg.getEndTime().getTime();
long now = System.currentTimeMillis();
- Long agvId = currSeg.getAgvId();
// inbound
if (prePosType.equals(TaskPosDto.PosType.ORI_STA)) {
// 鑳岀瘬鏈弧鎵嶇瓑
Integer backpack = agvService.getBackpack(agvId);
- List<Integer> usedBackpacks = segmentService.selectUsedBackpacks(currSeg.getTravelId(), agvId);
+ List<Integer> usedBackpacks = segmentService.selectUsedBackpacks(currSeg.getTravelId(), agvId); // todo:vincent 鎷夸笉鍒版暟鎹�
if (usedBackpacks.size() >= backpack) {
return false;
}
- // sign waiting
- if (currSeg.getRollerWaiting() == 0) {
- currSeg.setRollerWaiting(1);
- segmentService.updateById(currSeg);
- }
+ // mark roller waiting
+ travelService.markRollerWaiting(currSeg.getTravelId(), currentCode.getId());
+// if (currSeg.getRollerWaiting() == 0) {
+// currSeg.setRollerWaiting(1);
+// segmentService.updateById(currSeg);
+// }
// timeout
return (now - preEndTime) < LOAD_DELAY_MS;
@@ -110,11 +98,12 @@
return false;
}
- // sign waiting
- if (currSeg.getRollerWaiting() == 0) {
- currSeg.setRollerWaiting(1);
- segmentService.updateById(currSeg);
- }
+ // mark roller waiting
+ travelService.markRollerWaiting(currSeg.getTravelId(), currentCode.getId());
+// if (currSeg.getRollerWaiting() == 0) {
+// currSeg.setRollerWaiting(1);
+// segmentService.updateById(currSeg);
+// }
// timeout
return (now - preEndTime) < PLACE_DELAY_MS;
--
Gitblit v1.9.1