From 04c4a9bdc5c4bccd05fb0092bdb4552af2d09bb1 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期一, 29 十二月 2025 08:36:51 +0800
Subject: [PATCH] #
---
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java | 4 ++++
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java | 7 +++++--
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/SegmentServiceImpl.java | 18 ++++++++++++++++++
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/SegmentService.java | 2 ++
4 files changed, 29 insertions(+), 2 deletions(-)
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
index fbf9ac5..790ab43 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
@@ -1467,6 +1467,10 @@
log.info("Agv [{}] 鍙栨斁璐ц姹傚寘 ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_06_up));
+ // query current segment
+ Segment currSeg = segmentService.getCurrRunningSeg(agv.getId(), agv_06_up.getQrCode());
+
+
// todo:vincent 鏍¢獙鏄惁鍙互鍙栨斁璐�
AGV_06_DOWN agv_06_down = new AGV_06_DOWN();
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java
index 8de616a..7dc6ff4 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java
@@ -264,8 +264,11 @@
interrupt = true;
} else {
if (nextStep.getEndNode() == endNode) {
-
- segmentList.add(nextStep);
+ // remove sta action seg
+ if (!nextStep.getPosType().equals(TaskPosDto.PosType.ORI_STA.toString())
+ && !nextStep.getPosType().equals(TaskPosDto.PosType.DEST_STA.toString())) {
+ segmentList.add(nextStep);
+ }
} else {
interrupt = true;
}
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/SegmentService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/SegmentService.java
index 85422ae..87dd9cf 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/SegmentService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/SegmentService.java
@@ -26,4 +26,6 @@
Boolean cancel(Long segmentId, Long userId);
+ Segment getCurrRunningSeg(Long agvId, String qrCode);
+
}
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/SegmentServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/SegmentServiceImpl.java
index 603bea5..c3eaf34 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/SegmentServiceImpl.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/SegmentServiceImpl.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zy.acs.framework.exception.CoolException;
+import com.zy.acs.manager.manager.entity.Code;
import com.zy.acs.manager.manager.entity.Segment;
import com.zy.acs.manager.manager.entity.Task;
import com.zy.acs.manager.manager.enums.ActionStsType;
@@ -33,6 +34,8 @@
private TaskService taskService;
@Autowired
private ActionService actionService;
+ @Autowired
+ private CodeService codeService;
@Override
public void processNext(List<Segment> segmentList) {
@@ -146,4 +149,19 @@
return Boolean.TRUE;
}
+ @Override
+ public Segment getCurrRunningSeg(Long agvId, String qrCode) {
+ Code codeId = codeService.getCacheByData(qrCode);
+ List<Segment> segments = this.list(new LambdaQueryWrapper<Segment>()
+ .eq(Segment::getAgvId, agvId)
+ .eq(Segment::getState, SegmentStateType.RUNNING.toString())
+ .eq(Segment::getEndNode, codeId)
+ );
+
+ if (Cools.isEmpty(segments)) {
+
+ }
+ return segments.stream().findFirst().orElse(null);
+ }
+
}
--
Gitblit v1.9.1