From 6e02d92c3b9c240fa78a343b67ddf0db12d840e6 Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期五, 22 八月 2025 17:00:56 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/common/utils/NavigateUtils.java |   23 +++++++++++++++++++++++
 1 files changed, 23 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/common/utils/NavigateUtils.java b/src/main/java/com/zy/common/utils/NavigateUtils.java
index d49b64b..14430c1 100644
--- a/src/main/java/com/zy/common/utils/NavigateUtils.java
+++ b/src/main/java/com/zy/common/utils/NavigateUtils.java
@@ -231,6 +231,29 @@
         return findTargetLocation(endPath);
     }
 
+    public String calcFirstLocation(String startPoint, String endPoint, List<NavigationMapType> mapTypes, List<int[]> shuttlePoints, List<int[]> whites, int firstPathNumber) {
+        //璁$畻璺緞
+        List<NavigateNode> navigateNodes = calc(startPoint, endPoint, mapTypes, shuttlePoints, whites);
+        if (navigateNodes == null) {
+            News.error("{} dash {} can't find navigate path!", startPoint, endPoint);
+            return null;
+        }
+
+        //鑾峰彇鍒嗘璺緞
+        List<List<NavigateNode>> partList = this.getSectionPath(navigateNodes);
+        List<NavigateNode> firstList = partList.get(0);
+
+        NavigateNode targetNode = null;
+        if(firstList.size() <= firstPathNumber){
+            targetNode = firstList.get(firstList.size() - 1);
+        }else {
+            targetNode = firstList.get(firstPathNumber);
+        }
+
+        String locNo = NavigatePositionConvert.nodeToLocNo(targetNode);
+        return locNo;
+    }
+
     public String findTargetLocation(List<List<NavigateNode>> partList) {
         List<NavigateNode> nodes = partList.get(partList.size() - 1);
         NavigateNode targetNode = nodes.get(0);

--
Gitblit v1.9.1