From 7222254629129493fa0635ad2861b81663ebdf49 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期四, 13 二月 2025 18:30:50 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/utils/NavigateMapData.java | 50 ++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 46 insertions(+), 4 deletions(-)
diff --git a/src/main/java/com/zy/common/utils/NavigateMapData.java b/src/main/java/com/zy/common/utils/NavigateMapData.java
index 84d4373..2a2351f 100644
--- a/src/main/java/com/zy/common/utils/NavigateMapData.java
+++ b/src/main/java/com/zy/common/utils/NavigateMapData.java
@@ -233,7 +233,8 @@
//瑙f瀽json鍦板浘鏁版嵁
ArrayList arrayList = JSON.parseObject(stringBuffer.toString(), ArrayList.class);
- List<List<MapNode>> lists = filterMap(mapType, arrayList, lev, whitePoints, shuttlePoints);//杩囨护鍦板浘鏁版嵁
+ //閲嶅缓鏁版嵁鏍煎紡
+ List<List<MapNode>> lists = rebuildData(arrayList);
if (!file.delete()) {
System.out.println("涓存椂鏂囦欢鍒犻櫎澶辫触");
@@ -257,6 +258,26 @@
* @param shuttlePoints 绌挎杞﹁妭鐐癸紝闇�瑕佸姞杞借繘鍦板浘
*/
public List<List<MapNode>> filterMap(Integer mapType, List arrayList, Integer lev, List<int[]> whitePoints, List<int[]> shuttlePoints) {
+ //閲嶅缓鏁版嵁鏍煎紡
+ List<List<MapNode>> lists = rebuildData(arrayList);
+
+ //杞藉叆搴撲綅淇℃伅
+ lists = loadLocMast(mapType, lists, lev, whitePoints);
+
+ //鍔犺浇杞﹁締
+ lists = loadShuttle(lists, shuttlePoints);
+
+ //鍔犺浇璐у弶鎻愬崌鏈虹偣浣�
+ lists = loadForkLift(lists, mapType, lev);
+
+ //鍔犺浇鐧藉悕鍗曡妭鐐�
+ lists = loadWhite(lists, lev, whitePoints);
+
+ return lists;
+ }
+
+ //閲嶅缓鏁版嵁鏍煎紡
+ public List<List<MapNode>> rebuildData(List arrayList) {
List<List<MapNode>> lists = new ArrayList<>();
//閲嶅缓鏁版嵁鏍煎紡
@@ -270,6 +291,11 @@
lists.add(list);
}
+ return lists;
+ }
+
+ //杞藉叆搴撲綅淇℃伅
+ public List<List<MapNode>> loadLocMast(Integer mapType, List<List<MapNode>> lists, Integer lev, List<int[]> whitePoints) {
//杩囨护鏁版嵁
LocMastService locMastService = SpringUtils.getBean(LocMastService.class);
try {
@@ -325,6 +351,11 @@
e.printStackTrace();
}
+ return lists;
+ }
+
+ //鍔犺浇杞﹁締
+ public List<List<MapNode>> loadShuttle(List<List<MapNode>> lists, List<int[]> shuttlePoints) {
//鍔犺浇杞﹁締鍧愭爣鍒板湴鍥句腑
if (shuttlePoints != null) {
for (int[] points : shuttlePoints) {
@@ -339,6 +370,11 @@
}
}
+ return lists;
+ }
+
+ //鍔犺浇鐧藉悕鍗曡妭鐐�
+ public List<List<MapNode>> loadWhite(List<List<MapNode>> lists, Integer lev, List<int[]> whitePoints) {
//鍔犺浇鐧藉悕鍗曡妭鐐�
if (whitePoints != null) {
List<List<MapNode>> realMap = getJsonData(lev, -1, null, null);//鑾峰彇瀹屾暣鍦板浘
@@ -358,7 +394,11 @@
lists.set(x, list);
}
}
+ return lists;
+ }
+ //鍔犺浇璐у弶鎻愬崌鏈虹偣浣�
+ public List<List<MapNode>> loadForkLift(List<List<MapNode>> lists, Integer mapType, Integer lev) {
try {
//鍔犺浇璐у弶鎻愬崌鏈烘斁璐х偣浣嶆暟鎹�
for (ForkLiftSlave forkLiftSlave : slaveProperties.getForkLift()) {
@@ -368,6 +408,9 @@
}
for (ForkLiftStaProtocol staProtocol : forkLiftThread.getForkLiftStaProtocols()) {
+ if (staProtocol.getLev() != lev) {
+ continue;
+ }
int row = Utils.getRow(staProtocol.getLocNo());
int bay = Utils.getBay(staProtocol.getLocNo());
@@ -379,7 +422,7 @@
if (staProtocol.getHasTray() != null && staProtocol.getHasTray()) {
mapNode.setValue(MapNodeType.DISABLE.id);
}
- }else {
+ } else {
if (staProtocol.getHasCar() != null && staProtocol.getHasCar()) {
mapNode.setValue(MapNodeType.CAR.id);
}
@@ -391,10 +434,9 @@
}
}
- }catch (Exception e) {
+ } catch (Exception e) {
e.printStackTrace();
}
-
return lists;
}
--
Gitblit v1.9.1