diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcNeighborHoodDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcNeighborHoodDTO.java index dbf18ee25a..8e39699670 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcNeighborHoodDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcNeighborHoodDTO.java @@ -21,6 +21,7 @@ import lombok.Data; import java.io.Serializable; import java.util.Date; +import java.util.List; /** @@ -54,6 +55,11 @@ public class IcNeighborHoodDTO implements Serializable { */ private String agencyId; + /** + * agencyId列表 + */ + private List agencyIds; + /** * 上级组织id */ @@ -69,6 +75,11 @@ public class IcNeighborHoodDTO implements Serializable { */ private String gridId; + /** + * gridId列表 + */ + private List gridIds; + /** * 网格 */ diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcNeighborHoodController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcNeighborHoodController.java index a8cf04b4cb..43b2d4bd60 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcNeighborHoodController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcNeighborHoodController.java @@ -141,7 +141,7 @@ public class IcNeighborHoodController { } /** - * @Description 获取网格下小区列表 + * @Description 获取组织/网格下小区列表,支持单选和多选 * @Param dto * @Return {@link Result< List< OptionResultDTO>>} * @Author zhaoqifeng @@ -149,7 +149,13 @@ public class IcNeighborHoodController { */ @PostMapping("neighborhoodoption") public Result> getNeighborHoodOptions(@LoginUser TokenDto tokenDto, @RequestBody IcNeighborHoodDTO dto) { - return new Result>().ok(icNeighborHoodService.getNeighborHoodOptions(dto.getAgencyId(), dto.getGridId(),tokenDto.getUserId(),tokenDto.getCustomerId())); + return new Result>().ok(icNeighborHoodService.getNeighborHoodOptions( + dto.getAgencyId(), + dto.getGridId(), + dto.getAgencyIds(), + dto.getGridIds(), + tokenDto.getUserId(), + tokenDto.getCustomerId())); } /** diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcNeighborHoodService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcNeighborHoodService.java index 2755cf3af0..5ffb6a19e8 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcNeighborHoodService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcNeighborHoodService.java @@ -117,7 +117,8 @@ public interface IcNeighborHoodService extends BaseService * @Author zhaoqifeng * @Date 2021/10/26 14:32 */ - List getNeighborHoodOptions(String agencyId, String gridId,String staffId,String customerId); + List getNeighborHoodOptions(String agencyId, String gridId, List agencyIds, List gridIds, + String staffId,String customerId); /** * 获取用户组织下小区列表 diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java index 56e473038d..7b863857f9 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcNeighborHoodServiceImpl.java @@ -185,22 +185,29 @@ public class IcNeighborHoodServiceImpl extends BaseServiceImpl getNeighborHoodOptions(String agencyId, String gridId,String staffId,String customerId) { - if (StringUtils.isBlank(agencyId)&&StringUtils.isEmpty(gridId)) { - log.info("agencyId与gridId都为空时,默认查询当前工作人员所属组织下的小区"); - CustomerStaffInfoCacheResult result= CustomerStaffRedis.getStaffInfo(customerId,staffId); + public List getNeighborHoodOptions(String agencyId, String gridId, + List agencyIds, List gridIds, + String staffId,String customerId) { + if (StringUtils.isBlank(agencyId) + && StringUtils.isEmpty(gridId) + && CollectionUtils.isEmpty(agencyIds) + && CollectionUtils.isEmpty(gridIds)) { + log.info("agencyId(s)与gridId(s)都为空时,默认查询当前工作人员所属组织下的小区"); + CustomerStaffInfoCacheResult result = CustomerStaffRedis.getStaffInfo(customerId, staffId); if (null == result || StringUtils.isBlank(result.getAgencyId())) { log.error(String.format("staffId:%s,工作人员缓存信息查询异常", staffId)); return Collections.emptyList(); } - agencyId=result.getAgencyId(); + agencyId = result.getAgencyId(); } LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(StringUtils.isNotBlank(agencyId),IcNeighborHoodEntity::getAgencyId, agencyId); + wrapper.eq(StringUtils.isNotBlank(agencyId), IcNeighborHoodEntity::getAgencyId, agencyId); wrapper.eq(StringUtils.isNotBlank(gridId), IcNeighborHoodEntity::getGridId, gridId); + wrapper.in(!CollectionUtils.isEmpty(agencyIds), IcNeighborHoodEntity::getAgencyId, agencyIds); + wrapper.in(!CollectionUtils.isEmpty(gridIds), IcNeighborHoodEntity::getGridId, gridIds); wrapper.last("ORDER BY CONVERT ( NEIGHBOR_HOOD_NAME USING gbk ) ASC"); List list = baseDao.selectList(wrapper); - if(CollectionUtils.isEmpty(list)) { + if (CollectionUtils.isEmpty(list)) { return Collections.emptyList(); } return list.stream().map(item -> {