From 8c7b4949dfcf875cc537304d34a7f6960cbb0c10 Mon Sep 17 00:00:00 2001
From: qlsxk <qlsxk@qq.com>
Date: 星期四, 16 十月 2025 14:57:12 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/utils/NavigateMapData.java | 120 +++--------------------------------------------------------
1 files changed, 7 insertions(+), 113 deletions(-)
diff --git a/src/main/java/com/zy/common/utils/NavigateMapData.java b/src/main/java/com/zy/common/utils/NavigateMapData.java
index 8deec59..9ad47cb 100644
--- a/src/main/java/com/zy/common/utils/NavigateMapData.java
+++ b/src/main/java/com/zy/common/utils/NavigateMapData.java
@@ -51,52 +51,23 @@
@Autowired
private ObjectMapper objectMapper;
- public int[][] getData(Integer lev, List<NavigationMapType> mapTypes, List<int[]> whitePoints, List<int[]> shuttlePoints) {
- try {
- BasMap basMap = basMapService.selectLatestMap(lev);
- String originData = basMap.getOriginData();
-
- //瑙f瀽json鍦板浘鏁版嵁
- ArrayList arrayList = JSON.parseObject(originData, ArrayList.class);
- List<List<MapNode>> lists = filterMap(mapTypes, arrayList, lev, whitePoints, shuttlePoints);//杩囨护鍦板浘鏁版嵁
- int[][] map = new int[lists.size()][];
- int j = 0;
- for (List<MapNode> list : lists) {
- int[] tmp = new int[list.size()];
- int i = 0;
- for (MapNode mapNode : list) {
- //灏嗘暟鎹坊鍔犺繘浜岀淮鏁扮粍
- tmp[i++] = mapNode.getValue();
- }
- //鏁版嵁娣诲姞杩涗竴缁存暟缁�
- map[j++] = tmp;
- }
-
- return map;
- } catch (Exception e) {
- e.printStackTrace();
- }
- return null;
- }
-
/**
* 灏濊瘯浠巖edis鑾峰彇鏁版嵁
*/
public int[][] getDataFromRedis(Integer lev, List<NavigationMapType> mapTypes, List<int[]> whitePoints, List<int[]> shuttlePoints) {
- Object o = redisUtil.get(RedisKeyType.MAP.key + lev);
- if (o == null) {
+ Object data = redisUtil.get(RedisKeyType.MAP.key + lev);
+ if (data == null) {
return null;
}
- BasMap basMap = JSON.parseObject(o.toString(), BasMap.class);
- return this.getDataFormString(lev, basMap.getData(), mapTypes, whitePoints, shuttlePoints);
+ List<List<MapNode>> arrayList = (List<List<MapNode>>) data;
+ return this.getDataFormString(lev, arrayList, mapTypes, whitePoints, shuttlePoints);
}
/**
* 浠嶭ist鏁版嵁涓幏鍙栧湴鍥�
*/
- public int[][] getDataFormString(Integer lev, String data, List<NavigationMapType> mapTypes, List<int[]> whitePoints, List<int[]> shuttlePoints) {
- ArrayList arrayList = JSON.parseObject(data, ArrayList.class);
+ public int[][] getDataFormString(Integer lev, List<List<MapNode>> arrayList, List<NavigationMapType> mapTypes, List<int[]> whitePoints, List<int[]> shuttlePoints) {
List<List<MapNode>> lists = filterMap(mapTypes, arrayList, lev, whitePoints, shuttlePoints);//杩囨护鍦板浘鏁版嵁
int[][] map = new int[lists.size()][];
int j = 0;
@@ -122,9 +93,7 @@
return null;
}
- BasMap basMap = JSON.parseObject(data.toString(), BasMap.class);
- //瑙f瀽json鍦板浘鏁版嵁
- ArrayList arrayList = JSON.parseObject(basMap.getData(), ArrayList.class);
+ List<List<MapNode>> arrayList = (List<List<MapNode>>) data;
List<List<MapNode>> lists = filterMap(mapTypes, arrayList, lev, whitePoints, shuttlePoints);//杩囨护鍦板浘鏁版嵁
return lists;
} catch (Exception e) {
@@ -173,12 +142,8 @@
* @param whitePoints 鐧藉悕鍗曡妭鐐癸紝涓嶉渶瑕佽杩囨护
* @param shuttlePoints 绌挎杞﹁妭鐐癸紝闇�瑕佸姞杞借繘鍦板浘
*/
- public List<List<MapNode>> filterMap(List<NavigationMapType> mapTypes, List arrayList, Integer lev, List<int[]> whitePoints, List<int[]> shuttlePoints) {
- //閲嶅缓鏁版嵁鏍煎紡
- List<List<MapNode>> lists = rebuildData(arrayList);
-
+ public List<List<MapNode>> filterMap(List<NavigationMapType> mapTypes, List<List<MapNode>> lists, Integer lev, List<int[]> whitePoints, List<int[]> shuttlePoints) {
List<NavigationMapType> locMapType = new ArrayList<>();
- locMapType.add(NavigationMapType.NONE);
locMapType.add(NavigationMapType.DFX);
locMapType.add(NavigationMapType.NORMAL);
for (NavigationMapType mapType : mapTypes) {
@@ -444,77 +409,6 @@
lists.set(row, list);
}
}
-
-// HashMap<String, Integer> deviceMap = trafficControlThread.getDeviceMap();
-// if(deviceMap == null) {
-// throw new CoolException("get traffic control device map error");
-// }
-//
-// for (Map.Entry<String, Integer> entry : deviceMap.entrySet()) {
-// String key = entry.getKey();
-// Integer shuttleNo = entry.getValue();
-// if (shuttleNo <= 0) {
-// continue;
-// }
-//
-// Object object = redisUtil.get(RedisKeyType.SHUTTLE_FLAG.key + shuttleNo);
-// if (object == null) {
-// continue;
-// }
-//
-// int taskNo = Integer.parseInt(String.valueOf(object));
-//
-// Object obj = redisUtil.get(RedisKeyType.SHUTTLE_WORK_FLAG.key + taskNo);
-// if (obj == null) {
-// continue;
-// }
-//
-// ShuttleRedisCommand redisCommand = null;
-// try {
-// redisCommand = objectMapper.readValue(String.valueOf(obj), ShuttleRedisCommand.class);
-// } catch (IOException e) {
-// throw new RuntimeException(e);
-// }
-//
-// if (redisCommand == null) {
-// continue;
-// }
-//
-// ShuttleAssignCommand assignCommand = redisCommand.getAssignCommand();
-// List<ShuttleCommand> commands = assignCommand.getCommands();
-//
-// List<NavigateNode> controlLocList = new ArrayList<>();
-// for (ShuttleCommand command : commands) {
-// if (command.getComplete()) {
-// continue;
-// }
-//
-// if (command.getMode() == ShuttleCommandModeType.MOVE.id) {
-// List<NavigateNode> nodes = command.getNodes();
-// for (NavigateNode node : nodes) {
-// if(!controlLocList.contains(node)) {
-// controlLocList.add(node);
-// }
-// }
-// }
-// }
-//
-// for (NavigateNode node : controlLocList) {
-// int row = node.getX();
-// int bay = node.getY();
-//
-// List<MapNode> list = lists.get(row);
-// MapNode mapNode = list.get(bay);
-//
-// //鑺傜偣璁剧疆鎴怐isable
-// mapNode.setValue(MapNodeType.DISABLE.id);
-//
-// //鏇存柊list
-// list.set(bay, mapNode);
-// lists.set(row, list);
-// }
-//
-// }
} catch (Exception e) {
e.printStackTrace();
}
--
Gitblit v1.9.1