From 18b4472e953113523d74bfcfa2b95eb67c58e65f Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Tue, 27 Apr 2021 16:09:00 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=AE=E9=A2=98=E8=AF=A6=E6=83=85=E6=B6=89?= =?UTF-8?q?=E5=8F=8A=E8=AF=9D=E9=A2=98=E4=BA=BA=E8=AE=AE=E9=A2=98=E4=BA=BA?= =?UTF-8?q?=E6=8C=89=E7=BB=84=E7=B1=BB=E5=9E=8B=E8=BF=94=E4=BA=BA=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resi/group/dto/topic/TopicInfoDTO.java | 5 +++ .../service/impl/ResiTopicServiceImpl.java | 37 ++++++++++++++----- .../resources/mapper/topic/ResiTopicDao.xml | 17 +++++---- .../main/java/com/epmet/dto/TopicInfoDTO.java | 6 +++ .../dto/result/IssueInitiatorResultDTO.java | 4 ++ .../resi-hall/resi-hall-server/pom.xml | 6 +++ .../epmet/service/impl/IssueServiceImpl.java | 37 +++++++++++++++---- .../dto/result/IssueInitiatorResultDTO.java | 4 ++ .../main/resources/mapper/UserResiInfoDao.xml | 21 +++++++---- 9 files changed, 105 insertions(+), 32 deletions(-) diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/TopicInfoDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/TopicInfoDTO.java index f65dc96c40..199796e522 100644 --- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/TopicInfoDTO.java +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/TopicInfoDTO.java @@ -40,4 +40,9 @@ public class TopicInfoDTO implements Serializable { */ private Long publishedTime = 0L; + /** + * 小组类型(ordinary:楼院小组 branch:支部小组) + */ + private String groupType; + } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java index 2a3bb864d6..c452f8d1fb 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java @@ -1369,18 +1369,35 @@ public class ResiTopicServiceImpl extends BaseServiceImpl r = epmetUserFeignClient.selectIssueInitiator(issueInitiator); - if (!r.success()){ - throw new RenException("查询话题发起人失败......"); - } - if (null != r.getData()){ - IssueInitiatorResultDTO issueInitiatorResult = r.getData(); - if (!StringUtils.isBlank(issueInitiatorResult.getIssueInitiator())) { - topicInfo.setPublishedUser(issueInitiatorResult.getIssueInitiator()); + if("branch".equals(topicInfo.getGroupType())){//支部小组话题发起人显示真实姓名 + List userIdList = new ArrayList<>(); + userIdList.add(topicInfo.getPublishedUser()); + Result> result = epmetUserOpenFeignClient.queryUserBaseInfo(userIdList); + if (!result.success()) { + throw new RenException("调用user服务,获取用户基础数据失败"); + } + List resultDTOList = result.getData(); + resultDTOList.forEach(re->{ + if(topicInfo.getPublishedUser().equals(re.getUserId())){ + //话题发起人 + topicInfo.setPublishedUser(re.getRealName() == null ? "" : re.getRealName()); + } + }); + } else { + IssueInitiatorFormDTO issueInitiator = new IssueInitiatorFormDTO(); + issueInitiator.setUserId(topicInfo.getPublishedUser()); + Result r = epmetUserFeignClient.selectIssueInitiator(issueInitiator); + if (!r.success()){ + throw new RenException("查询话题发起人失败......"); + } + if (null != r.getData()){ + IssueInitiatorResultDTO issueInitiatorResult = r.getData(); + if (!StringUtils.isBlank(issueInitiatorResult.getIssueInitiator())) { + topicInfo.setPublishedUser(issueInitiatorResult.getIssueInitiator()); + } } } + return topicInfo; } diff --git a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml index a527b720ef..b5f35a8a7a 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml +++ b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml @@ -378,15 +378,18 @@ diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/TopicInfoDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/TopicInfoDTO.java index 6dcf993139..86e0daefb2 100644 --- a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/TopicInfoDTO.java +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/TopicInfoDTO.java @@ -40,4 +40,10 @@ public class TopicInfoDTO implements Serializable { */ private Long publishedTime; + /** + * 小组类型(ordinary:楼院小组 branch:支部小组) + */ + private String groupType; + + } diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java index 08e0113ace..8b5a7d7a81 100644 --- a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java @@ -16,5 +16,9 @@ public class IssueInitiatorResultDTO implements Serializable { * 议题发起人(山东路168-尹女士) */ private String issueInitiator; + /** + * 议题发起人真实姓名 + */ + private String realUserName; } diff --git a/epmet-module/resi-hall/resi-hall-server/pom.xml b/epmet-module/resi-hall/resi-hall-server/pom.xml index a78f2f33f8..09c3635faf 100644 --- a/epmet-module/resi-hall/resi-hall-server/pom.xml +++ b/epmet-module/resi-hall/resi-hall-server/pom.xml @@ -51,6 +51,12 @@ 2.0.0 compile + + com.epmet + epmet-user-client + 2.0.0 + compile + diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java index 64c1d9361b..2b3abe016b 100644 --- a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java @@ -45,6 +45,8 @@ public class IssueServiceImpl implements IssueService { private GovIssueOpenFeignClient govIssueOpenFeignClient; @Autowired private LoginUserUtil loginUserUtil; + @Autowired + private EpmetUserOpenFeignClient epmetUserOpenFeignClient; /** * @param issueDetail @@ -62,13 +64,7 @@ public class IssueServiceImpl implements IssueService { return issueDetailResult; } BeanUtils.copyProperties(issueResult, issueDetailResult); - //话题发起人 - IssueInitiatorFormDTO initiatorFormDTO = new IssueInitiatorFormDTO(); - initiatorFormDTO.setUserId(issueResult.getUserId()); - if (!StringUtils.isBlank(issueResult.getUserId())) { - IssueInitiatorResultDTO initiatorResult = userFeignClient.selectIssueInitiator(initiatorFormDTO).getData(); - issueDetailResult.setIssueInitiator(initiatorResult == null ? HallConstat.NULL_CHARACTER_STRING : initiatorResult.getIssueInitiator()); - } + //网格名称 BelongGridNameFormDTO belongGridName = new BelongGridNameFormDTO(); belongGridName.setGridId(issueResult.getGridId()); @@ -79,10 +75,35 @@ public class IssueServiceImpl implements IssueService { //话题信息 TopicInfoFormDTO topicInfoFormDTO = new TopicInfoFormDTO(); topicInfoFormDTO.setTopicId(issueResult.getTopicId()); + TopicInfoDTO topicInfoDTOResult = new TopicInfoDTO(); if (!StringUtils.isBlank(issueResult.getTopicId())) { - TopicInfoDTO topicInfoDTOResult = resiGroupFeignClient.selectDetail(topicInfoFormDTO).getData(); + topicInfoDTOResult = resiGroupFeignClient.selectDetail(topicInfoFormDTO).getData(); issueDetailResult.setTopicInfo(topicInfoDTOResult == null ? new TopicInfoDTO() : topicInfoDTOResult); } + if("branch".equals(topicInfoDTOResult.getGroupType())){//支部小组话题发起人显示真实姓名 + List userIdList = new ArrayList<>(); + userIdList.add(issueResult.getUserId()); + Result> result = epmetUserOpenFeignClient.queryUserBaseInfo(userIdList); + if (!result.success()) { + throw new RenException("调用user服务,获取用户基础数据失败"); + } + List resultDTOList = result.getData(); + resultDTOList.forEach(re->{ + if(issueResult.getUserId().equals(re.getUserId())){ + //话题发起人 + issueDetailResult.setIssueInitiator(re.getRealName() == null ? "" : re.getRealName()); + } + }); + } else { + //话题发起人 + IssueInitiatorFormDTO initiatorFormDTO = new IssueInitiatorFormDTO(); + initiatorFormDTO.setUserId(issueResult.getUserId()); + if (!StringUtils.isBlank(issueResult.getUserId())) { + IssueInitiatorResultDTO initiatorResult = userFeignClient.selectIssueInitiator(initiatorFormDTO).getData(); + issueDetailResult.setIssueInitiator(initiatorResult == null ? HallConstat.NULL_CHARACTER_STRING : initiatorResult.getIssueInitiator()); + } + } + //判断是否投票 CheckVoteFormDTO formDTO = new CheckVoteFormDTO(); formDTO.setIssueId(issueDetail.getIssueId()); diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java index 08e0113ace..8b5a7d7a81 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/IssueInitiatorResultDTO.java @@ -16,5 +16,9 @@ public class IssueInitiatorResultDTO implements Serializable { * 议题发起人(山东路168-尹女士) */ private String issueInitiator; + /** + * 议题发起人真实姓名 + */ + private String realUserName; } diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml index 1dca8f531b..1f585c1ab6 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/UserResiInfoDao.xml @@ -142,13 +142,20 @@ '-', uri.surname, CASE - WHEN uw.sex = '1' THEN - '先生' - WHEN uw.sex = '2' THEN - '女士' - ELSE '先生/女士' - END - ) AS issueInitiator + WHEN uw.sex = '1' THEN + '先生' + WHEN uw.sex = '2' THEN + '女士' + ELSE + '先生/女士' + END + ) AS issueInitiator, + CONCAT( + uri.street, + '-', + uri.surname, + uriNAME + ) AS realUserName FROM user_resi_info uri LEFT JOIN user_wechat uw ON uw.user_id = uri.user_id