From 2e84db729d434524c7b35939c76c4d7020126167 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期二, 01 八月 2023 13:09:44 +0800 Subject: [PATCH] 调度方法可通过穿梭车号进行指定车辆调度 --- src/main/java/com/zy/common/utils/NavigateUtils.java | 24 ++++++++++++++++++++---- 1 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zy/common/utils/NavigateUtils.java b/src/main/java/com/zy/common/utils/NavigateUtils.java index eb2b668..950116e 100644 --- a/src/main/java/com/zy/common/utils/NavigateUtils.java +++ b/src/main/java/com/zy/common/utils/NavigateUtils.java @@ -222,10 +222,26 @@ /** * 鑾峰彇涓棿鐐瑰埌鐩爣鐐硅璧拌窛绂� */ - public static Integer getMiddleToDistDistance(List<NavigateNode> path, Integer distance) { - //涓棿璺緞 - NavigateNode middlePath = path.get(path.size() - distance); - return middlePath.getMoveDistance(); + public static Integer getMiddleToDistDistance(List<NavigateNode> path, NavigateNode middlePath) { + //鏈�鍚庝竴鏉¤妭鐐逛笉璁$畻杩涜璧拌窛绂� + NavigateNode lastPath = path.get(path.size() - 1); + //鎬昏窛绂� + int allDistance = 0; + boolean flag = false; + for (NavigateNode navigateNode : path) { + if (!flag && navigateNode.equals(middlePath)) { + flag = true; + } + + if (navigateNode.equals(lastPath)) { + continue;//鏈�鍚庝竴鏉¤妭鐐逛笉璁$畻杩涜璧拌窛绂� + } + + if (flag) { + allDistance += navigateNode.getMoveDistance(); + } + } + return allDistance; } public static void main(String[] args) { -- Gitblit v1.9.1