From 6f25c600baf4eea7a9dd76c43a656c89eed5d40d Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 10 May 2023 10:05:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A5=BC=E9=95=BF=E5=8D=95=E5=85=831?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...ommunityBuildingManagerImportListener.java | 9 ++- .../CommunityBuildingManagerServiceImpl.java | 79 ++++++++++++------- 2 files changed, 56 insertions(+), 32 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/handler/CommunityBuildingManagerImportListener.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/handler/CommunityBuildingManagerImportListener.java index 8609096b6f..d496c0b2cb 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/handler/CommunityBuildingManagerImportListener.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/excel/handler/CommunityBuildingManagerImportListener.java @@ -17,6 +17,7 @@ import org.apache.commons.collections4.CollectionUtils; import java.util.ArrayList; import java.util.List; +import java.util.Map; /** * @Description @@ -28,6 +29,7 @@ public class CommunityBuildingManagerImportListener implements ReadListener gridMap; private String customerId; private String staffId; private String agencyId; @@ -40,7 +42,8 @@ public class CommunityBuildingManagerImportListener implements ReadListener excelDataList = new ArrayList<>(); - public CommunityBuildingManagerImportListener(String customerId, String staffId, String agencyId,String districtId,String streetId,String rediPrex,CommunityBuildingManagerServiceImpl communityBuildingManagerService) { + public CommunityBuildingManagerImportListener(Map gridMap,String customerId, String staffId, String agencyId, String districtId, String streetId, String rediPrex, CommunityBuildingManagerServiceImpl communityBuildingManagerService) { + this.gridMap=gridMap; this.customerId = customerId; this.staffId = staffId; this.agencyId=agencyId; @@ -73,7 +76,7 @@ public class CommunityBuildingManagerImportListener implements ReadListener gridList=customerGridService.getGridOption(staffInfoCacheResult.getAgencyId(), "addorupdate"); + Map gridMap = gridList.stream().collect(Collectors.toMap(OptionResultDTO::getLabel, OptionResultDTO::getValue)); + String uuid = IdWorker.getIdStr(); try { - staffId = EpmetRequestHolder.getLoginUserId(); - String customerId = EpmetRequestHolder.getLoginUserCustomerId(); - CustomerStaffInfoCacheResult staffInfoCacheResult=CustomerStaffRedis.getStaffInfo(customerId,staffId); - // todo - String districtId=""; - String streetId=""; - String uuid= IdWorker.getIdStr(); - CommunityBuildingManagerImportListener listener = new CommunityBuildingManagerImportListener(customerId,staffId,staffInfoCacheResult.getAgencyId(),districtId,streetId,uuid, + CommunityBuildingManagerImportListener listener = new CommunityBuildingManagerImportListener(gridMap,customerId,staffId,staffInfoCacheResult.getAgencyId(),districtId,streetId,uuid, SpringContextUtils.getBean(CommunityBuildingManagerServiceImpl.class)); EasyExcel.read(filePath.toFile(), CommunityBuildingManagerImportExcelData.class, listener).headRowNumber(1).sheet(0).doRead(); @@ -362,7 +370,8 @@ public class CommunityBuildingManagerServiceImpl extends BaseServiceImpl gridMap, + String customerId, String staffId, String agencyId, String districtId, @@ -377,50 +386,62 @@ public class CommunityBuildingManagerServiceImpl extends BaseServiceImpl viliageList = SpringContextUtils.getBean(IcNeighborHoodService.class).queryNeighborHoodOptions(neighborHoodOptionFormDTO); + Map viliageMap = viliageList.stream().collect(Collectors.toMap(OptionResultDTO::getLabel, OptionResultDTO::getValue)); + if (MapUtils.isEmpty(viliageMap) || !viliageMap.containsKey(dto.getViliageName()) || StringUtils.isBlank(viliageMap.get(dto.getViliageName()))) { CommunityBuildingManagerImportExcelData.ErrorRow errorRow = ConvertUtils.sourceToTarget(dto, CommunityBuildingManagerImportExcelData.ErrorRow.class); errorRow.setErrorInfo("小区不存在"); listener.getErrorRows().add(errorRow); continue; } + String viliageId = viliageMap.get(dto.getViliageName()); entity.setViliageId(viliageId); - //查询当前小区下的楼栋 + + // 查询当前小区下的楼栋 // 所属楼栋 - String buildingId = ""; - if (StringUtils.isBlank(buildingId)) { + List buildingList = SpringContextUtils.getBean(IcBuildingService.class).getBuildingOptions(viliageId); + Map buildingMap = buildingList.stream().collect(Collectors.toMap(OptionResultDTO::getLabel, OptionResultDTO::getValue)); + if (MapUtils.isEmpty(buildingMap) || !buildingMap.containsKey(dto.getBuildingName()) || StringUtils.isBlank(buildingMap.get(dto.getBuildingName()))) { CommunityBuildingManagerImportExcelData.ErrorRow errorRow = ConvertUtils.sourceToTarget(dto, CommunityBuildingManagerImportExcelData.ErrorRow.class); errorRow.setErrorInfo("楼栋不存在"); listener.getErrorRows().add(errorRow); continue; } + String buildingId = buildingMap.get(dto.getBuildingName()); entity.setBuildingId(buildingId); // 所属单元 String unitId = ""; if (StringUtils.isNotBlank(dto.getUnitName())) { // 查询楼栋下的单元列表 - if (StringUtils.isBlank(unitId)) { + List unitList = SpringContextUtils.getBean(IcBuildingUnitService.class).getUnitOptions(buildingId); + Map unitMap = unitList.stream().collect(Collectors.toMap(OptionResultDTO::getLabel, OptionResultDTO::getValue)); + if (MapUtils.isEmpty(unitMap) || !unitMap.containsKey(dto.getUnitName()) || StringUtils.isBlank(unitMap.get(dto.getUnitName()))) { CommunityBuildingManagerImportExcelData.ErrorRow errorRow = ConvertUtils.sourceToTarget(dto, CommunityBuildingManagerImportExcelData.ErrorRow.class); errorRow.setErrorInfo("单元不存在"); listener.getErrorRows().add(errorRow); continue; } + unitId = unitMap.get(dto.getUnitName()); entity.setUnitId(unitId); }