diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index bdd94ad..1e181b2 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -260,7 +260,7 @@ SELECT ar.WELL_CODE AS "wellCode",COUNT(*) AS "alarmCount",bwi.WELL_NAME AS "wellName",DEPTID AS deptid, - COUNT(ar.DEVCODE) AS count,POSITION AS "position",COORDINATE_X AS "coordinateX",COORDINATE_Y AS "coordinateY", + COUNT(DISTINCT(ar.DEVCODE)) AS count,POSITION AS "position",COORDINATE_X AS "coordinateX",COORDINATE_Y AS "coordinateY", LAT_BAIDU AS "latBaidu",LNG_BAIDU AS "lngBaidu",LNG_GAODE AS "latGaode",LNG_GAODE AS "lngGaode", bd.DEVICE_TYPE AS "deviceType" FROM alarm_records ar diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/BusPipeline.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/BusPipeline.java index c72a4b0..f96bddc 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/BusPipeline.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/BusPipeline.java @@ -159,4 +159,57 @@ private Date ts; + /** + * 起始经度 + */ + @TableField("start_longitude") + @ExcelProperty("起始经度") + private String startLongitude; + /** + * 终止经度 + */ + @TableField("end_longitude") + @ExcelProperty("终止经度") + private String endLongitude; + + /** + * 起始纬度 + */ + @TableField("start_latitude") + @ExcelProperty("起始纬度") + private String startLatitude; + /** + * 终止纬度 + */ + @TableField("end_latitude") + @ExcelProperty("终止纬度") + private String endLatitude; + + + /** + * 起始经度-高德 + */ + @TableField("start_longitude_gaode") + @ExcelProperty("起始经度高德") + private String startLongitudeGd; + /** + * 终止经度 + */ + @TableField("end_longitude_gaode") + @ExcelProperty("终止经度高德") + private String endLongitudeGd; + + /** + * 起始纬度 + */ + @TableField("start_latitude_gaode") + @ExcelProperty("起始纬度高德") + private String startLatitudeGd; + /** + * 终止纬度 + */ + @TableField("end_latitude_gaode") + @ExcelProperty("终止纬度高德") + private String endLatitudeGd; + } diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index bdd94ad..1e181b2 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -260,7 +260,7 @@ SELECT ar.WELL_CODE AS "wellCode",COUNT(*) AS "alarmCount",bwi.WELL_NAME AS "wellName",DEPTID AS deptid, - COUNT(ar.DEVCODE) AS count,POSITION AS "position",COORDINATE_X AS "coordinateX",COORDINATE_Y AS "coordinateY", + COUNT(DISTINCT(ar.DEVCODE)) AS count,POSITION AS "position",COORDINATE_X AS "coordinateX",COORDINATE_Y AS "coordinateY", LAT_BAIDU AS "latBaidu",LNG_BAIDU AS "lngBaidu",LNG_GAODE AS "latGaode",LNG_GAODE AS "lngGaode", bd.DEVICE_TYPE AS "deviceType" FROM alarm_records ar diff --git a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/BusPipeline.java b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/BusPipeline.java index c72a4b0..f96bddc 100644 --- a/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/BusPipeline.java +++ b/casic-server-support/src/main/java/com/casic/missiles/modular/system/model/BusPipeline.java @@ -159,4 +159,57 @@ private Date ts; + /** + * 起始经度 + */ + @TableField("start_longitude") + @ExcelProperty("起始经度") + private String startLongitude; + /** + * 终止经度 + */ + @TableField("end_longitude") + @ExcelProperty("终止经度") + private String endLongitude; + + /** + * 起始纬度 + */ + @TableField("start_latitude") + @ExcelProperty("起始纬度") + private String startLatitude; + /** + * 终止纬度 + */ + @TableField("end_latitude") + @ExcelProperty("终止纬度") + private String endLatitude; + + + /** + * 起始经度-高德 + */ + @TableField("start_longitude_gaode") + @ExcelProperty("起始经度高德") + private String startLongitudeGd; + /** + * 终止经度 + */ + @TableField("end_longitude_gaode") + @ExcelProperty("终止经度高德") + private String endLongitudeGd; + + /** + * 起始纬度 + */ + @TableField("start_latitude_gaode") + @ExcelProperty("起始纬度高德") + private String startLatitudeGd; + /** + * 终止纬度 + */ + @TableField("end_latitude_gaode") + @ExcelProperty("终止纬度高德") + private String endLatitudeGd; + } diff --git a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/controller/BusPipelineController.java b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/controller/BusPipelineController.java index 7ab981e..a4201ec 100644 --- a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/controller/BusPipelineController.java +++ b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/controller/BusPipelineController.java @@ -2,6 +2,7 @@ import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import com.alibaba.druid.util.StringUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.casic.missiles.core.application.context.AbstractPermissionContext; @@ -19,8 +20,11 @@ import com.casic.missiles.modular.system.dto.BatchExportPipelineDto; import com.casic.missiles.modular.system.model.BusPipeline; import com.casic.missiles.modular.system.service.IBusPipelineService; +import com.casic.missiles.modular.system.util.Utility; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.dao.DuplicateKeyException; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -29,6 +33,7 @@ import java.io.IOException; import java.io.InputStream; import java.util.List; +import java.util.Map; /** * @author cz @@ -38,6 +43,7 @@ @RequiredArgsConstructor @RequestMapping("/pipeline") public class BusPipelineController extends ExportController { + private static final Logger logger = LoggerFactory.getLogger(BusPipelineController.class); private final IBusPipelineService busPipelineService; private final AbstractPermissionContext permissionService; @@ -57,6 +63,20 @@ @RequestMapping("/add") public Object add(BusPipeline busPipeline) { try { + + //坐标转换 + Map gaodeCoordinate = Utility.convertGaodeAPI(busPipeline.getStartLongitude(), + busPipeline.getStartLatitude()); + Map gaodeCoordinateEnd = Utility.convertGaodeAPI(busPipeline.getEndLongitude(), + busPipeline.getEndLatitude()); + if(ObjectUtil.isAllNotEmpty(gaodeCoordinate,gaodeCoordinateEnd)) { + busPipeline.setStartLongitudeGd(gaodeCoordinate.get("x").toString()); + busPipeline.setStartLatitudeGd(gaodeCoordinate.get("y").toString()); + busPipeline.setEndLongitudeGd(gaodeCoordinateEnd.get("x").toString()); + busPipeline.setEndLatitudeGd(gaodeCoordinateEnd.get("y").toString()); + }else{ + logger.error("{}高德坐标转换失败",busPipeline.getPipelineCode()); + } busPipelineService.save(busPipeline); } catch (RuntimeException rex) { ServiceException gunsException = new ServiceException(CoreExceptionEnum.REQUEST_NULL); diff --git a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/BusPipelineServiceImpl.java b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/BusPipelineServiceImpl.java index 8612529..87f77e8 100644 --- a/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/BusPipelineServiceImpl.java +++ b/casic-sluicewell/src/main/java/com/casic/missiles/modular/system/service/impl/BusPipelineServiceImpl.java @@ -1,6 +1,7 @@ package com.casic.missiles.modular.system.service.impl; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -13,6 +14,7 @@ import com.casic.missiles.modular.system.model.BusPipeline; import com.casic.missiles.modular.system.model.Dict; import com.casic.missiles.modular.system.service.IBusPipelineService; +import com.casic.missiles.modular.system.util.Utility; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -108,6 +110,20 @@ list.add("第" + index[0] + "行,权属单位不存在!"); break; } + + //坐标转换成高德 + Map gaodeCoordinate = Utility.convertGaodeAPI(busPipeline.getStartLongitude(), + busPipeline.getStartLatitude()); + Map gaodeCoordinateEnd = Utility.convertGaodeAPI(busPipeline.getEndLongitude(), + busPipeline.getEndLatitude()); + if(ObjectUtil.isAllNotEmpty(gaodeCoordinate,gaodeCoordinateEnd)) { + busPipeline.setStartLongitudeGd(gaodeCoordinate.get("x").toString()); + busPipeline.setStartLatitudeGd(gaodeCoordinate.get("y").toString()); + busPipeline.setEndLongitudeGd(gaodeCoordinateEnd.get("x").toString()); + busPipeline.setEndLatitudeGd(gaodeCoordinateEnd.get("y").toString()); + }else{ + list.add("第" + index[0] + "行,坐标转高德失败!"); + } //其他相关性校验 log.info("第" + index[0] + "行校验完毕!"); } @@ -115,6 +131,7 @@ if (CollectionUtil.isNotEmpty(list)) { return list; } + this.saveBatch(results); } else { list.add("导入数据不能为空"); diff --git a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml index bdd94ad..1e181b2 100644 --- a/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml +++ b/casic-alarm/src/main/java/com/casic/missiles/modular/system/dao/mapping/StatisticMapper.xml @@ -260,7 +260,7 @@