|
@ -3,6 +3,7 @@ package com.inscloudtech.datacenter.service.impl; |
|
|
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil; |
|
|
import cn.hutool.core.bean.BeanUtil; |
|
|
import cn.hutool.core.collection.CollectionUtil; |
|
|
import cn.hutool.core.collection.CollectionUtil; |
|
|
|
|
|
import cn.hutool.core.date.DateTime; |
|
|
import cn.hutool.core.util.StrUtil; |
|
|
import cn.hutool.core.util.StrUtil; |
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|
|
import com.inscloudtech.analysiscenter.domain.AnalysisDto; |
|
|
import com.inscloudtech.analysiscenter.domain.AnalysisDto; |
|
@ -117,31 +118,31 @@ public class PlateNumberServiceImpl implements PlateNumberService { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
if(CollectionUtil.isEmpty(tempMap)){ |
|
|
|
|
|
List<PlateNumberInfo> tempAddList = BeanCopyUtils.copyList(plateNumberInfoList, PlateNumberInfo.class); |
|
|
|
|
|
for (PlateNumberInfo plateNumberInfo : tempAddList) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for (PlateNumberInfo plateNumberInfo : plateNumberInfoList) { |
|
|
|
|
|
String bsHolder = plateNumberInfo.getBsHolder(); |
|
|
|
|
|
if (StrUtil.isEmpty(bsHolder)) { |
|
|
|
|
|
plateNumberInfo.setHolder(holder); |
|
|
plateNumberInfo.setHasDeal(1); |
|
|
plateNumberInfo.setHasDeal(1); |
|
|
plateNumberInfo.setCreateTime(new Date()); |
|
|
plateNumberInfo.setCreateTime(new Date()); |
|
|
String uniqueKey = BeanUtils.getUniqueKey(plateNumberInfo); |
|
|
String uniqueKey = BeanUtils.getUniqueKey(plateNumberInfo); |
|
|
String md5Id = HelperUtil.generateMD5(caseId+uniqueKey); |
|
|
String md5Id = HelperUtil.generateMD5(caseId+uniqueKey); |
|
|
plateNumberInfo.setId(md5Id); |
|
|
plateNumberInfo.setId(md5Id); |
|
|
plateNumberInfo.setCaseId(caseId); |
|
|
plateNumberInfo.setCaseId(caseId); |
|
|
} |
|
|
|
|
|
addList.addAll(tempAddList); |
|
|
|
|
|
}else { |
|
|
|
|
|
for (String bsHolder : tempMap.keySet()) { |
|
|
|
|
|
|
|
|
addList.add(plateNumberInfo); |
|
|
|
|
|
}else { |
|
|
PlateNumberInfo add = new PlateNumberInfo(); |
|
|
PlateNumberInfo add = new PlateNumberInfo(); |
|
|
add.setPlateNumber(plateNumber); |
|
|
add.setPlateNumber(plateNumber); |
|
|
add.setBsHolder(bsHolder); |
|
|
add.setBsHolder(bsHolder); |
|
|
List<PlateNumberInfo> infos = tempMap.get(bsHolder); |
|
|
List<PlateNumberInfo> infos = tempMap.get(bsHolder); |
|
|
List<String> uniqueSourceContent = infos.stream().filter(item->StrUtil.isNotEmpty(item.getSourceContent())) |
|
|
List<String> uniqueSourceContent = infos.stream().filter(item->StrUtil.isNotEmpty(item.getSourceContent())) |
|
|
.map(PlateNumberInfo::getSourceContent) |
|
|
|
|
|
.distinct() |
|
|
|
|
|
.collect(Collectors.toList()); |
|
|
|
|
|
|
|
|
.map(PlateNumberInfo::getSourceContent) |
|
|
|
|
|
.distinct() |
|
|
|
|
|
.collect(Collectors.toList()); |
|
|
List<String> bankName = infos.stream().filter(item->StrUtil.isNotEmpty(item.getBankName())) |
|
|
List<String> bankName = infos.stream().filter(item->StrUtil.isNotEmpty(item.getBankName())) |
|
|
.map(PlateNumberInfo::getBankName) |
|
|
|
|
|
.distinct() |
|
|
|
|
|
.collect(Collectors.toList()); |
|
|
|
|
|
|
|
|
.map(PlateNumberInfo::getBankName) |
|
|
|
|
|
.distinct() |
|
|
|
|
|
.collect(Collectors.toList()); |
|
|
// List<String> uniqueSourceFile = infos.stream().filter(item->StrUtil.isNotEmpty(item.getSourceFile())) |
|
|
// List<String> uniqueSourceFile = infos.stream().filter(item->StrUtil.isNotEmpty(item.getSourceFile())) |
|
|
// .map(PlateNumberInfo::getSourceFile) |
|
|
// .map(PlateNumberInfo::getSourceFile) |
|
|
// .distinct() |
|
|
// .distinct() |
|
@ -149,9 +150,9 @@ public class PlateNumberServiceImpl implements PlateNumberService { |
|
|
// add.setSourceFile(uniqueSourceFile.stream() |
|
|
// add.setSourceFile(uniqueSourceFile.stream() |
|
|
// .collect(Collectors.joining(", "))); |
|
|
// .collect(Collectors.joining(", "))); |
|
|
add.setSourceContent(uniqueSourceContent.stream() |
|
|
add.setSourceContent(uniqueSourceContent.stream() |
|
|
.collect(Collectors.joining(", "))); |
|
|
|
|
|
|
|
|
.collect(Collectors.joining(", "))); |
|
|
add.setBankName(bankName.stream() |
|
|
add.setBankName(bankName.stream() |
|
|
.collect(Collectors.joining(", "))); |
|
|
|
|
|
|
|
|
.collect(Collectors.joining(", "))); |
|
|
add.setHasDeal(1); |
|
|
add.setHasDeal(1); |
|
|
add.setHolder(holder); |
|
|
add.setHolder(holder); |
|
|
add.setCreateTime(new Date()); |
|
|
add.setCreateTime(new Date()); |
|
@ -162,7 +163,6 @@ public class PlateNumberServiceImpl implements PlateNumberService { |
|
|
addList.add(add); |
|
|
addList.add(add); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if(CollectionUtil.isNotEmpty(addList)){ |
|
|
if(CollectionUtil.isNotEmpty(addList)){ |
|
@ -170,26 +170,66 @@ public class PlateNumberServiceImpl implements PlateNumberService { |
|
|
esMapper.insertBatch(addList); |
|
|
esMapper.insertBatch(addList); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
// String uniqueKey = BeanUtils.getUniqueKey(plateNumberInfo); |
|
|
|
|
|
// String md5Id = HelperUtil.generateMD5(caseId+uniqueKey); |
|
|
|
|
|
// numberInfoList.stream().forEach(item->{ |
|
|
|
|
|
// if (carInfoMap.containsKey(item.getPlateNumber())) { |
|
|
|
|
|
// List<CarInfo> tempCarList = carInfoMap.get(item.getPlateNumber()); |
|
|
|
|
|
// for (CarInfo carInfo : tempCarList) { |
|
|
|
|
|
// if(StrUtil.isEmpty(carInfo.getName())){ |
|
|
|
|
|
// item.setHolder(carInfo.getName()); |
|
|
|
|
|
// break; |
|
|
|
|
|
// } |
|
|
|
|
|
// } |
|
|
|
|
|
// } |
|
|
|
|
|
//// item.get |
|
|
|
|
|
// |
|
|
|
|
|
// }); |
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
* 车辆信息有更新就更新实际持有人 |
|
|
|
|
|
*/ |
|
|
|
|
|
@Override |
|
|
|
|
|
public void updateHolder(String caseId){ |
|
|
|
|
|
LambdaEsQueryWrapper<CarInfo> lqw = EsWrappers.lambdaQuery(CarInfo.class); |
|
|
|
|
|
lqw.eq(CarInfo::getCaseId,caseId); |
|
|
|
|
|
List<CarInfo> carInfos = carInfoEsMapper.selectList(lqw); |
|
|
|
|
|
Map<String, List<CarInfo>> carInfoMap = carInfos.stream().filter(item -> StrUtil.isNotEmpty(item.getCarNo())) |
|
|
|
|
|
.collect(Collectors.groupingBy(CarInfo::getCarNo)); |
|
|
|
|
|
|
|
|
|
|
|
PlateNumberInfo bo = new PlateNumberInfo(); |
|
|
|
|
|
bo.setCaseId(caseId); |
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
List<PlateNumberInfo> numberInfoList = queryList(bo); |
|
|
|
|
|
if(CollectionUtil.isEmpty(numberInfoList)){ |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
Map<String, List<PlateNumberInfo>> plateNumberInfoMap = numberInfoList.stream().filter(item -> StrUtil.isNotEmpty(item.getPlateNumber())) |
|
|
|
|
|
.collect(Collectors.groupingBy(PlateNumberInfo::getPlateNumber)); |
|
|
|
|
|
|
|
|
|
|
|
List<PlateNumberInfo> updateList = new ArrayList<>(); |
|
|
|
|
|
for (String plateNumber : plateNumberInfoMap.keySet()) { |
|
|
|
|
|
List<PlateNumberInfo> plateNumberInfoList = plateNumberInfoMap.get(plateNumber); |
|
|
|
|
|
String holder = ""; |
|
|
|
|
|
if(carInfoMap.containsKey(plateNumber)){ |
|
|
|
|
|
List<CarInfo> tempCarInfos = carInfoMap.get(plateNumber); |
|
|
|
|
|
for (CarInfo tempCarInfo : tempCarInfos) { |
|
|
|
|
|
if(StrUtil.isNotEmpty(tempCarInfo.getName())){ |
|
|
|
|
|
holder = tempCarInfo.getName(); |
|
|
|
|
|
break; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
for (PlateNumberInfo plateNumberInfo : plateNumberInfoList) { |
|
|
|
|
|
plateNumberInfo.setHolder(holder); |
|
|
|
|
|
updateList.add(plateNumberInfo); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
//删除再新增,不然id重复 |
|
|
|
|
|
if(CollectionUtil.isNotEmpty(updateList)){ |
|
|
|
|
|
List<String> idList = updateList.stream().map(PlateNumberInfo::getId).collect(Collectors.toList()); |
|
|
|
|
|
esMapper.deleteBatchIds(idList); |
|
|
|
|
|
|
|
|
|
|
|
List<PlateNumberInfo> addList = new ArrayList<>(); |
|
|
|
|
|
for (PlateNumberInfo plateNumberInfo : updateList) { |
|
|
|
|
|
String uniqueKey = BeanUtils.getUniqueKey(plateNumberInfo); |
|
|
|
|
|
String md5Id = HelperUtil.generateMD5(caseId+uniqueKey); |
|
|
|
|
|
plateNumberInfo.setId(md5Id); |
|
|
|
|
|
plateNumberInfo.setUpdateTime(new DateTime()); |
|
|
|
|
|
addList.add(plateNumberInfo); |
|
|
|
|
|
} |
|
|
|
|
|
esMapper.insertBatch(addList); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* 查询重点人员资产-车辆抓取 |
|
|
* 查询重点人员资产-车辆抓取 |
|
|