Commit eaa64c14 authored by suhuiguang's avatar suhuiguang

1.管道刷历史数据,生产环境异常数据适配

parent a4d2a5b3
......@@ -576,6 +576,9 @@ public class DataHandlerServiceImpl {
Map<Long, List<String>> projectContraptionIdRecordsMap = new HashMap<>();
for(JgInstallationNotice installationNotice : noticeList){
List<JgInstallationNoticeEq> noticeEqs = installationNoticeEqService.list(new LambdaQueryWrapper<JgInstallationNoticeEq>().eq(JgInstallationNoticeEq::getEquipTransferId, installationNotice.getSequenceNbr()).select(JgInstallationNoticeEq::getEquId,JgInstallationNoticeEq::getInformNumber));
if(noticeEqs.isEmpty()){
continue;
}
List<String> records = noticeEqs.stream().map(JgInstallationNoticeEq::getEquId).collect(Collectors.toList());
List<IdxBizJgUseInfo> useInfos = useInfoService.lambdaQuery()
.in(IdxBizJgUseInfo::getRecord, records)
......@@ -756,54 +759,59 @@ public class DataHandlerServiceImpl {
private void updateProjectContraptionAfter(JgUseRegistration useRegistration, JgInstallationNotice installationNotice) {
// 特殊处理 将任意一个的 record 放入到remark字段
IdxBizJgUseInfo useInfo = getIdxBizJgUseInfo(installationNotice.getRemark());
LambdaUpdateWrapper<IdxBizJgProjectContraption> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(BaseEntity::getSequenceNbr, installationNotice.getProjectContraptionId());
updateWrapper.set(IdxBizJgProjectContraption::getUscUnitCreditCode ,null);
updateWrapper.set(IdxBizJgProjectContraption::getUscUnitName,null);
updateWrapper.set(IdxBizJgProjectContraption::getUseRegistrationCode, useRegistration.getUseRegistrationCode());
updateWrapper.set(IdxBizJgProjectContraption::getProvince, useInfo.getProvince());
updateWrapper.set(IdxBizJgProjectContraption::getProvinceName, useInfo.getProvinceName());
updateWrapper.set(IdxBizJgProjectContraption::getCity, useInfo.getCity());
updateWrapper.set(IdxBizJgProjectContraption::getCityName, useInfo.getCityName());
updateWrapper.set(IdxBizJgProjectContraption::getCounty, useInfo.getCounty());
updateWrapper.set(IdxBizJgProjectContraption::getCountyName, useInfo.getCountyName());
updateWrapper.set(IdxBizJgProjectContraption::getStreet, useInfo.getFactoryUseSiteStreet());
updateWrapper.set(IdxBizJgProjectContraption::getStreetName, useInfo.getStreetName());
updateWrapper.set(IdxBizJgProjectContraption::getAddress, useInfo.getAddress());
updateWrapper.set(IdxBizJgProjectContraption::getUseDate, useRegistration.getAuditPassDate());
projectContraptionService.update(null, updateWrapper);
if(useInfo != null){
LambdaUpdateWrapper<IdxBizJgProjectContraption> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(BaseEntity::getSequenceNbr, installationNotice.getProjectContraptionId());
updateWrapper.set(IdxBizJgProjectContraption::getUscUnitCreditCode ,null);
updateWrapper.set(IdxBizJgProjectContraption::getUscUnitName,null);
updateWrapper.set(IdxBizJgProjectContraption::getUseRegistrationCode, useRegistration.getUseRegistrationCode());
updateWrapper.set(IdxBizJgProjectContraption::getProvince, useInfo.getProvince());
updateWrapper.set(IdxBizJgProjectContraption::getProvinceName, useInfo.getProvinceName());
updateWrapper.set(IdxBizJgProjectContraption::getCity, useInfo.getCity());
updateWrapper.set(IdxBizJgProjectContraption::getCityName, useInfo.getCityName());
updateWrapper.set(IdxBizJgProjectContraption::getCounty, useInfo.getCounty());
updateWrapper.set(IdxBizJgProjectContraption::getCountyName, useInfo.getCountyName());
updateWrapper.set(IdxBizJgProjectContraption::getStreet, useInfo.getFactoryUseSiteStreet());
updateWrapper.set(IdxBizJgProjectContraption::getStreetName, useInfo.getStreetName());
updateWrapper.set(IdxBizJgProjectContraption::getAddress, useInfo.getAddress());
updateWrapper.set(IdxBizJgProjectContraption::getUseDate, useRegistration.getAuditPassDate());
projectContraptionService.update(null, updateWrapper);
}
}
private void createProjectInspectInfoAfter(JgUseRegistration useRegistration) {
JgRegistrationHistory jgRegistrationHistory = getRegistrationHistory(useRegistration.getSequenceNbr() + "");
JSONObject mapData = JSONObject.parseObject(jgRegistrationHistory.getChangeData());
IdxBizJgProjectInspection inspectionDetectionInfo = new IdxBizJgProjectInspection();
BeanUtil.copyProperties(mapData, inspectionDetectionInfo);
// 兼容最早的老数据,管道的检验信息单独维护
if(inspectionDetectionInfo.getInspectConclusion() == null && mapData.containsKey("equipmentLists")){
List<Map<String, Object>> equipmentLists = null;
try {
equipmentLists = objectMapper.readValue(
objectMapper.writeValueAsString(mapData.get("equipmentLists")),
new TypeReference<ArrayList<Map<String, Object>>>() {
}
);
if(!equipmentLists.isEmpty()){
Object record = equipmentLists.get(0).get("record");
IdxBizJgInspectionDetectionInfo idxBizJgInspectionDetectionInfo = iIdxBizJgInspectionDetectionInfoService.queryNewestDetailByRecord(String.valueOf(record));
BeanUtil.copyProperties(idxBizJgInspectionDetectionInfo, inspectionDetectionInfo);
inspectionDetectionInfo.setRecord(null);
if(jgRegistrationHistory != null){
JSONObject mapData = JSONObject.parseObject(jgRegistrationHistory.getChangeData());
IdxBizJgProjectInspection inspectionDetectionInfo = new IdxBizJgProjectInspection();
BeanUtil.copyProperties(mapData, inspectionDetectionInfo);
// 兼容最早的老数据,管道的检验信息单独维护
if(inspectionDetectionInfo.getInspectConclusion() == null && mapData.containsKey("equipmentLists")){
List<Map<String, Object>> equipmentLists = null;
try {
equipmentLists = objectMapper.readValue(
objectMapper.writeValueAsString(mapData.get("equipmentLists")),
new TypeReference<ArrayList<Map<String, Object>>>() {
}
);
if(!equipmentLists.isEmpty()){
Object record = equipmentLists.get(0).get("record");
IdxBizJgInspectionDetectionInfo idxBizJgInspectionDetectionInfo = iIdxBizJgInspectionDetectionInfoService.queryNewestDetailByRecord(String.valueOf(record));
BeanUtil.copyProperties(idxBizJgInspectionDetectionInfo, inspectionDetectionInfo);
inspectionDetectionInfo.setRecord(null);
}
} catch (JsonProcessingException e) {
throw new RuntimeException(e);
}
} catch (JsonProcessingException e) {
throw new RuntimeException(e);
}
inspectionDetectionInfo.setProjectContraptionId(useRegistration.getProjectContraptionId());
inspectionDetectionInfo.setRecDate(new Date());
// 使用登记创建新增的检验信息id设置为使用登记的主键id,在作废时级联作废
inspectionDetectionInfo.setSequenceNbr(useRegistration.getSequenceNbr() + "");
projectInspectionMapper.insert(inspectionDetectionInfo);
}
inspectionDetectionInfo.setProjectContraptionId(useRegistration.getProjectContraptionId());
inspectionDetectionInfo.setRecDate(new Date());
// 使用登记创建新增的检验信息id设置为使用登记的主键id,在作废时级联作废
inspectionDetectionInfo.setSequenceNbr(useRegistration.getSequenceNbr() + "");
projectInspectionMapper.insert(inspectionDetectionInfo);
}
private IdxBizJgUseInfo getIdxBizJgUseInfo(String record) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment