AED导入功能调整,指定sheet数量,支持纯小数的高德坐标
This commit is contained in:
+20
-8
@@ -2,6 +2,7 @@ package com.renkang.emergency.aed.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
@@ -671,6 +672,7 @@ public class AedEquipmentMangerServiceImpl extends ServiceImpl<AedEquipmentMange
|
||||
ImportParams params = new ImportParams();
|
||||
params.setTitleRows(1);
|
||||
params.setHeadRows(1);
|
||||
params.setSheetNum(1);//指定读取第一个sheet
|
||||
list = ExcelImportUtil.importExcel(file.getInputStream(), AedTempImportVO.class, params);
|
||||
if(ObjectUtil.isNotEmpty(list)){
|
||||
//通过单位名称反查orgCode
|
||||
@@ -690,17 +692,27 @@ public class AedEquipmentMangerServiceImpl extends ServiceImpl<AedEquipmentMange
|
||||
equipmentManger.setHostSerialNum(vo.getHostSerialNum());
|
||||
if(StrUtil.isNotEmpty(vo.getLongitude()) && StrUtil.isNotEmpty(vo.getLatitude())){
|
||||
try {
|
||||
String[] split = converter.run(vo.getLongitude() + "-" + vo.getLatitude()).split("-");
|
||||
CoordinateConverter.Gps gps = CoordinateConverter.GPS84ToGCJ02(
|
||||
TypeConversionUtil.toDoubleOfNull(split[0]), TypeConversionUtil.toDoubleOfNull(split[1]));
|
||||
if (gps != null) {
|
||||
BigDecimal lon = BigDecimal.valueOf(gps.getLongitude());
|
||||
BigDecimal lat = BigDecimal.valueOf(gps.getLatitude());
|
||||
//判断坐标是否是小数坐标
|
||||
if(!NumberUtil.isDouble(vo.getLongitude()) || !NumberUtil.isDouble(vo.getLatitude())){
|
||||
String[] split = converter.run(vo.getLongitude() + "-" + vo.getLatitude()).split("-");
|
||||
CoordinateConverter.Gps gps = CoordinateConverter.GPS84ToGCJ02(
|
||||
TypeConversionUtil.toDoubleOfNull(split[0]), TypeConversionUtil.toDoubleOfNull(split[1]));
|
||||
if (gps != null) {
|
||||
BigDecimal lon = BigDecimal.valueOf(gps.getLongitude());
|
||||
BigDecimal lat = BigDecimal.valueOf(gps.getLatitude());
|
||||
equipmentManger.setLongitude(lon);
|
||||
equipmentManger.setLatitude(lat);
|
||||
}
|
||||
}else{
|
||||
//小数直接用
|
||||
BigDecimal lon = BigDecimal.valueOf( TypeConversionUtil.toDoubleOfNull(vo.getLongitude()));
|
||||
BigDecimal lat = BigDecimal.valueOf(TypeConversionUtil.toDoubleOfNull(vo.getLatitude()));
|
||||
equipmentManger.setLongitude(lon);
|
||||
equipmentManger.setLatitude(lat);
|
||||
equipmentManger.setGeoCollectType(1);
|
||||
equipmentManger.setPublishFlag(1);
|
||||
}
|
||||
equipmentManger.setGeoCollectType(1);
|
||||
equipmentManger.setPublishFlag(1);
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user