From 1195f70c061d9205837eb731f24e1a3e34747c87 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期五, 19 十二月 2025 13:20:52 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/HandlerController.java |   22 ++++++++++++++++++++--
 1 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/HandlerController.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/HandlerController.java
index 43222dc..7f210e5 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/HandlerController.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/HandlerController.java
@@ -13,6 +13,7 @@
 import com.zy.acs.manager.common.exception.BusinessException;
 import com.zy.acs.manager.core.service.*;
 import com.zy.acs.manager.core.service.astart.MapDataDispatcher;
+import com.zy.acs.manager.core.service.astart.domain.DynamicNode;
 import com.zy.acs.manager.manager.entity.*;
 import com.zy.acs.manager.manager.enums.*;
 import com.zy.acs.manager.manager.service.*;
@@ -87,10 +88,27 @@
     @PostMapping("/patrol/batch/startup")
     public synchronized R patrolBatchStartup() {
         List<Agv> list = agvService.list(new LambdaQueryWrapper<Agv>().eq(Agv::getStatus, StatusType.ENABLE.val));
+        DynamicNode[][] dynamicMatrix = mapDataDispatcher.getDynamicMatrix(MapDataDispatcher.MAP_DEFAULT_LEV);
         int result = 0;
         for (Agv agv : list) {
-            patrolService.startupPatrol(agv.getUuid());
-            result++;
+            String agvNo = agv.getUuid();
+
+            boolean inMap = false;
+            label: for (int i = 0; i < dynamicMatrix.length; i++) {
+                for (int j = 0; j < dynamicMatrix[i].length; j++) {
+                    DynamicNode dynamicNode = dynamicMatrix[i][j];
+                    String vehicle = dynamicNode.getVehicle();
+                    if (agvNo.equals(vehicle)) {
+                        inMap = true;
+                        break label;
+                    }
+                }
+            }
+
+            if (inMap) {
+                patrolService.startupPatrol(agvNo);
+                result++;
+            }
         }
         return R.ok().add(result);
     }

--
Gitblit v1.9.1