From 7e4012c08c0c08270136cbd5ef9aacb3f4f9410f Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Thu, 27 Jul 2023 08:58:03 +0800 Subject: [PATCH] fix:修复无人机点位重复问题 --- screen-api/src/main/java/com/moral/api/controller/UAVController.java | 29 ++++++++++++++++++++++------- 1 files changed, 22 insertions(+), 7 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/controller/UAVController.java b/screen-api/src/main/java/com/moral/api/controller/UAVController.java index 89acda0..b97df8d 100644 --- a/screen-api/src/main/java/com/moral/api/controller/UAVController.java +++ b/screen-api/src/main/java/com/moral/api/controller/UAVController.java @@ -181,9 +181,8 @@ } -// ArrayList<List<String>> lists = new ArrayList<>(); + HashMap<String,List<String>> rsMap = new HashMap<>(); -// HashMap<String,List<Map<String,Object>>> rsMap1 = new HashMap<>(); for (UAVGteForDTO uavGteForDTO : list) { ArrayList<String> list1 = new ArrayList<>(); ArrayList<String[]> doubleArrayList = new ArrayList<>(); @@ -192,7 +191,8 @@ doubleArrayList.add(uavGteForDTO.getRightTop()); doubleArrayList.add(uavGteForDTO.getRightBottom()); //������������������ - for (HistorySecondUav historySecondUav : historySecondUavs) { + for (int i = 0; i < historySecondUavs.size(); i++) { + HistorySecondUav historySecondUav = historySecondUavs.get(i); String value = historySecondUav.getValue(); Map map1 = JSON.parseObject(value, Map.class); String flylat = map1.get("flylat").toString(); @@ -200,15 +200,30 @@ //��������������������������� boolean flag = isInPolygon(flylon,flylat,doubleArrayList); if (flag){ - - list1.add(historySecondUav.getValue()); + list1.add(historySecondUav.getValue()); + historySecondUavs.remove(i); } } -// lists.add(list1); //��������������������� String result = getResult(doubleArrayList); rsMap.put(result,list1); - } + } +// for (HistorySecondUav historySecondUav : historySecondUavs) { +// String value = historySecondUav.getValue(); +// Map map1 = JSON.parseObject(value, Map.class); +// String flylat = map1.get("flylat").toString(); +// String flylon = map1.get("flylon").toString(); +// //��������������������������� +// boolean flag = isInPolygon(flylon,flylat,doubleArrayList); +// if (flag){ +// historySecondUavs.remove(historySecondUav); +// list1.add(historySecondUav.getValue()); +// } +// } +// //��������������������� +// String result = getResult(doubleArrayList); +// rsMap.put(result,list1); +// } //��������������������������������������� ArrayList<UAVResultDTO> uavResultDTOS = new ArrayList<>(); -- Gitblit v1.8.0