This commit is contained in:
2026-04-11 19:11:08 +08:00
parent 62ffe1b5c3
commit 36758e0039
11 changed files with 412 additions and 154 deletions

View File

@ -6,7 +6,6 @@ import com.google.common.collect.Maps;
import com.mosty.base.model.dto.wzzx.LocationConvertDTO;
import com.mosty.base.model.dto.wzzx.LocationInfo;
import com.mosty.base.model.entity.wzzx.TbWzSswz;
import com.mosty.base.utils.CoordinateTransform;
import com.mosty.base.utils.CoordinateUtils;
import com.mosty.base.utils.DateUtils;
import com.mosty.common.base.domain.BaseController;
@ -101,29 +100,22 @@ public class LocationInfoController extends BaseController {
locationInfo.setSourceName("移动设备");
locationInfo.setSourceCode("02");
// Long startTime = System.currentTimeMillis();
// 入库之前将坐标进行转换
// 保存原始坐标
locationInfo.setSourceLat(locationInfo.getLat());
locationInfo.setSourceLng(locationInfo.getLng());
// double[] transfromPonint = CoordinateTransform.transformGCJ02ToWGS84(locationInfo.getLng(),
// locationInfo.getLat());
// // 只保留8位小数
// BigDecimal reLngBd = BigDecimal.valueOf(transfromPonint[0]);
// double reLngDouble = reLngBd.setScale(8, BigDecimal.ROUND_HALF_UP).doubleValue();
// locationInfo.setLng(reLngDouble);
// // 只保留8位小数
// BigDecimal reLatBd = BigDecimal.valueOf(transfromPonint[1]);
// double reLatDouble = reLatBd.setScale(8, BigDecimal.ROUND_HALF_UP).doubleValue();
// locationInfo.setLat(reLatDouble);
//上传坐标转行
// 只保留8位小数
BigDecimal reLngBd = BigDecimal.valueOf(locationInfo.getLng());
double reLngDouble = reLngBd.setScale(8, BigDecimal.ROUND_HALF_UP).doubleValue();
locationInfo.setLng(reLngDouble);
BigDecimal reLatBd = BigDecimal.valueOf(locationInfo.getLat());
double reLatDouble = reLatBd.setScale(8, BigDecimal.ROUND_HALF_UP).doubleValue();
locationInfo.setLat(reLatDouble);
// 上次坐标精度处理
if (locationInfo.getLastLng() != null && locationInfo.getLastLat() != null) {
double[] lastTransfromPonint = CoordinateTransform.transformGCJ02ToWGS84(locationInfo.getLastLng(),
locationInfo.getLastLat());
// 只保留8位小数
BigDecimal lastReLngBd = BigDecimal.valueOf(lastTransfromPonint[0]);
BigDecimal lastReLngBd = BigDecimal.valueOf(locationInfo.getLastLng());
double lastReLngDouble = lastReLngBd.setScale(8, BigDecimal.ROUND_HALF_UP).doubleValue();
locationInfo.setLastLng(lastReLngDouble);
// 只保留8位小数
BigDecimal lastReLatBd = BigDecimal.valueOf(lastTransfromPonint[1]);
BigDecimal lastReLatBd = BigDecimal.valueOf(locationInfo.getLastLat());
double lastReLatDouble = lastReLatBd.setScale(8, BigDecimal.ROUND_HALF_UP).doubleValue();
locationInfo.setLastLat(lastReLatDouble);
}
@ -132,7 +124,6 @@ public class LocationInfoController extends BaseController {
}
//实时存储位置
locationInfoService.locationReceive(locationInfo);
Long endTime = System.currentTimeMillis();
locationInfo.setLastLat(locationInfo.getLat());
locationInfo.setLastLng(locationInfo.getLng());
return ResponseResult.success("添加成功", locationInfo);

View File

@ -57,8 +57,6 @@ public class LocationInfoServiceImpl extends ServiceImpl<TbWzXfwzMapper, TbWzXfw
long sswzTime = 0;
long lswzTime = 0;
long xfbbTime = 0;
//经度、纬度为空不接收数据
try {
if (locationInfo.getLng() == null && locationInfo.getLat() == null) {
@ -301,9 +299,9 @@ public class LocationInfoServiceImpl extends ServiceImpl<TbWzXfwzMapper, TbWzXfw
}
String redisKey = Constant.WZ_XFWZ + locationInfo.getBbid();
//直接去redis存在问题 20240307
TbWzXfwz xfwz = redisService.getCacheObject(redisKey);
// TbWzXfwz xfwz = redisService.getCacheObject(redisKey);
Integer lc = 0;
// TbWzXfwz xfwz = this.baseMapper.queryByBbid(locationInfo.getBbid());
TbWzXfwz xfwz = this.baseMapper.queryByBbid(locationInfo.getBbid());
if (ObjectUtils.isEmpty(xfwz)) {
xfwz = new TbWzXfwz();
}

View File

@ -57,6 +57,7 @@ public class TbWzLswzServiceImpl extends ServiceImpl<TbWzSswzMapper, TbWzSswz> i
if (StringUtils.isNotBlank(locationInfo.getUserId())) {
sjly = sjly + "-" + locationInfo.getUserId();
}
lswz.setId(UUIDGenerator.getUUID());
lswz.setSjly(sjly);
lswz.setSjlydm("02");
lswz.setYwid(locationInfo.getBbid());