From f886fe7c00267539242b6bdd8a465ad950fe8493 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期四, 10 八月 2023 09:49:22 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/NyShuttleThread.java | 25 +++++++++++++++++++------
1 files changed, 19 insertions(+), 6 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/NyShuttleThread.java b/src/main/java/com/zy/core/thread/NyShuttleThread.java
index 648e456..73dd3ae 100644
--- a/src/main/java/com/zy/core/thread/NyShuttleThread.java
+++ b/src/main/java/com/zy/core/thread/NyShuttleThread.java
@@ -298,12 +298,13 @@
return false;
}
- WrkMastService wrkMastService = SpringUtils.getBean(WrkMastService.class);
+ WrkMastMapper wrkMastMapper = SpringUtils.getBean(WrkMastMapper.class);
Object o = redisUtil.get("shuttle_wrk_no_" + wrkNo);
if (o == null) {
return false;
}
+
ShuttleRedisCommand redisCommand = JSON.parseObject(o.toString(), ShuttleRedisCommand.class);
List<NyShuttleHttpCommand> commands = redisCommand.getAssignCommand().getCommands();
ShuttleAssignCommand assignCommand = redisCommand.getAssignCommand();
@@ -363,13 +364,11 @@
return false;
}
- //妫�鏌ヨ矾寰勬槸鍚﹀彲琛岃蛋(妫�鏌ヨ矾寰勯攣瀹氱姸鎬侊紝妫�娴嬭矾寰勬槸鍚︽湁鍏朵粬灏忚溅)
- //妫�娴嬪綋鍓嶈璧拌矾寰勶紝鍜屼笅涓�姝ヨ矾寰�
- boolean checkPathIsAvailable = NavigateUtils.checkPathIsAvailable(command.getNodes(), shuttleProtocol.getShuttleNo().intValue(), Utils.getLev(shuttleProtocol.getCurrentLocNo()));
- boolean checkPathIsAvailable2 = NavigateUtils.checkPathIsAvailable(nextNodes, shuttleProtocol.getShuttleNo().intValue(), Utils.getLev(shuttleProtocol.getCurrentLocNo()));
- if (!checkPathIsAvailable && !checkPathIsAvailable2) {
+ //妫�娴嬭矾寰勬槸鍚﹀彲琛岃蛋
+ if (!checkPath(command.getNodes(), nextNodes)) {
return false;
}
+
//閿佸畾璺緞锛岄攣瀹氬綋鍓嶈矾寰勫拰涓嬩竴姝ヨ矾寰�
List<NavigateNode> nodes = command.getNodes();
nodes.addAll(nextNodes);
@@ -553,4 +552,18 @@
return false;//榛樿涓嶆斁琛�
}
+ /**
+ * 妫�娴嬭矾寰勬槸鍚﹀彲琛岃蛋
+ */
+ private boolean checkPath(List<NavigateNode> currentNodes, List<NavigateNode> nextNodes) {
+ //妫�娴嬭矾寰勬槸鍚﹀彲琛岃蛋(妫�鏌ヨ矾寰勯攣瀹氱姸鎬侊紝妫�娴嬭矾寰勬槸鍚︽湁鍏朵粬灏忚溅)
+ //妫�娴嬪綋鍓嶈璧拌矾寰勶紝鍜屼笅涓�姝ヨ矾寰�
+ boolean checkPathIsAvailable = NavigateUtils.checkPathIsAvailable(currentNodes, shuttleProtocol.getShuttleNo().intValue(), Utils.getLev(shuttleProtocol.getCurrentLocNo()));
+ boolean checkPathIsAvailable2 = NavigateUtils.checkPathIsAvailable(nextNodes, shuttleProtocol.getShuttleNo().intValue(), Utils.getLev(shuttleProtocol.getCurrentLocNo()));
+ if (checkPathIsAvailable && checkPathIsAvailable2) {
+ return true;//鍙璧�
+ }
+ return false;//涓嶅彲琛岃蛋
+ }
+
}
--
Gitblit v1.9.1