From 18b4472e953113523d74bfcfa2b95eb67c58e65f Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Tue, 27 Apr 2021 16:09:00 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E8=AE=AE=E9=A2=98=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E6=B6=89=E5=8F=8A=E8=AF=9D=E9=A2=98=E4=BA=BA=E8=AE=AE=E9=A2=98?= =?UTF-8?q?=E4=BA=BA=E6=8C=89=E7=BB=84=E7=B1=BB=E5=9E=8B=E8=BF=94=E4=BA=BA?= =?UTF-8?q?=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 From 306ab61657b8bd16fbb653061b3db4cab8782b5f Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Tue, 27 Apr 2021 16:10:30 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=BE=85=E5=AE=A1=E6=A0=B8=EF=BC=8C?= =?UTF-8?q?=E5=B7=B2=E9=A9=B3=E5=9B=9E=E8=AE=AE=E9=A2=98=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/group/result/TopicInfoResultDTO.java | 2 ++ .../service/impl/GroupIssueServiceImpl.java | 33 +++++++++++++++---- .../service/impl/ResiTopicServiceImpl.java | 1 + .../resources/mapper/group/ResiGroupDao.xml | 4 ++- .../epmet/dto/result/UserInfoResultDTO.java | 5 +++ 5 files changed, 38 insertions(+), 7 deletions(-) diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/TopicInfoResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/TopicInfoResultDTO.java index 49ec851463..9830571222 100644 --- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/TopicInfoResultDTO.java +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/TopicInfoResultDTO.java @@ -47,6 +47,8 @@ public class TopicInfoResultDTO implements Serializable { */ private String topicPublishMobile; + private String groupId; + @JsonIgnore private String topicUserId; diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/GroupIssueServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/GroupIssueServiceImpl.java index cb5852ebfd..827fc40a5f 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/GroupIssueServiceImpl.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/GroupIssueServiceImpl.java @@ -5,14 +5,12 @@ import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.form.IssueAppQueryFormDTO; import com.epmet.dto.form.IssueApplicationIdFormDTO; -import com.epmet.dto.result.AllGridsByUserIdResultDTO; -import com.epmet.dto.result.ApplicationHistoryResDTO; -import com.epmet.dto.result.IssueApplicationResDTO; -import com.epmet.dto.result.UserBaseInfoResultDTO; +import com.epmet.dto.result.*; import com.epmet.feign.EpmetUserOpenFeignClient; import com.epmet.feign.GovIssueOpenFeignClient; import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.modules.group.dao.ResiGroupDao; +import com.epmet.modules.group.entity.ResiGroupEntity; import com.epmet.modules.group.service.GroupIssueService; import com.epmet.modules.topic.service.ResiTopicService; import com.epmet.resi.group.dto.group.form.AllIssueFormDTO; @@ -20,6 +18,10 @@ import com.epmet.resi.group.dto.group.form.ApplicationDetailFormDTO; import com.epmet.resi.group.dto.group.form.ApplicationHistoryFormDTO; import com.epmet.resi.group.dto.group.form.ApplicationListFormDTO; import com.epmet.resi.group.dto.group.result.*; +import com.epmet.resi.group.dto.group.result.ApplicationDetailResultDTO; +import com.epmet.resi.group.dto.group.result.ApplicationHistoryResultDTO; +import com.epmet.resi.group.dto.group.result.ApplicationListResultDTO; +import com.epmet.resi.group.dto.group.result.TopicInfoResultDTO; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; @@ -74,7 +76,26 @@ public class GroupIssueServiceImpl implements GroupIssueService { userIds.add(data.getUserId()); TopicInfoResultDTO topicInfoResultDTO = resiGroupDao.selectTopicInfo(data.getTopicId()); userIds.add(topicInfoResultDTO.getTopicUserId()); - Result> listResult = epmetUserOpenFeignClient.queryUserBaseInfo(userIds); + // 查询小组类别 + ResiGroupEntity resiGroupEntity = resiGroupDao.selectById(topicInfoResultDTO.getGroupId()); + if (null == resiGroupEntity){ + throw new RenException("此小组信息不存在"); + } + List userInfos = resiTopicService.disPoseUserInfo(resiGroupEntity.getGroupType(), userIds); + if(CollectionUtils.isEmpty(userInfos)){ + throw new RenException("未查询到用户信息"); + } + userInfos.forEach(u -> { + if (u.getUserId().equals(data.getUserId())){ + data.setIssuePublisher(u.getReleaseUserName()); + data.setIssuePublisherMobile(u.getMobile()); + } + if (u.getUserId().equals(topicInfoResultDTO.getTopicUserId())){ + topicInfoResultDTO.setPublishedUser(u.getReleaseUserName()); + topicInfoResultDTO.setTopicPublishMobile(u.getMobile()); + } + }); + /*Result> listResult = epmetUserOpenFeignClient.queryUserBaseInfo(userIds); if (!listResult.success()){ throw new RenException("查询话题创建者,议题创建者失败......"); } @@ -87,7 +108,7 @@ public class GroupIssueServiceImpl implements GroupIssueService { topicInfoResultDTO.setPublishedUser(user.getStreet().concat("-").concat(user.getSurname()).concat(getMrOrMs(user.getGender()))); topicInfoResultDTO.setTopicPublishMobile(user.getMobile()); } - }); + });*/ List gridIds = new ArrayList<>(); gridIds.add(data.getGridId()); Result> gridListByGridIds = govOrgOpenFeignClient.getGridListByGridIds(gridIds); 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..354ab4f88b 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 @@ -2426,6 +2426,7 @@ public class ResiTopicServiceImpl extends BaseServiceImpl + @@ -466,7 +467,8 @@ rt.CREATED_BY AS topicUserId, UNIX_TIMESTAMP(rt.CREATED_TIME) AS publishedTime, rt.TOPIC_CONTENT as topicContent, - ta.ATTACHMENT_URL AS imgUrl + ta.ATTACHMENT_URL AS imgUrl, + rt.GROUP_ID FROM resi_topic rt LEFT JOIN resi_topic_attachment ta ON ta.TOPIC_ID = rt.ID WHERE rt.DEL_FLAG = '0' diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserInfoResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserInfoResultDTO.java index cccc7c04ce..0189aaa6e8 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserInfoResultDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserInfoResultDTO.java @@ -25,4 +25,9 @@ public class UserInfoResultDTO implements Serializable { * 话题发布者的头像Url */ private String releaseUserHeadPhoto; + + /** + * 手机号 + */ + private String mobile; } From cb901a57b73663ebf654741118848d00f7674040 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Tue, 27 Apr 2021 16:36:46 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=BE=85=E5=AE=A1=E6=A0=B8=EF=BC=8C?= =?UTF-8?q?=E5=B7=B2=E9=A9=B3=E5=9B=9E=20=E8=AF=9D=E9=A2=98=20=E8=AF=A6?= =?UTF-8?q?=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/TopicDraftServiceImpl.java | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/TopicDraftServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/TopicDraftServiceImpl.java index ae899e3ee9..8b800af1b5 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/TopicDraftServiceImpl.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/TopicDraftServiceImpl.java @@ -697,13 +697,29 @@ public class TopicDraftServiceImpl extends BaseServiceImpl userIds = new ArrayList<>(); + userIds.add(entity.getCreatedBy()); + List userInfos = resiTopicService.disPoseUserInfo(resiGroup.getGroupType(), userIds); + if (CollectionUtils.isEmpty(userInfos)){ + throw new RenException("未查询到用户信息"); + } + userInfos.forEach(u -> { + if (u.getUserId().equals(entity.getCreatedBy())){ + result.setReleaseUserName(u.getReleaseUserName()); + result.setReleaseUserHeadPhoto(u.getReleaseUserHeadPhoto()); + } + }); return result; }