From ca58dc6ddab7f67465146e6c72ca218a8d2832cd Mon Sep 17 00:00:00 2001 From: "583641232@qq.com" <583641232@qq.com> Date: Wed, 21 Aug 2024 17:14:13 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20=E5=90=88=E5=B9=B6=E4=BA=BA?= =?UTF-8?q?=E5=91=98=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../analysiscenter/domain/AnalysisPerson.java | 14 +++++----- .../analysiscenter/domain/AnalysisReport.java | 7 +++++ .../impl/AnalysisReportServiceImpl.java | 15 ++++++++++- .../datacenter/service/BankService.java | 2 ++ .../service/impl/BankServiceImpl.java | 27 ++++++++++++++++--- .../service/impl/CarInfoServiceImpl.java | 8 ++---- .../CollectionInformationServiceImpl.java | 8 ++---- .../service/impl/PlateNumberServiceImpl.java | 9 +++---- .../service/impl/PublicFamilyServiceImpl.java | 9 +++---- .../service/impl/RealEstateServiceImpl.java | 9 +++---- .../impl/TransactionPartnerServiceImpl.java | 9 +++---- 11 files changed, 70 insertions(+), 47 deletions(-) diff --git a/cas-system/src/main/java/com/inscloudtech/analysiscenter/domain/AnalysisPerson.java b/cas-system/src/main/java/com/inscloudtech/analysiscenter/domain/AnalysisPerson.java index 4635129..ab77626 100644 --- a/cas-system/src/main/java/com/inscloudtech/analysiscenter/domain/AnalysisPerson.java +++ b/cas-system/src/main/java/com/inscloudtech/analysiscenter/domain/AnalysisPerson.java @@ -3,16 +3,15 @@ package com.inscloudtech.analysiscenter.domain; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; -import com.baomidou.mybatisplus.annotation.*; -import com.fasterxml.jackson.annotation.JsonFormat; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.inscloudtech.common.core.domain.BaseEntity; +import com.inscloudtech.common.annotation.DeduplicationField; import lombok.Data; -import lombok.EqualsAndHashCode; import org.dromara.easyes.annotation.IndexField; -import java.util.Date; - /** * 分析中心-分析报告 * @@ -30,13 +29,16 @@ public class AnalysisPerson { @ExcelProperty("id") private String id; + @DeduplicationField private String label; //人员类别 0内部 1外部 private int type; + @DeduplicationField private String caseId; + @DeduplicationField private String value; @IndexField(exist = false) diff --git a/cas-system/src/main/java/com/inscloudtech/analysiscenter/domain/AnalysisReport.java b/cas-system/src/main/java/com/inscloudtech/analysiscenter/domain/AnalysisReport.java index 756ad6e..e66342b 100644 --- a/cas-system/src/main/java/com/inscloudtech/analysiscenter/domain/AnalysisReport.java +++ b/cas-system/src/main/java/com/inscloudtech/analysiscenter/domain/AnalysisReport.java @@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; import com.fasterxml.jackson.annotation.JsonFormat; +import com.inscloudtech.common.annotation.DeduplicationField; import com.inscloudtech.common.core.domain.BaseEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -35,13 +36,16 @@ public class AnalysisReport extends BaseEntity { private String id; @ExcelProperty("name") + @DeduplicationField private String name; private String ossId; + @DeduplicationField private String caseId; @ExcelProperty("idCard") + @DeduplicationField private String idCard; @@ -49,6 +53,7 @@ public class AnalysisReport extends BaseEntity { private String analysisResultId; @ExcelProperty("history") + @DeduplicationField private String history; /** @@ -74,6 +79,7 @@ public class AnalysisReport extends BaseEntity { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ExcelProperty("创建时间") + @DeduplicationField private Date createTime; @ExcelProperty("更新者") @@ -86,5 +92,6 @@ public class AnalysisReport extends BaseEntity { /** * 人员类型 */ + @DeduplicationField private Integer type; } diff --git a/cas-system/src/main/java/com/inscloudtech/analysiscenter/service/impl/AnalysisReportServiceImpl.java b/cas-system/src/main/java/com/inscloudtech/analysiscenter/service/impl/AnalysisReportServiceImpl.java index f4d57a9..32dcd66 100644 --- a/cas-system/src/main/java/com/inscloudtech/analysiscenter/service/impl/AnalysisReportServiceImpl.java +++ b/cas-system/src/main/java/com/inscloudtech/analysiscenter/service/impl/AnalysisReportServiceImpl.java @@ -1814,13 +1814,20 @@ public class AnalysisReportServiceImpl implements IAnalysisReportService { @Override public Boolean caseMerge(String sourceCaseId,String targetCaseId) { + Set uniqueKeySet = new HashSet(); AnalysisReport analysisReport = new AnalysisReport(); analysisReport.setCaseId(sourceCaseId); List analysisResults = queryList(analysisReport); List addList = new ArrayList<>(); for (AnalysisReport result : analysisResults) { result.setCaseId(targetCaseId); - String md5Id = HelperUtil.generateMD5(result.toString()); + + String uniqueKey = BeanUtils.getUniqueKey(result); + String md5Id = HelperUtil.generateMD5(uniqueKey); + //未导入数据内部去重 + if(HelperUtil.deduplication(md5Id,uniqueKeySet)){ + continue; + } result.setId(md5Id); if(!result.getName().contains("(并入)")){ result.setName(result.getName() + "(并入)"); @@ -1831,6 +1838,12 @@ public class AnalysisReportServiceImpl implements IAnalysisReportService { baseMapper.insertBatch(addList); sysOssService.caseMerge(sourceCaseId,targetCaseId,"ANALYSIS_REPORT"); } + + //合并人员 + GetPersonReq req = new GetPersonReq(); + req.setCaseId(sourceCaseId); + List personInfo = bankService.getPersonInfo(req); + bankService.insertAnalysisPerson(personInfo,targetCaseId); return true; } diff --git a/cas-system/src/main/java/com/inscloudtech/datacenter/service/BankService.java b/cas-system/src/main/java/com/inscloudtech/datacenter/service/BankService.java index e8602fb..6b505ae 100644 --- a/cas-system/src/main/java/com/inscloudtech/datacenter/service/BankService.java +++ b/cas-system/src/main/java/com/inscloudtech/datacenter/service/BankService.java @@ -66,6 +66,8 @@ public interface BankService { List getPersonInfo(GetPersonReq req); + void insertAnalysisPerson(List analysisPersonList,String caseId); + void analysisFile(File file, String bankNo, String caseId, String bankName); void createTemplate(String sourceFolderPath, String zipFilePath); diff --git a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/BankServiceImpl.java b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/BankServiceImpl.java index 5b515b0..e4fcd00 100644 --- a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/BankServiceImpl.java +++ b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/BankServiceImpl.java @@ -224,6 +224,29 @@ public class BankServiceImpl implements BankService { person.setValue(idCard); analysisPersonList.add(person); } + insertAnalysisPerson(analysisPersonList,caseId); + + LambdaQueryWrapper webWrap = Wrappers.lambdaQuery(); + webWrap.eq(AnalysisPerson::getCaseId,caseId); + + return analysisPersonMapper.selectList(webWrap); + } + + @Override + public void insertAnalysisPerson(List analysisPersonList,String caseId){ + Set uniqueKeySet = new HashSet(); + List addList = new ArrayList<>(); + for (AnalysisPerson person : analysisPersonList) { + person.setCaseId(caseId); + String uniqueKey = BeanUtils.getUniqueKey(person); + String md5Id = HelperUtil.generateMD5(uniqueKey); + if(HelperUtil.deduplication(md5Id,uniqueKeySet)){ + continue; + } + + person.setId(md5Id); + addList.add(person); + } Map groupById = analysisPersonList.stream().collect(Collectors.toMap(AnalysisPerson::getId, Function.identity())); Set idSet = groupById.keySet(); @@ -249,10 +272,6 @@ public class BankServiceImpl implements BankService { } } - LambdaQueryWrapper webWrap = Wrappers.lambdaQuery(); - webWrap.eq(AnalysisPerson::getCaseId,caseId); - - return analysisPersonMapper.selectList(webWrap); } /** diff --git a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/CarInfoServiceImpl.java b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/CarInfoServiceImpl.java index 45712d2..ac02acc 100644 --- a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/CarInfoServiceImpl.java +++ b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/CarInfoServiceImpl.java @@ -367,14 +367,10 @@ public class CarInfoServiceImpl implements ICarInfoService { Set uniqueKeySet = new HashSet(); List result = new ArrayList<>(); for (CarInfo family : list) { - try { - BeanUtils.beanAttributeValueTrim(family); - } catch (Exception e) { - e.printStackTrace(); - } + BeanUtils.beanAttributeValueTrim(family); family.setCaseId(caseId); String uniqueKey = BeanUtils.getUniqueKey(family); - String md5Id = HelperUtil.generateMD5(caseId+uniqueKey); + String md5Id = HelperUtil.generateMD5(uniqueKey); //未导入数据内部去重 if(HelperUtil.deduplication(md5Id,uniqueKeySet)){ continue; diff --git a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/CollectionInformationServiceImpl.java b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/CollectionInformationServiceImpl.java index 35388d8..ac0b414 100644 --- a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/CollectionInformationServiceImpl.java +++ b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/CollectionInformationServiceImpl.java @@ -338,13 +338,9 @@ public class CollectionInformationServiceImpl implements CollectionInformationSe Set uniqueKeySet = new HashSet(); List result = new ArrayList<>(); for (CollectionInformation family : list) { - try { - BeanUtils.beanAttributeValueTrim(family); - } catch (Exception e) { - e.printStackTrace(); - } family.setCaseId(caseId); - String md5Id = HelperUtil.generateMD5(family.toString()); + String uniqueKey = BeanUtils.getUniqueKey(family); + String md5Id = HelperUtil.generateMD5(uniqueKey); //未导入数据内部去重 if(HelperUtil.deduplication(md5Id,uniqueKeySet)){ continue; diff --git a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/PlateNumberServiceImpl.java b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/PlateNumberServiceImpl.java index b1cbc18..7592fda 100644 --- a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/PlateNumberServiceImpl.java +++ b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/PlateNumberServiceImpl.java @@ -507,13 +507,10 @@ public class PlateNumberServiceImpl implements PlateNumberService { Set uniqueKeySet = new HashSet(); List result = new ArrayList<>(); for (PlateNumberInfo family : list) { - try { - BeanUtils.beanAttributeValueTrim(family); - } catch (Exception e) { - e.printStackTrace(); - } + BeanUtils.beanAttributeValueTrim(family); family.setCaseId(caseId); - String md5Id = HelperUtil.generateMD5(family.toString()); + String uniqueKey = BeanUtils.getUniqueKey(family); + String md5Id = HelperUtil.generateMD5(uniqueKey); //未导入数据内部去重 if(HelperUtil.deduplication(md5Id,uniqueKeySet)){ continue; diff --git a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/PublicFamilyServiceImpl.java b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/PublicFamilyServiceImpl.java index 0513299..5e1c089 100644 --- a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/PublicFamilyServiceImpl.java +++ b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/PublicFamilyServiceImpl.java @@ -328,13 +328,10 @@ public class PublicFamilyServiceImpl implements IPublicFamilyService { Set uniqueKeySet = new HashSet(); List result = new ArrayList<>(); for (PublicFamily family : list) { - try { - BeanUtils.beanAttributeValueTrim(family); - } catch (Exception e) { - e.printStackTrace(); - } + BeanUtils.beanAttributeValueTrim(family); + String uniqueKey = BeanUtils.getUniqueKey(family); family.setCaseId(caseId); - String md5Id = HelperUtil.generateMD5(family.toString()); + String md5Id = HelperUtil.generateMD5(uniqueKey); //未导入数据内部去重 if(HelperUtil.deduplication(md5Id,uniqueKeySet)){ continue; diff --git a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/RealEstateServiceImpl.java b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/RealEstateServiceImpl.java index fcfd873..391241e 100644 --- a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/RealEstateServiceImpl.java +++ b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/RealEstateServiceImpl.java @@ -379,13 +379,10 @@ public class RealEstateServiceImpl implements IRealEstateService { Set uniqueKeySet = new HashSet(); List result = new ArrayList<>(); for (RealEstate family : list) { - try { - BeanUtils.beanAttributeValueTrim(family); - } catch (Exception e) { - e.printStackTrace(); - } + BeanUtils.beanAttributeValueTrim(family); family.setCaseId(caseId); - String md5Id = HelperUtil.generateMD5(family.toString()); + String uniqueKey = BeanUtils.getUniqueKey(family); + String md5Id = HelperUtil.generateMD5(uniqueKey); //未导入数据内部去重 if(HelperUtil.deduplication(md5Id,uniqueKeySet)){ continue; diff --git a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/TransactionPartnerServiceImpl.java b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/TransactionPartnerServiceImpl.java index 2114db8..50b9526 100644 --- a/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/TransactionPartnerServiceImpl.java +++ b/cas-system/src/main/java/com/inscloudtech/datacenter/service/impl/TransactionPartnerServiceImpl.java @@ -332,13 +332,10 @@ public class TransactionPartnerServiceImpl implements ITransactionPartnerService Set uniqueKeySet = new HashSet(); List result = new ArrayList<>(); for (TransactionPartner family : list) { - try { - BeanUtils.beanAttributeValueTrim(family); - } catch (Exception e) { - e.printStackTrace(); - } + BeanUtils.beanAttributeValueTrim(family); family.setCaseId(caseId); - String md5Id = HelperUtil.generateMD5(family.toString()); + String uniqueKey = BeanUtils.getUniqueKey(family); + String md5Id = HelperUtil.generateMD5(uniqueKey); //未导入数据内部去重 if(HelperUtil.deduplication(md5Id,uniqueKeySet)){ continue;