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