From dcee04e577389842f31d6c8b114e046c837bb05e Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期四, 22 一月 2026 10:57:06 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java |   16 +++++++++-------
 1 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java
index 2918e16..5067f8f 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AllocateService.java
@@ -50,6 +50,8 @@
     private AgvAreaDispatcher agvAreaDispatcher;
     @Autowired
     private SegmentService segmentService;
+    @Autowired
+    private TravelService travelService;
 
     /**
      * get available agv list which is idle
@@ -121,7 +123,7 @@
             return null;
         }
 
-        List<String> availableAgvNos = this.getAvailableAgvNos(agvAreaDispatcher.getAgvNosByTask(task), true);
+        List<String> availableAgvNos = this.getAvailableAgvNos(agvAreaDispatcher.getAgvIdsByTask(task), true);
         FilterLaneDto filterLaneDto = this.filterThroughLane(task, availableAgvNos);
         if (filterLaneDto == null) {
             return null;
@@ -155,7 +157,7 @@
      *      it can break the limit of the number of agv backpack
      */
     public synchronized String normalExecute(Task task) {
-        List<String> availableAgvNos = this.getAvailableAgvNos(agvAreaDispatcher.getAgvNosByTask(task), false);
+        List<String> availableAgvNos = this.getAvailableAgvNos(agvAreaDispatcher.getAgvIdsByTask(task), false);
 //        List<String> availableAgvNos = this.getAvailableAgvNos(null);
         if (Cools.isEmpty(availableAgvNos)) {
 //            log.warn("No available agv to assign the task[{}]", task.getSeqNum());
@@ -221,15 +223,15 @@
 //                continue;
 //            }
             // in TransferStationHandler.hasDelayAtSta
-            Segment currSeg = segmentService.getRollerWaiting(agvId, sta.getCode(), TaskPosDto.PosType.ORI_STA);
-            if (null == currSeg) {
+            Travel currTravelInRollerWaiting = travelService.findRollerWaitingTravel(agvId, currentCode.getId());
+            if (null == currTravelInRollerWaiting) {
                 continue;
             }
 
             // has enough backpack space to load
-            Integer backpack = agvService.getBackpack(agvId);
-            List<Integer> usedBackpacks = segmentService.selectUsedBackpacks(null, agvId);
-            if (usedBackpacks.size() >= backpack) {
+            Integer backpackCap = agvService.getBackpack(agvId);
+            List<Integer> usedBackpacks = segmentService.selectUsedBackpacks(currTravelInRollerWaiting.getId(), agvId);
+            if (usedBackpacks.size() >= backpackCap) {
                 continue;
             }
 

--
Gitblit v1.9.1