From 4a64c0801f147536ed0a9d09977941f313a286ae Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Fri, 18 Aug 2023 16:19:02 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into wb
---
screen-manage/src/main/java/com/moral/api/service/impl/ManageCoordinateDetailServiceImpl.java | 92 ++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 89 insertions(+), 3 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 66fc777..45c3471 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
@@ -1,23 +1,34 @@
package com.moral.api.service.impl;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import java.util.ArrayList;
import java.util.Date;
-
+import java.util.List;
+import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.moral.api.entity.ManageCoordinateDetail;
+import com.moral.api.mapper.HistorySecondCruiserMapper;
import com.moral.api.mapper.ManageCoordinateDetailMapper;
+import com.moral.api.pojo.dto.cruiser.CruiserDTO;
import com.moral.api.service.ManageCoordinateDetailService;
+import com.moral.api.util.RoadUtils;
@Service
+@Slf4j
public class ManageCoordinateDetailServiceImpl extends ServiceImpl<ManageCoordinateDetailMapper, ManageCoordinateDetail> implements ManageCoordinateDetailService {
@Autowired
private ManageCoordinateDetailMapper manageCoordinateDetailMapper;
+
+ @Autowired
+ private HistorySecondCruiserMapper historySecondCruiserMapper;
/**
* ���������������
* @param manageCoordinateDetail
@@ -25,14 +36,18 @@
*/
@Override
public Integer insertCoordinate(ManageCoordinateDetail manageCoordinateDetail) {
+ double[] doubles = RoadUtils.transformBD09ToWGS84(manageCoordinateDetail.getLongitude(), manageCoordinateDetail.getLatitude());
+ log.info(doubles[0]+"_"+doubles[1]);
QueryWrapper<ManageCoordinateDetail> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("coordinate_id",manageCoordinateDetail.getCoordinateId());
- queryWrapper.eq("longitude",manageCoordinateDetail.getLongitude());
- queryWrapper.eq("latitude",manageCoordinateDetail.getLatitude());
+ queryWrapper.eq("longitude",doubles[0]);
+ queryWrapper.eq("latitude",doubles[1]);
Integer integer = manageCoordinateDetailMapper.selectCount(queryWrapper);
if (integer<1){
manageCoordinateDetail.setCreateTime(new Date());
manageCoordinateDetail.setUpdateTime(new Date());
+ manageCoordinateDetail.setLongitude(doubles[0]);
+ manageCoordinateDetail.setLatitude(doubles[1]);
int insert = manageCoordinateDetailMapper.insert(manageCoordinateDetail);
return insert;
}
@@ -47,4 +62,75 @@
public void deleteCoordinate(Integer id) {
manageCoordinateDetailMapper.deleteById(id);
}
+
+
+ /**
+ * ���������������
+ * @param params
+ * @return
+ */
+ @Override
+ public Map<String, Object> selectCoordinate(Map<String, Object> params) {
+ params.put("dateFormat", "%Y-%m-%d %H:%i:%s");
+ String coordinateId = params.get("coordinateId").toString();
+ QueryWrapper<ManageCoordinateDetail> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("coordinate_id",coordinateId);
+ List<ManageCoordinateDetail> manageCoordinateDetails = manageCoordinateDetailMapper.selectList(queryWrapper);
+ ArrayList<String> list1 = new ArrayList<>();
+ ArrayList<String> list2 = new ArrayList<>();
+ for (ManageCoordinateDetail manageCoordinateDetail : manageCoordinateDetails) {
+ Double latitude = manageCoordinateDetail.getLatitude();
+ Double longitude = manageCoordinateDetail.getLongitude();
+ String s = longitude + "_" + latitude;
+ list1.add(s);
+ }
+ List<CruiserDTO> cruiserInfo = historySecondCruiserMapper.getCruiserInfo(params);
+ for (CruiserDTO cruiserDTO : cruiserInfo) {
+ String s = cruiserDTO.getFlyLat().toString();
+ String s1 = cruiserDTO.getFlyLon().toString();
+ String rs = s1 + "_" + s;
+ list2.add(rs);
+ }
+ //���������
+ list1.retainAll(list2);
+ //���������
+ list2.removeAll(list1);
+
+ return null;
+ }
+
+
+ /**
+ * ������������
+ * @param params
+ * @return
+ */
+ @Override
+ @Transactional
+ public Integer batchAll(Map<String, Object> params) {
+ params.put("dateFormat", "%Y-%m-%d %H:%i:%s");
+ String coordinateId = params.get("coordinateId").toString();
+ QueryWrapper<ManageCoordinateDetail> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("coordinate_id",coordinateId);
+ List<ManageCoordinateDetail> manageCoordinateDetails = manageCoordinateDetailMapper.selectList(queryWrapper);
+ ArrayList<String> list1 = new ArrayList<>();
+ ArrayList<String> list2 = new ArrayList<>();
+ for (ManageCoordinateDetail manageCoordinateDetail : manageCoordinateDetails) {
+ Double latitude = manageCoordinateDetail.getLatitude();
+ Double longitude = manageCoordinateDetail.getLongitude();
+ String s = longitude + "_" + latitude;
+ list1.add(s);
+ }
+ List<CruiserDTO> cruiserInfo = historySecondCruiserMapper.getCruiserInfo(params);
+ for (CruiserDTO cruiserDTO : cruiserInfo) {
+ String s = cruiserDTO.getFlyLat().toString();
+ String s1 = cruiserDTO.getFlyLon().toString();
+ String rs = s1 + "_" + s;
+ list2.add(rs);
+ }
+ //���������
+ list2.removeAll(list1);
+
+ return null;
+ }
}
--
Gitblit v1.8.0