From f821e9800ed171a59a6713368819bdbddf4da0a9 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 28 十一月 2024 14:48:01 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java |   15 +++++++++++++--
 1 files changed, 13 insertions(+), 2 deletions(-)

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 4727985..11d5fb2 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
@@ -11,6 +11,7 @@
 import com.zy.acs.manager.core.domain.TaskPosDto;
 import com.zy.acs.manager.core.domain.type.BlockSeverityType;
 import com.zy.acs.manager.core.service.astart.MapDataDispatcher;
+import com.zy.acs.manager.core.service.astart.NavigateNode;
 import com.zy.acs.manager.core.service.astart.RetreatNavigateNode;
 import com.zy.acs.manager.core.service.astart.WaveNodeType;
 import com.zy.acs.manager.manager.entity.*;
@@ -59,7 +60,7 @@
     @Autowired
     private SnowflakeIdWorker snowflakeIdWorker;
     @Autowired
-    private ActionService actionService;
+    private AgvModelService agvModelService;
     @Autowired
     private RetreatNavigateService retreatNavigateService;
     @Autowired
@@ -513,6 +514,7 @@
 
     private List<String> getBlackPathList(List<Jam> unfinishedOriginJamByCurrAgv) {
         List<String> blackPathList = new ArrayList<>();
+        Integer lev = MapDataDispatcher.MAP_DEFAULT_LEV;
         if (!Cools.isEmpty(unfinishedOriginJamByCurrAgv)) {
             for (Jam jam : unfinishedOriginJamByCurrAgv) {
                 if (!Cools.isEmpty(jam.getJamPath())) {
@@ -520,7 +522,7 @@
                     List<String> list = GsonUtils.fromJsonToList(jam.getJamPath(), String.class);
 
                     Agv jamAgv = agvService.getById(jam.getJamAgv());
-                    List<String> jamDynamicNodes = mapDataDispatcher.queryCodeListFromDynamicNode(null, jamAgv.getUuid());
+                    List<String> jamDynamicNodes = mapDataDispatcher.queryCodeListFromDynamicNode(lev, jamAgv.getUuid());
                     // jamDynamicNodes has sorted
                     String firstCodeNode = jamDynamicNodes.stream().findFirst().orElse(null);
 
@@ -529,6 +531,15 @@
                         if (idx != -1) {
                             list = new ArrayList<>(list.subList(idx, list.size()));
                         }
+
+                        // the wave of first node
+                        Double avoidDistance = MapDataUtils.getVehicleWaveSafeDistance(
+                                agvModelService.getById(jamAgv.getAgvModel()).getDiameter(),
+                                MapDataConstant.MAX_DISTANCE_BETWEEN_ADJACENT_AGV_FACTOR
+                        );
+                        List<String> waveCodeList = mapService.getWaveScopeByCode(lev, firstCodeNode, avoidDistance)
+                                .stream().map(NavigateNode::getCodeData).distinct().collect(Collectors.toList());
+                        list.addAll(waveCodeList);
                     }
 
                     blackPathList.addAll(list);

--
Gitblit v1.9.1