From 8ec7046779aa7ae510cbb584fbaa87cc45cfc49b Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Tue, 05 Sep 2023 08:40:34 +0800
Subject: [PATCH] chore:测试提交

---
 screen-manage/src/main/java/com/moral/api/service/impl/ManageCoordinateDetailServiceImpl.java |   92 +++++++++++++++++++++++++++++++---------------
 1 files changed, 62 insertions(+), 30 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/ManageCoordinateDetailServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/ManageCoordinateDetailServiceImpl.java
index 121db66..d7c7333 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/ManageCoordinateDetailServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/ManageCoordinateDetailServiceImpl.java
@@ -38,6 +38,7 @@
 import com.moral.api.util.RoadUtils;
 import com.moral.constant.Constants;
 import com.moral.constant.RedisConstants;
+import com.moral.util.DateUtils;
 import com.moral.util.TokenUtils;
 import com.sun.org.apache.regexp.internal.RE;
 
@@ -74,10 +75,12 @@
         List<Map<String, Object>> data = (List<Map<String, Object>>) params.get("data");
 
         for (Map<String, Object> datum : data) {
-            ManageCoordinateDetail manageCoordinateDetail = new ManageCoordinateDetail();
+
             String code = datum.get("code").toString();
             String state = datum.get("state").toString();
-            if (state.equals("1")){
+
+            if (state.equals("2")){
+                ManageCoordinateDetail manageCoordinateDetail = new ManageCoordinateDetail();
                 String[] rs = code.split("_");
                 manageCoordinateDetail.setCoordinateId(coordinateId);
                 manageCoordinateDetail.setLongitude(Double.parseDouble(rs[0]));
@@ -91,25 +94,19 @@
                 wrapper.eq("latitude",manageCoordinateDetail.getLatitude());
                 Integer integer = manageCoordinateDetailMapper.selectCount(wrapper);
                 if (integer>=1){
-                    return null;
+                    return 1;
                 }
                 manageCoordinateDetailMapper.insert(manageCoordinateDetail);
             }else {
-                manageCoordinateDetailMapper.deleteById(manageCoordinateDetail.getId());
-//                    manageCoordinateDetailMapper.delete(wrapper);
+                Object id1 = datum.get("id");
+                if (ObjectUtils.isEmpty(id1)){
+                    return 2;
+                }
+                manageCoordinateDetailMapper.deleteById(Integer.parseInt(id1.toString()));
 
             }
         }
         return 200;
-    }
-
-    /**
-     * ������������������
-     * @param id
-     */
-    @Override
-    public void deleteCoordinate(Integer id)  {
-        manageCoordinateDetailMapper.deleteById(id);
     }
 
 
@@ -178,8 +175,9 @@
                 String latitude = manageCoordinateDetail.getLatitude().toString();
                 String longitude = manageCoordinateDetail.getLongitude().toString();
                 if (latitude.equals(flyLat) && longitude.equals(flyLon)){
-                    manageCoordinateDetail.setLongitude(Double.parseDouble(flyLon));
-                    manageCoordinateDetail.setLatitude(Double.parseDouble(flyLat));
+                    manageCoordinateDetail.setCode(data);
+                    manageCoordinateDetail.setLongitude(cruiserDTO.getFlyLon());
+                    manageCoordinateDetail.setLatitude(cruiserDTO.getFlyLat());
                     rsList1.add(manageCoordinateDetail);
                     cruiserInfo.remove(i);
                     break;
@@ -205,28 +203,62 @@
         int coordinateId = Integer.parseInt(params.get("coordinateId").toString());
         QueryWrapper<ManageCoordinateDetail> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("coordinate_id",coordinateId);
+        String time1 = params.remove("time1").toString();
+        String time2 = params.remove("time2").toString();
+        long l = DateUtils.compareDateStrDay(time1, time2);
+        if (l>0){
+            params.put("time1",time1);
+            params.put("time2",time2);
+        }else {
+            params.put("time1",time2);
+            params.put("time2",time1);
+        }
+        int j =0;
         List<ManageCoordinateDetail> manageCoordinateDetails = manageCoordinateDetailMapper.selectList(queryWrapper);
         List<CruiserDTO> cruiserInfo = historySecondCruiserMapper.getCruiserInfo(params);
-        for (ManageCoordinateDetail manageCoordinateDetail : manageCoordinateDetails) {
-            String latitude = manageCoordinateDetail.getLatitude().toString();
-            String longitude = manageCoordinateDetail.getLongitude().toString();
+        if (ObjectUtils.isEmpty(manageCoordinateDetails)){
             for (CruiserDTO cruiserDTO : cruiserInfo) {
                 Double flyLat = cruiserDTO.getFlyLat();
                 Double flyLon = cruiserDTO.getFlyLon();
-                if (!latitude.equals(flyLat+"") || !longitude.equals(flyLon+"")){
-                    ManageCoordinateDetail rsDTO = new ManageCoordinateDetail();
-                    rsDTO.setLatitude(flyLat);
-                    rsDTO.setLongitude(flyLon);
-                    rsDTO.setState("2");
-                    rsDTO.setCreateTime(new Date());
-                    rsDTO.setUpdateTime(new Date());
-                    rsDTO.setCoordinateId(coordinateId);
-                    int insert = manageCoordinateDetailMapper.insert(rsDTO);
-                    if (insert!=1){
-                        return null;
+                ManageCoordinateDetail rsDTO = new ManageCoordinateDetail();
+                rsDTO.setLatitude(flyLat);
+                rsDTO.setLongitude(flyLon);
+                rsDTO.setState("2");
+                rsDTO.setCreateTime(new Date());
+                rsDTO.setUpdateTime(new Date());
+                rsDTO.setCoordinateId(coordinateId);
+                manageCoordinateDetailMapper.insert(rsDTO);
+                j++;
+                log.info(j+"");
+            }
+        }else {
+            for (int i=cruiserInfo.size()-1;i>0;i--) {
+                CruiserDTO cruiserDTO = cruiserInfo.get(i);
+                Double flyLat = cruiserDTO.getFlyLat();
+                Double flyLon = cruiserDTO.getFlyLon();
+                for (ManageCoordinateDetail manageCoordinateDetail : manageCoordinateDetails) {
+                    String latitude = manageCoordinateDetail.getLatitude().toString();
+                    String longitude = manageCoordinateDetail.getLongitude().toString();
+                    if (latitude.equals(flyLat+"") && longitude.equals(flyLon+"")){
+                        cruiserInfo.remove(i);
+                        break;
                     }
                 }
             }
+            for (CruiserDTO cruiserDTO : cruiserInfo) {
+                Double flyLat = cruiserDTO.getFlyLat();
+                Double flyLon = cruiserDTO.getFlyLon();
+                ManageCoordinateDetail rsDTO = new ManageCoordinateDetail();
+                rsDTO.setLatitude(flyLat);
+                rsDTO.setLongitude(flyLon);
+                rsDTO.setState("2");
+                rsDTO.setCreateTime(new Date());
+                rsDTO.setUpdateTime(new Date());
+                rsDTO.setCoordinateId(coordinateId);
+                manageCoordinateDetailMapper.insert(rsDTO);
+                j++;
+                log.info(j+"");
+            }
         }
         return 200;
     }

--
Gitblit v1.8.0