From c4cebaab34b7a39a611bd08582f8a9a82f28568e Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Fri, 24 Jun 2022 13:28:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9A=82=E5=AD=98=E5=88=AB=E4=B8=8A=E7=94=9F?= =?UTF-8?q?=E4=BA=A7=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/constant/UserDemandConstant.java | 2 +- .../impl/IcUserDemandRecServiceImpl.java | 98 +++++++++++++++---- .../epmet/feign/EpmetUserOpenFeignClient.java | 8 ++ .../EpmetUserOpenFeignClientFallback.java | 11 +++ .../controller/IcResiUserController.java | 14 +++ .../java/com/epmet/dao/IcResiUserDao.java | 2 + .../com/epmet/service/IcResiUserService.java | 2 + .../service/impl/IcResiUserServiceImpl.java | 13 +++ .../main/resources/mapper/IcResiUserDao.xml | 9 ++ 9 files changed, 141 insertions(+), 18 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/constant/UserDemandConstant.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/constant/UserDemandConstant.java index 2f9fa07fac..b0a3d20fd7 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/constant/UserDemandConstant.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/constant/UserDemandConstant.java @@ -53,7 +53,7 @@ public interface UserDemandConstant { String SOCIAL_ORG="social_org"; String COMMUNITY_ORG="community_org"; String PARTY_UNIT="party_unit"; - String EPMET_USER_VOLUNTEER="epmet_user_volunteer"; + String IC_USER_VOLUNTEER="ic_user_volunteer"; /** * 个人档案:personal-data diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java index e4a5eb348f..69013fe98a 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java @@ -275,18 +275,22 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl dictList=demandDictService.listByCodes(formDTO.getCustomerId(),categoryCodes); Map dictMap = dictList.stream().collect(Collectors.toMap(IcResiDemandDictEntity::getCategoryCode, IcResiDemandDictEntity::getCategoryName)); - //3、查询志愿者 + //3、查询爱心互助志愿者 // 服务方类型:志愿者:volunteer;社会组织:social_org;社区自组织:community_org;区域党建单位:party_unit; Map userInfoMap=new HashMap<>(); Set userIdList=list.stream().filter(item->null!=item.getServiceType()&&item.getServiceType().equals(UserDemandConstant.VOLUNTEER)).map(DemandRecResultDTO::getServerId).collect(Collectors.toSet()); if(CollectionUtils.isNotEmpty(userIdList)){ Result> userInfoRes = epmetUserOpenFeignClient.queryUserBaseInfo(new ArrayList<>(userIdList)); if(!userInfoRes.success()||CollectionUtils.isEmpty(userInfoRes.getData())){ - throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(),"查询志愿者信息异常"); + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(),"查询爱心互助志愿者信息异常"); } userInfoMap=userInfoRes.getData().stream().collect(Collectors.toMap(UserBaseInfoResultDTO::getUserId, UserBaseInfoResultDTO::getRealName)); } + //4、居民信息的志愿者 + Set icUserIdList = list.stream().filter(item -> null != item.getServiceType() && item.getServiceType().equals(UserDemandConstant.IC_USER_VOLUNTEER)).map(DemandRecResultDTO::getServerId).collect(Collectors.toSet()); + Map icUserInfoMap =getIcVolunteerMap(icUserIdList); + //查询字典表 Result> reportTypeRes=adminOpenFeignClient.dictMap(DictTypeEnum.USER_DEMAND_REPORT_TYPE.getCode()); Map reportTypeMap=reportTypeRes.success()&& MapUtils.isNotEmpty(reportTypeRes.getData())?reportTypeRes.getData():new HashMap<>(); @@ -306,9 +310,19 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl> userInfoRes = epmetUserOpenFeignClient.queryUserBaseInfo(Arrays.asList(serverId)); + if (!userInfoRes.success() || CollectionUtils.isEmpty(userInfoRes.getData())) { + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询爱心互助志愿者信息异常","志愿者信息查询异常"); + } + serviceName=userInfoRes.getData().get(NumConstant.ZERO).getRealName(); + break; + case UserDemandConstant.IC_USER_VOLUNTEER: + //居民信息的志愿者 ic_resi_user Result icUserInfoRes = epmetUserOpenFeignClient.getIcResiUserDTO(serverId); if (!icUserInfoRes.success() || null!=icUserInfoRes.getData()) { throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询居民信息志愿者信息异常","查询居民信息志愿者信息异常"); } serviceName=icUserInfoRes.getData().getName(); break; - case UserDemandConstant.EPMET_USER_VOLUNTEER: - Result> userInfoRes = epmetUserOpenFeignClient.queryUserBaseInfo(Arrays.asList(serverId)); - if (!userInfoRes.success() || CollectionUtils.isEmpty(userInfoRes.getData())) { - throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询志愿者信息异常","志愿者信息查询异常"); - } - serviceName=userInfoRes.getData().get(NumConstant.ZERO).getRealName(); - break; default: log.warn("serviceType 错误"); break; @@ -640,9 +656,16 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl userIdList = Arrays.asList(res.getServerId()); Result> userInfoRes = epmetUserOpenFeignClient.queryUserBaseInfo(userIdList); if (!userInfoRes.success() || CollectionUtils.isEmpty(userInfoRes.getData())) { - throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询志愿者信息异常"); + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询爱心互助志愿者信息异常"); } res.setServiceName(userInfoRes.getData().get(NumConstant.ZERO).getRealName()); + }else if(UserDemandConstant.IC_USER_VOLUNTEER.equals(res.getServiceType())){ + // 如果服务方是居民信息的志愿者,需要查询ic_resi_user.姓名 + Result userInfoRes = epmetUserOpenFeignClient.getIcResiUserDTO(res.getServerId()); + if (!userInfoRes.success() || null == userInfoRes.getData()) { + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询居民信息志愿者信息异常"); + } + res.setServiceName(userInfoRes.getData().getName()); } //查询字典表 Result> reportTypeRes = adminOpenFeignClient.dictMap(DictTypeEnum.USER_DEMAND_REPORT_TYPE.getCode()); @@ -845,7 +868,7 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl dictList=demandDictService.listByCodes(customerId,categoryCodes); Map dictMap = dictList.stream().collect(Collectors.toMap(IcResiDemandDictEntity::getCategoryCode, IcResiDemandDictEntity::getCategoryName)); - //3、查询志愿者 + //3、查询爱心互助志愿者 // 服务方类型:志愿者:volunteer;社会组织:social_org;社区自组织:community_org;区域党建单位:party_unit; Map userInfoMap=new HashMap<>(); Set userIdList=demandList.stream().filter(item->null!=item.getServiceType()&&item.getServiceType().equals(UserDemandConstant.VOLUNTEER)).map(DemandRecResultDTO::getServerId).collect(Collectors.toSet()); @@ -857,6 +880,10 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl icUserIdList = demandList.stream().filter(item -> null != item.getServiceType() && item.getServiceType().equals(UserDemandConstant.IC_USER_VOLUNTEER)).map(DemandRecResultDTO::getServerId).collect(Collectors.toSet()); + Map icUserInfoMap=getIcVolunteerMap(icUserIdList); + for(DemandRecResultDTO res:demandList){ if (null != gridInfoMap && gridInfoMap.containsKey(res.getGridId())) { res.setGridName(gridInfoMap.get(res.getGridId()).getGridName()); @@ -866,9 +893,6 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl userIdList=list.stream().filter(item->null!=item.getServiceType()&&item.getServiceType().equals(UserDemandConstant.VOLUNTEER)).map(ResiClientMyDemandResDTO::getServerId).collect(Collectors.toSet()); Map userInfoMap=getVolunteerMap(userIdList); + //3、居民信息志愿者 + Set icUserIdList=list.stream().filter(item->null!=item.getServiceType()&&item.getServiceType().equals(UserDemandConstant.IC_USER_VOLUNTEER)).map(ResiClientMyDemandResDTO::getServerId).collect(Collectors.toSet()); + Map icUerInfoMap=getIcVolunteerMap(icUserIdList); for (ResiClientMyDemandResDTO resDto : list) { //3、查询分类名称 @@ -1276,6 +1312,11 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl getIcVolunteerMap(Set icUserIdList) { + Map icUserInfoMap = new HashMap<>(); + if (CollectionUtils.isNotEmpty(icUserIdList)) { + Result> icUserInfoRes = epmetUserOpenFeignClient.getListIcResiUserDTO(new ArrayList<>(icUserIdList)); + if (!icUserInfoRes.success() || CollectionUtils.isEmpty(icUserInfoRes.getData())) { + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询居民信息志愿者信息异常"); + } + icUserInfoMap = icUserInfoRes.getData().stream().collect(Collectors.toMap(IcResiUserDTO::getId, o -> o, (o1, o2) -> o1)); + } + return icUserInfoMap; + } + /** * 我的需求-需求详情(待处理,处理中,已完成,已取消) * @@ -1381,6 +1439,12 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl icUserInfoMap = getIcVolunteerMap(new HashSet<>(Arrays.asList(resDto.getServerId()))); + resDto.setServiceUnitName(StrConstant.EPMETY_STR); + resDto.setServiceUserName(icUserInfoMap.get(resDto.getServerId()).getName()); + resDto.setServiceUserMobile(icUserInfoMap.get(resDto.getServerId()).getMobile()); + break; default: log.warn("serviceType 错误"); break; diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java index 90b0359881..7aa527475e 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java @@ -697,6 +697,14 @@ public interface EpmetUserOpenFeignClient { @PostMapping(value = "/epmetuser/icresiuser/geticresiuser/{icResiUserId}") Result getIcResiUserDTO(@PathVariable("icResiUserId") String icResiUserId); + /** + * 获取ic_resi_user + * @param icResiUserIdList + * @return + */ + @PostMapping(value = "/epmetuser/icresiuser/list-icresiuser") + Result> getListIcResiUserDTO(@RequestBody List icResiUserIdList); + /** * @Description 查询居民注册关系 * @param userId diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java index 55083de3a2..cf8c53d1b2 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java @@ -515,6 +515,17 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getIcResiUserDTO", icResiUserId); } + /** + * 获取ic_resi_user + * + * @param icResiUserIdList + * @return + */ + @Override + public Result> getListIcResiUserDTO(List icResiUserIdList) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getListIcResiUserDTO", icResiUserIdList); + } + @Override public Result resiRelationInfo(String userId) { return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "resiRelationInfo", userId); diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java index 8e9e6a41c7..ce9e970a4e 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java @@ -955,6 +955,20 @@ public class IcResiUserController implements ResultDataResolver { return new Result<>(); } + /** + * 获取ic_resi_user + * 目前只返回id, name + * @param icResiUserIdList + * @return + */ + @PostMapping(value = "list-icresiuser") + public Result> getListIcResiUserDTO(@RequestBody List icResiUserIdList) { + if (CollectionUtils.isEmpty(icResiUserIdList)) { + return new Result<>(); + } + return new Result>().ok(icResiUserService.getListIcResiUserDTO(icResiUserIdList)); + } + /** * 【社区查询】搜索居民们 * diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java index f145fadd97..0f5d165f1a 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java @@ -370,4 +370,6 @@ public interface IcResiUserDao extends BaseDao { * @return com.epmet.entity.IcResiUserEntity */ IcResiUserEntity selectResiUserEntityByIdCard(@Param("idCard") String idCard,@Param("customerId") String customerId); + + List getListIcResiUserDTO(@Param("icResiUserIdList") List icResiUserIdList); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java index 3ef76601bc..e6bc952d3e 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java @@ -436,4 +436,6 @@ public interface IcResiUserService extends BaseService { * @Date 2022/6/16 15:30 */ List getUserId(String icResiUserId); + + List getListIcResiUserDTO(List icResiUserIdList); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java index a7d1183196..7f1374c89a 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java @@ -2536,6 +2536,19 @@ public class IcResiUserServiceImpl extends BaseServiceImpl getListIcResiUserDTO(List icResiUserIdList) { + if(CollectionUtils.isEmpty(icResiUserIdList)){ + return new ArrayList<>(); + } + return baseDao.getListIcResiUserDTO(icResiUserIdList); + } + /** * 根据身份证获取居民角色(目前只有是否是志愿者) * diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml index edb2455bee..97ed0a988a 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml @@ -1132,4 +1132,13 @@ AND customer_id = #{customerId} AND DEL_FLAG = '0' + +