diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/HousingInformationServiceImpl.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/HousingInformationServiceImpl.java index c21386c8..b66d8e12 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/HousingInformationServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/HousingInformationServiceImpl.java @@ -329,12 +329,18 @@ public class HousingInformationServiceImpl extends BaseServiceImpl populationIdNoAndIdMap = new HashMap<>(); + //户主导入数据 List basePopulationInformationExcels = null; + //户主导入数据异常提示 List epdcHouseAndHouseHeadErrorResultDTOS = null; + //居民导入数据 List baseResidentInformationExcels = null; + //居民导入数据异常提示 List epdcResidentErrorResultDTOS = null; + //户主身份证列表,便于校验居住人页填写的身份证信息是否正确 + Set residentIdentifyNo = new HashSet<>(); for (int numSheet = 0; numSheet < workBook.getNumberOfSheets(); numSheet++) { //第几个sheet importParams.setStartSheetIndex(numSheet); @@ -343,11 +349,13 @@ public class HousingInformationServiceImpl extends BaseServiceImpl + residentIdentifyNo.add(basePopulationInformationExcel.getResidentsIdentityNo()) + ); } else if (numSheet == 1) {//检验和新增居住人信息 baseResidentInformationExcels = ExcelImportUtil.importExcel(f, BaseResidentInformationExcel.class, importParams); // 校验数据 - epdcResidentErrorResultDTOS = this.checkResidentsExcel(baseResidentInformationExcels, sysPopulationSimpleDictDTOS); + epdcResidentErrorResultDTOS = this.checkResidentsExcel(baseResidentInformationExcels, sysPopulationSimpleDictDTOS,residentIdentifyNo); } } if (epdcHouseAndHouseHeadErrorResultDTOS!=null && epdcHouseAndHouseHeadErrorResultDTOS.size() > 0) { @@ -610,7 +618,7 @@ public class HousingInformationServiceImpl extends BaseServiceImpl checkResidentsExcel(List basePopulationInformationExcels, List sysPopulationSimpleDictDTOS) { + private List checkResidentsExcel(List basePopulationInformationExcels, List sysPopulationSimpleDictDTOS, Set residentIdentifyNo) { // 不匹配信息 List errorLineInfoList = new ArrayList<>(); EpdcPopulationErrorResultDTO errorLineInfoDto; @@ -630,6 +638,16 @@ public class HousingInformationServiceImpl extends BaseServiceImpl