From 60fda68af793008947c9b26950421a40363a73a2 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期一, 09 三月 2026 15:11:17 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java |   18 +++++++++++++++---
 1 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java
index dfca02b..82804fd 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java
@@ -7,6 +7,7 @@
 import com.zy.acs.manager.core.constant.MapDataConstant;
 import com.zy.acs.manager.core.domain.DirectionDto;
 import com.zy.acs.manager.core.domain.LaneDto;
+import com.zy.acs.manager.core.domain.PathDto;
 import com.zy.acs.manager.core.domain.SortCodeDto;
 import com.zy.acs.manager.core.domain.UnlockPathTask;
 import com.zy.acs.manager.core.domain.VehicleFootprint;
@@ -205,9 +206,20 @@
         return Math.sqrt(deltaX * deltaX + deltaY * deltaY);
     }
 
-    public void lockPath(Integer lev, List<String> pathList, String agvNo) {
-        List<int[]> codeMatrixIdxList = mapDataDispatcher.getCodeMatrixIdxList(lev, pathList);
-        mapDataDispatcher.modifyDynamicMatrix(lev, codeMatrixIdxList, agvNo);
+    public void lockPath(Integer lev, List<PathDto> pathList, String agvNo) {
+        if (Cools.isEmpty(agvNo, pathList)) {
+            return;
+        }
+        List<PathDto> normalized = pathList.stream()
+                .filter(Objects::nonNull)
+                .filter(dto -> !Cools.isEmpty(dto.getCode()))
+                .collect(Collectors.toList());
+        if (Cools.isEmpty(normalized)) {
+            return;
+        }
+        List<String> codeList = normalized.stream().map(PathDto::getCode).collect(Collectors.toList());
+        List<int[]> codeMatrixIdxList = mapDataDispatcher.getCodeMatrixIdxList(lev, codeList);
+        mapDataDispatcher.modifyDynamicMatrix(lev, codeMatrixIdxList, agvNo, normalized);
     }
 
     public void unlockPath(String agvNo, String codeData) {

--
Gitblit v1.9.1