diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerGridDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerGridDao.java index 34534391c3..bec972b9d7 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerGridDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerGridDao.java @@ -336,4 +336,10 @@ public interface CustomerGridDao extends BaseDao { * @Date 2021/10/25 16:04 */ List selectUnitList(@Param("buildingId") String buildingId); + + /** + * @Author sun + * @Description 查询组织下直属网格列表 + **/ + List selectByPid(@Param("pid") String pid); } 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 e0fce5c740..b0cb1d46b6 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 @@ -56,7 +56,8 @@ public interface IcBuildingDao extends BaseDao { List selectAgencyChildrenList(@Param("agencyId") String agencyId); - List> selectListByName(@Param("neighborNameList")ArrayList strings, + List> selectListByName(@Param("customerId") String customerId, + @Param("neighborNameList")ArrayList strings, @Param("buildingNameList") ArrayList strings1, @Param("buildingUnitList") ArrayList integers); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcNeighborHoodDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcNeighborHoodDao.java index 19e30210ae..6e5d0487eb 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcNeighborHoodDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcNeighborHoodDao.java @@ -43,7 +43,8 @@ public interface IcNeighborHoodDao extends BaseDao { // List searchAllNeighborhood(@Param(Constants.WRAPPER) QueryWrapper neighborHoodEntityQueryWrapper); List searchAllNeighborhood(@Param("neighbor") IcNeighborHoodEntity neighbor, @Param("house")IcHouseEntity house); - List selectListByName(@Param("neighborNameList")List neighborNameList, + List selectListByName(@Param("customerId") String customerId, + @Param("neighborNameList")List neighborNameList, @Param("agencyNameList") List agencyNameList, @Param("gridNameList") List gridNameList); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java index 6925d238aa..d00fade930 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/BuildingServiceImpl.java @@ -236,7 +236,7 @@ public class BuildingServiceImpl implements BuildingService { Set neighborNameList = list.stream().map(item -> item.getNeighborHoodName()).collect(Collectors.toSet()); Set agencyNameList = list.stream().map(item -> item.getAgencyName()).collect(Collectors.toSet()); Set gridNameList = list.stream().map(item -> item.getGridName()).collect(Collectors.toSet()); - List neighborHoodList = icNeighborHoodDao.selectListByName(new ArrayList(neighborNameList),new ArrayList(agencyNameList),new ArrayList(gridNameList)); + List neighborHoodList = icNeighborHoodDao.selectListByName(customerId, new ArrayList(neighborNameList),new ArrayList(agencyNameList),new ArrayList(gridNameList)); // List neighborHoodList = icNeighborHoodDao.selectList(new QueryWrapper().lambda().in(IcNeighborHoodEntity::getNeighborHoodName, neighborNameList)); Map neighborHoodMap = neighborHoodList.stream().collect(Collectors.toMap(IcNeighborHoodEntity::getNeighborHoodName, Function.identity(),(key1, key2)->key1)); diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java index ff5dd90ef8..d6bbe4dc86 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java @@ -153,7 +153,7 @@ public class HouseServiceImpl implements HouseService { Set neighborNameList = list.stream().map(item -> item.getNeighborHoodName()).collect(Collectors.toSet()); Set buildingNameList = list.stream().map(item -> item.getBuildingName()).collect(Collectors.toSet()); Set buildingUnitList = list.stream().map(item -> item.getBuildingUnit()).collect(Collectors.toSet()); - List> buildMapList = icBuildingDao.selectListByName(new ArrayList(neighborNameList),new ArrayList(buildingNameList),new ArrayList(buildingUnitList)); + List> buildMapList = icBuildingDao.selectListByName(customerId, new ArrayList(neighborNameList),new ArrayList(buildingNameList),new ArrayList(buildingUnitList)); //转Map Map> buildMap = new HashMap<>(); buildMapList.forEach(item->{ diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/NeighborHoodServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/NeighborHoodServiceImpl.java index 2e72f0341c..8067c15d0d 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/NeighborHoodServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/NeighborHoodServiceImpl.java @@ -243,6 +243,8 @@ public class NeighborHoodServiceImpl implements NeighborHoodService { public List importExcel(String customerId,List list,String staffId, List numList) { //2021.11.9 需求变更 当前工作人员只能导致自己所属组织下数据,网格名对应不上的数据舍弃【注:需求就这样】 sun CustomerStaffInfoCacheResult staffInfoCache = CustomerStaffRedis.getStaffInfo(customerId, staffId); + //查询当前组织下网格列表 + List customerGridList = customerGridDao.selectByPid(staffInfoCache.getAgencyId()); //组织名称不一样的数据舍弃 Iterator iterator = list.iterator(); while (iterator.hasNext()) { @@ -251,6 +253,14 @@ public class NeighborHoodServiceImpl implements NeighborHoodService { numList.add(obj.getRowNum()); iterator.remove(); } + //当前组织下网格名不存在的也不允许导入 + customerGridList.forEach(g->{ + if(!obj.getGridName().trim().equals(g.getGridName())){ + numList.add(obj.getRowNum()); + iterator.remove(); + } + }); + } //end sun @@ -260,13 +270,15 @@ public class NeighborHoodServiceImpl implements NeighborHoodService { } //获取所有组织 list List agencyNameList = list.stream().map(item -> item.getAgencyName()).collect(Collectors.toList()); + agencyNameList = agencyNameList.stream().distinct().collect(Collectors.toList()); //获取所有网格 list - List gridNameList = list.stream().map(item->item.getGridName()).collect(Collectors.toList()); + //List gridNameList = list.stream().map(item->item.getGridName()).collect(Collectors.toList()); //获取所有物业 list List propertyNameList = list.stream().map(item->item.getPropertyName()).collect(Collectors.toList()); + propertyNameList = propertyNameList.stream().distinct().collect(Collectors.toList()); //查询对应的id List customerAgencyList = customerAgencyDao.selectList(new QueryWrapper().lambda().in(CustomerAgencyEntity::getOrganizationName, agencyNameList)); - List customerGridList = customerGridDao.selectList(new QueryWrapper().lambda().in(CustomerGridEntity::getGridName, gridNameList)); + //List customerGridList = customerGridDao.selectList(new QueryWrapper().lambda().in(CustomerGridEntity::getGridName, gridNameList)); List icPropertyManagementList = icPropertyManagementDao.selectList(new QueryWrapper().lambda().in(IcPropertyManagementEntity::getName, propertyNameList)); Map agencyMap = customerAgencyList.stream().collect(Collectors.toMap(CustomerAgencyEntity::getOrganizationName, Function.identity(),(key1, key2)->key1)); diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml index a3aba7122e..e68adad92d 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml @@ -680,5 +680,13 @@ DEL_FLAG = '0' AND BUILDING_ID = #{buildingId} + diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml index 3c4022ea6f..2091daeba8 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcBuildingDao.xml @@ -283,7 +283,9 @@ #{val} - WHERE a.DEL_FLAG = '0' and a.NEIGHBOR_HOOD_NAME in + WHERE a.DEL_FLAG = '0' + AND a.CUSTOMER_ID = #{customerId} + and a.NEIGHBOR_HOOD_NAME in #{val} diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml index dba659f38c..ea950eb90b 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodDao.xml @@ -193,7 +193,9 @@ #{val} - where a.DEL_FLAG= '0'and a.NEIGHBOR_HOOD_NAME in + where a.DEL_FLAG= '0' + AND a.CUSTOMER_ID = #{customerId} + and a.NEIGHBOR_HOOD_NAME in #{val}