From 83b653947b73a9df562ab909921b6bac798f29de Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期三, 31 十二月 2025 17:02:19 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java                |    2 +-
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java             |    5 +++--
 zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/JamServiceImpl.java     |    5 ++---
 zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/SegmentServiceImpl.java |    9 +++++++++
 zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/JamService.java              |    2 +-
 zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/SegmentService.java          |    2 ++
 6 files changed, 18 insertions(+), 7 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 bfbc67f..852ad39 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
@@ -368,7 +368,7 @@
                             });
 
                             // get placeSeg serial
-                            int placeSegSerial = 9999;
+                            int placeSegSerial;
                             // query placeSeg idx
                             int idx = -1;
                             for (int i = 0; i < destPosList.size(); i++) {
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 e9690a7..a10ea6c 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
@@ -696,12 +696,13 @@
             if (!blockVehicleDto.isAvoidable()) {
                 continue;
             }
+            Long agvId = agvService.getAgvId(blockVehicleDto.getVehicle());
             // 褰撳墠vehicle姝e湪杩涜閬胯浣滀笟
-            if (!Cools.isEmpty(jamService.getUnfinishedAvoSegByAvo(blockVehicleDto.getVehicle(), null))) {
+            if (!Cools.isEmpty(jamService.getUnfinishedAvoSegByAvo(agvId, null))) {
                 continue;
             }
             // 褰撳墠vehicle姝e湪杩涜婊氱瓛杈撻�佺嚎绛夊緟
-            if () {
+            if (segmentService.isRollerWaiting(agvId)) {
                 continue;
             }
             return blockVehicleDto.getVehicle();
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/JamService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/JamService.java
index 854b47c..ab70578 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/JamService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/JamService.java
@@ -28,7 +28,7 @@
      * 闃诲浠诲姟 涓嶇
      * 閬胯浠诲姟 鏈� 瀹屾垚
      */
-    List<Jam> getUnfinishedAvoSegByAvo(String avoAgvNo, Segment currSeg);
+    List<Jam> getUnfinishedAvoSegByAvo(Long avoAgvId, Segment currSeg);
 
     List<Jam> queryByAvoid(Long avoAgv, JamStateType jamState);
 
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 4e52ac5..338dde8 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
@@ -33,4 +33,6 @@
 
     Segment getRollerWaiting(Long agvId, Long codeId, TaskPosDto.PosType posType);
 
+    Boolean isRollerWaiting(Long agvId);
+
 }
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/JamServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/JamServiceImpl.java
index ecd5db2..3899d3f 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/JamServiceImpl.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/JamServiceImpl.java
@@ -77,9 +77,8 @@
     }
 
     @Override
-    public List<Jam> getUnfinishedAvoSegByAvo(String avoAgvNo, Segment currSeg) {
-        Long agvId = agvService.getAgvId(avoAgvNo);
-        return this.baseMapper.selectUnfinishedAvoSegByAvo(agvId, null);
+    public List<Jam> getUnfinishedAvoSegByAvo(Long avoAgvId, Segment currSeg) {
+        return this.baseMapper.selectUnfinishedAvoSegByAvo(avoAgvId, null);
     }
 
     @Override
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 38880af..89cdf17 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
@@ -185,4 +185,13 @@
         return segments.get(0);
     }
 
+    @Override
+    public Boolean isRollerWaiting(Long agvId) {
+        return 0 < this.count(new LambdaQueryWrapper<Segment>()
+                .eq(Segment::getAgvId, agvId)
+                .eq(Segment::getState, SegmentStateType.WAITING.toString())
+                .eq(Segment::getRollerWaiting, 1)
+        );
+    }
+
 }

--
Gitblit v1.9.1