From da407d4525cd6ea211d952fc2fd96f5ba30510e8 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期三, 27 十一月 2024 15:43:28 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MapService.java |   19 ++++++++++++++-----
 1 files changed, 14 insertions(+), 5 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 25a3aa7..2097a81 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
@@ -4,7 +4,7 @@
 import com.zy.acs.common.enums.AgvDirectionType;
 import com.zy.acs.framework.common.Cools;
 import com.zy.acs.manager.common.utils.MapDataUtils;
-import com.zy.acs.manager.core.domain.type.BlockSeverityType;
+import com.zy.acs.manager.core.constant.MapDataConstant;
 import com.zy.acs.manager.core.service.astart.*;
 import com.zy.acs.manager.core.service.astart.domain.DynamicNode;
 import com.zy.acs.manager.core.service.floyd.FloydNavigateService;
@@ -19,7 +19,9 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
 import java.util.stream.Collectors;
 
 /**
@@ -46,7 +48,7 @@
      * 瀵诲潃 ===>> A Star
      */
     public synchronized List<String> checkoutPath(String agvNo, Code startCode, Code endCode
-            , Boolean lock, List<String> blackList, Segment segment, BlockSeverityType blockSeverity) {
+            , Boolean lock, List<String> blackList, Segment segment) {
 
         int[] startMapIdx = mapDataDispatcher.getCodeMatrixIdx(null, startCode.getData());
         int[] endMapIdx = mapDataDispatcher.getCodeMatrixIdx(null, endCode.getData());
@@ -54,7 +56,7 @@
         NavigateNode startNode = new NavigateNode(startMapIdx[0], startMapIdx[1], startCode.getData());
         NavigateNode endNode = new NavigateNode(endMapIdx[0], endMapIdx[1], endCode.getData());
 
-        NavigateNode finishNode = aStarNavigateService.execute(agvNo, startNode, endNode, lock, blackList, segment, blockSeverity);
+        NavigateNode finishNode = aStarNavigateService.execute(agvNo, startNode, endNode, lock, blackList, segment);
 
         if (null == finishNode) {
             log.warn("{} 鍙稟GV妫�绱{}] ===>> [{}]璺緞澶辫触......", agvNo, startCode.getData(), endCode.getData());
@@ -78,7 +80,14 @@
 //            navigateNode.setParent(null);
 //        }
 
-        return navigateNodes.stream().map(NavigateNode::getCodeData).collect(Collectors.toList());
+        List<String> navigatePath = navigateNodes.stream().map(NavigateNode::getCodeData).collect(Collectors.toList());
+
+        // max count of steps
+        if (navigatePath.size() > MapDataConstant.MAX_STEPS_SINGLE) {
+            navigatePath = navigatePath.subList(0, MapDataConstant.MAX_STEPS_SINGLE);
+        }
+
+        return navigatePath;
     }
 
     /**

--
Gitblit v1.9.1