From cc42d79563a119ffb37302092c445e73ab76e274 Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期四, 28 十二月 2023 15:08:17 +0800
Subject: [PATCH] #小车锁路径载入其他小车节点
---
src/main/java/com/zy/common/utils/NavigateMapUtils.java | 8 ++++++--
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 4 ++--
src/main/java/com/zy/common/utils/NyShuttleOperaUtils.java | 4 ++--
src/main/java/com/zy/core/thread/NyShuttleThread.java | 2 +-
4 files changed, 11 insertions(+), 7 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 1d32a45..31c8325 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -3395,7 +3395,7 @@
return false;//妫�娴嬬洰鏍囩珯鐐硅矾寰勬槸鍚︽湭琚崰鐢�
}
//灏濊瘯閿佸畾鐩爣绔欒矾寰�
- boolean result2 = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(wrkMast.getLocNo()), targetNodes, true);//鎵�浣跨敤鐨勮矾寰勮繘琛岄攣瀹氱鐢�
+ boolean result2 = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(wrkMast.getLocNo()), shuttleProtocol.getShuttleNo().intValue(), targetNodes, true);//鎵�浣跨敤鐨勮矾寰勮繘琛岄攣瀹氱鐢�
if (!result2) {
News.info("{}浠诲姟锛寋}灏忚溅锛岃矾寰勯攣瀹氬け璐ワ紝绂佹娲惧彂", wrkMast.getWrkNo(), shuttleProtocol.getShuttleNo());
return false;//璺緞閿佸畾澶辫触
@@ -3407,7 +3407,7 @@
if (result == null) {
//璺緞鑾峰彇澶辫触锛岄渶瑕佽В閿佷笂闈㈤攣瀹氱殑璺緞
//灏濊瘯瑙i攣鐩爣绔欒矾寰�
- boolean result3 = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(wrkMast.getLocNo()), targetNodes, false);//鎵�浣跨敤鐨勮矾寰勮繘琛岃В閿�
+ boolean result3 = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(wrkMast.getLocNo()), shuttleProtocol.getShuttleNo().intValue(), targetNodes, false);//鎵�浣跨敤鐨勮矾寰勮繘琛岃В閿�
if (!result3) {
News.info("{}浠诲姟锛寋}灏忚溅锛岃矾寰勮В閿佸け璐�", wrkMast.getWrkNo(), shuttleProtocol.getShuttleNo());
return false;//璺緞瑙i攣澶辫触
diff --git a/src/main/java/com/zy/common/utils/NavigateMapUtils.java b/src/main/java/com/zy/common/utils/NavigateMapUtils.java
index bbaa38c..ca1b96b 100644
--- a/src/main/java/com/zy/common/utils/NavigateMapUtils.java
+++ b/src/main/java/com/zy/common/utils/NavigateMapUtils.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson.JSON;
import com.core.common.SpringUtils;
import com.zy.asrs.entity.BasMap;
+import com.zy.asrs.utils.Utils;
import com.zy.common.model.MapNode;
import com.zy.common.model.NavigateNode;
import com.zy.common.model.enums.NavigationMapType;
@@ -20,7 +21,7 @@
* 鍐欏叆璺緞鑺傜偣鏁版嵁鍒皉edis鍦板浘涓�
* lock涓簍rue 绂佺敤搴撲綅锛宭ock涓篺alse鎭㈠搴撲綅
*/
- public synchronized boolean writeNavigateNodeToRedisMap(Integer lev, List<NavigateNode> nodes, boolean lock) {
+ public synchronized boolean writeNavigateNodeToRedisMap(Integer lev, Integer shuttleNo, List<NavigateNode> nodes, boolean lock) {
RedisUtil redisUtil = SpringUtils.getBean(RedisUtil.class);
try {
if (nodes.isEmpty()) {
@@ -34,9 +35,12 @@
return false;
}
+ //鑾峰彇灏忚溅鑺傜偣
+ List<int[]> shuttlePoints = Utils.getShuttlePoints(shuttleNo, lev);
+
BasMap basMap = JSON.parseObject(o.toString(), BasMap.class);
ArrayList arrayList = JSON.parseObject(basMap.getData(), ArrayList.class);
- List<List<MapNode>> lists = navigateMapData.filterMap(NavigationMapType.NONE.id, arrayList, lev, null, null);//鑾峰彇鍏ㄩ儴鍦板浘鏁版嵁
+ List<List<MapNode>> lists = navigateMapData.filterMap(NavigationMapType.NONE.id, arrayList, lev, null, shuttlePoints);//鑾峰彇鍏ㄩ儴鍦板浘鏁版嵁
//妫�娴嬭矾寰勬槸鍚﹁閿佸畾
if (lock) {
diff --git a/src/main/java/com/zy/common/utils/NyShuttleOperaUtils.java b/src/main/java/com/zy/common/utils/NyShuttleOperaUtils.java
index fe9d716..fc00b05 100644
--- a/src/main/java/com/zy/common/utils/NyShuttleOperaUtils.java
+++ b/src/main/java/com/zy/common/utils/NyShuttleOperaUtils.java
@@ -114,7 +114,7 @@
allNode.addAll(nodes);
}
- boolean result = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(startPoint), allNode, true);//閿佸畾璺緞
+ boolean result = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(startPoint), shuttleNo, allNode, true);//閿佸畾璺緞
if (!result) {
return null;//璺緞閿佸畾澶辫触
}
@@ -167,7 +167,7 @@
nodes.add(node);
}
}
- boolean result = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(startPoint), nodes, true);//閿佸畾璺緞
+ boolean result = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(startPoint), shuttleNo, nodes, true);//閿佸畾璺緞
if (!result) {
return null;//璺緞閿佸畾澶辫触
}
diff --git a/src/main/java/com/zy/core/thread/NyShuttleThread.java b/src/main/java/com/zy/core/thread/NyShuttleThread.java
index 5fcce03..cab5c90 100644
--- a/src/main/java/com/zy/core/thread/NyShuttleThread.java
+++ b/src/main/java/com/zy/core/thread/NyShuttleThread.java
@@ -435,7 +435,7 @@
if (!(targetNode.getX() == node.getX() && targetNode.getY() == node.getY())) {
nodes.remove(nodes.size() - 1);//鍓旈櫎灏捐妭鐐�
}
- boolean result = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(shuttleProtocol.getCurrentLocNo()), nodes, false);//瑙i攣璺緞
+ boolean result = navigateMapUtils.writeNavigateNodeToRedisMap(Utils.getLev(shuttleProtocol.getCurrentLocNo()), shuttleProtocol.getShuttleNo().intValue(), nodes, false);//瑙i攣璺緞
if (!result) {
return false;//瑙i攣澶辫触
}
--
Gitblit v1.9.1