diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcBuildingDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcBuildingDao.java index 787bf47679..780e489e21 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcBuildingDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcBuildingDao.java @@ -34,6 +34,7 @@ import org.apache.ibatis.annotations.Param; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.Set; /** * 楼栋信息 @@ -178,7 +179,7 @@ public interface IcBuildingDao extends BaseDao { * @author zxc * @date 2022/3/3 5:26 下午 */ - List selectHouseNum(@Param("ids")List ids); + List selectHouseNum(@Param("ids") Set ids); /** * Desc: 批量更新楼栋户数 @@ -188,4 +189,4 @@ public interface IcBuildingDao extends BaseDao { */ void allUpdateHouseNum(@Param("nums") List nums); -} \ No newline at end of file +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportHouseInfoListener.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportHouseInfoListener.java index f69987a7b6..ffc6a950c6 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportHouseInfoListener.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportHouseInfoListener.java @@ -1,9 +1,9 @@ package com.epmet.model; +import cn.hutool.core.collection.ConcurrentHashSet; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; import com.epmet.commons.tools.constant.NumConstant; -import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.redis.common.CustomerOrgRedis; import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache; import com.epmet.commons.tools.redis.common.bean.GridInfoCache; @@ -64,6 +64,10 @@ public class ImportHouseInfoListener extends AnalysisEventListener buildingUnitInfos = null; List buildingUnitInfoDTOs = null; + /** + * 本次导入涉及到的楼宇id 用于更新住户数 + */ + private Set buildingIdSet = new ConcurrentHashSet<>(); private ImportInfoFormDTO formDTO; private IcBuildingDao icBuildingDao; @@ -531,16 +535,13 @@ public class ImportHouseInfoListener extends AnalysisEventListener list = icBuildingDao.selectHouseTotalIsNull(formDTO.getCustomerId()); - if (!CollectionUtils.isEmpty(list)){ - List houseNum = icBuildingDao.selectHouseNum(list); + if (!CollectionUtils.isEmpty(buildingIdSet)){ + List houseNum = icBuildingDao.selectHouseNum(buildingIdSet); if (!CollectionUtils.isEmpty(houseNum)){ icBuildingDao.allUpdateHouseNum(houseNum); } - }*/ + buildingIdSet = null; + } // 删除缓存 icHouseRedis.delTemporaryCacheGrids(formDTO.getCustomerId(), formDTO.getUserId()); icHouseRedis.delTemporaryCacheNeighBorHood(formDTO.getCustomerId(), formDTO.getUserId()); @@ -581,6 +582,7 @@ public class ImportHouseInfoListener extends AnalysisEventListener houses){ if (!CollectionUtils.isEmpty(houses)){ icHouseService.insertBatch(ConvertUtils.sourceToTarget(houses, IcHouseEntity.class)); + buildingIdSet.addAll(houses.stream().map(ImportGeneralDTO::getBuildingId).collect(Collectors.toSet())); } } @@ -588,6 +590,7 @@ public class ImportHouseInfoListener extends AnalysisEventListener houses){ if (!CollectionUtils.isEmpty(houses)){ icHouseService.houseUpdate(houses); + buildingIdSet.addAll(houses.stream().map(ImportGeneralDTO::getBuildingId).collect(Collectors.toSet())); } }