From 7635dc25bd2a4d565df496b2d96354639966768d Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期四, 25 九月 2025 11:09:44 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/utils/NavigateMapData.java | 49 +++++++------------------------------------------
1 files changed, 7 insertions(+), 42 deletions(-)
diff --git a/src/main/java/com/zy/common/utils/NavigateMapData.java b/src/main/java/com/zy/common/utils/NavigateMapData.java
index 1c7f453..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) {
--
Gitblit v1.9.1