From 19cb6936e7cc8580b49a6d534b388072ebfb99c7 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 13 Nov 2020 17:20:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=88=91=E5=88=9B=E5=BB=BA=E7=9A=84=E8=AF=9D?= =?UTF-8?q?=E9=A2=98=E8=A2=AB=E8=BD=AC=E6=88=90=E8=AE=AE=E9=A2=98=E5=88=97?= =?UTF-8?q?=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/form/MyShiftIssueTopicsFormDTO.java | 38 ++++++++++++++++ .../result/MyShiftIssueTopicsResultDTO.java | 43 +++++++++++++++++++ .../epmet/feign/GovIssueOpenFeignClient.java | 11 +++++ .../GovIssueOpenFeignClientFallBack.java | 7 +++ .../com/epmet/controller/IssueController.java | 12 ++++++ .../src/main/java/com/epmet/dao/IssueDao.java | 9 ++++ .../java/com/epmet/service/IssueService.java | 10 +++++ .../epmet/service/impl/IssueServiceImpl.java | 34 +++++++++++++++ .../src/main/resources/mapper/IssueDao.xml | 19 ++++++++ .../dto/topic/form/TopicIdListFormDTO.java | 14 ++++++ .../group/feign/ResiGroupOpenFeignClient.java | 10 +++++ .../ResiGroupOpenFeignClientFallback.java | 6 +++ .../topic/controller/ResiTopicController.java | 11 +++++ .../epmet/modules/topic/dao/ResiTopicDao.java | 9 ++++ .../topic/service/ResiTopicService.java | 9 +++- .../service/impl/ResiTopicServiceImpl.java | 11 +++++ .../resources/mapper/topic/ResiTopicDao.xml | 12 ++++++ .../dto/from/MyShiftIssueTopicsFormDTO.java | 38 ++++++++++++++++ .../result/MyShiftIssueTopicsResultDTO.java | 41 ++++++++++++++++++ .../person/controller/TopicController.java | 15 +++++++ .../modules/person/service/TopicService.java | 12 ++++++ .../person/service/impl/TopicServiceImpl.java | 29 +++++++++++++ 22 files changed, 399 insertions(+), 1 deletion(-) create mode 100644 epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/MyShiftIssueTopicsFormDTO.java create mode 100644 epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/MyShiftIssueTopicsResultDTO.java create mode 100644 epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicIdListFormDTO.java create mode 100644 epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/from/MyShiftIssueTopicsFormDTO.java create mode 100644 epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/result/MyShiftIssueTopicsResultDTO.java diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/MyShiftIssueTopicsFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/MyShiftIssueTopicsFormDTO.java new file mode 100644 index 0000000000..3340fc7d91 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/MyShiftIssueTopicsFormDTO.java @@ -0,0 +1,38 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2020/11/13 3:30 下午 + */ +@Data +public class MyShiftIssueTopicsFormDTO implements Serializable { + + private static final long serialVersionUID = -3943178729586797400L; + + public interface MyShiftIssueTopics{} + + /** + * 页码 + */ + @NotNull(message = "页码不能为空",groups = {MyShiftIssueTopics.class}) + private Integer pageNo; + + /** + * 每页数量 + */ + @NotNull(message = "每页数量不能为空",groups = {MyShiftIssueTopics.class}) + private Integer pageSize; + + + @NotBlank(message = "客户ID不能为空",groups = {MyShiftIssueTopics.class}) + private String customerId; + + private String userId; + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/MyShiftIssueTopicsResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/MyShiftIssueTopicsResultDTO.java new file mode 100644 index 0000000000..cf4951a35a --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/MyShiftIssueTopicsResultDTO.java @@ -0,0 +1,43 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2020/11/13 3:31 下午 + */ +@Data +public class MyShiftIssueTopicsResultDTO implements Serializable { + + private static final long serialVersionUID = -703102629653169023L; + + /** + * 话题ID + */ + private String topicId; + + /** + * 转议题时间 + */ + private Long shiftIssueTime; + + /** + * 建议 + */ + private String suggestion; + + /** + * 议题标题 + */ + private String issueTitle; + + /** + * 话题发表网格名称 + */ + private String releaseGridName; + + private String gridId; + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java index 9e01905c9e..f30a67b891 100644 --- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java @@ -8,6 +8,8 @@ import com.epmet.dto.form.MyPubIssuesAuditingFormDTO; import com.epmet.dto.result.MyPartIssuesResultDTO; import com.epmet.dto.result.MyPubIssuesAuditingResultDTO; import com.epmet.feign.fallback.GovIssueOpenFeignClientFallBack; +import com.epmet.resi.mine.dto.from.MyShiftIssueTopicsFormDTO; +import com.epmet.resi.mine.dto.result.MyShiftIssueTopicsResultDTO; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.PostMapping; @@ -53,4 +55,13 @@ public interface GovIssueOpenFeignClient { **/ @PostMapping(value = "/gov/issue/issue/getmypubissues", consumes = MediaType.APPLICATION_JSON_VALUE) Result> getMyPubIssues(@RequestBody MyPubIssuesAuditingFormDTO formDTO); + + /** + * @Description 个人中心-我发表的话题列表-已转议题列表 + * @Param myShiftIssueTopicsFormDTO + * @author zxc + * @date 2020/11/13 4:58 下午 + */ + @PostMapping("/gov/issue/issue/shiftissuetopic") + Result> myShiftIssueTopics(@RequestBody MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO); } diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java index 0a33c50234..8fa91ff4f7 100644 --- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java @@ -9,6 +9,8 @@ import com.epmet.dto.form.MyPubIssuesAuditingFormDTO; import com.epmet.dto.result.MyPartIssuesResultDTO; import com.epmet.dto.result.MyPubIssuesAuditingResultDTO; import com.epmet.feign.GovIssueOpenFeignClient; +import com.epmet.resi.mine.dto.from.MyShiftIssueTopicsFormDTO; +import com.epmet.resi.mine.dto.result.MyShiftIssueTopicsResultDTO; import org.springframework.stereotype.Component; import java.util.List; @@ -35,4 +37,9 @@ public class GovIssueOpenFeignClientFallBack implements GovIssueOpenFeignClient public Result> getMyPubIssues(MyPubIssuesAuditingFormDTO formDTO) { return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER,"getMyPubIssues",formDTO); } + + @Override + public Result> myShiftIssueTopics(MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER,"myShiftIssueTopics",myShiftIssueTopicsFormDTO); + } } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java index 6db4e14b23..f15de6e623 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java @@ -167,5 +167,17 @@ public class IssueController { ValidatorUtils.validateEntity(formDTO); return new Result>().ok(issueService.getMyPubIssues(formDTO)); } + + /** + * @Description 个人中心-我发表的话题列表-已转议题列表 + * @Param myShiftIssueTopicsFormDTO + * @author zxc + * @date 2020/11/13 4:58 下午 + */ + @PostMapping("shiftissuetopic") + public Result> myShiftIssueTopics(@RequestBody MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO){ + ValidatorUtils.validateEntity(myShiftIssueTopicsFormDTO, MyShiftIssueTopicsFormDTO.MyShiftIssueTopics.class); + return new Result>().ok(issueService.myShiftIssueTopics(myShiftIssueTopicsFormDTO)); + } } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java index f396db4136..a39266ee76 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java @@ -167,4 +167,13 @@ public interface IssueDao extends BaseDao { @Param("pageSize") Integer pageSize, @Param("userId") String userId, @Param("issueStatus") String issueStatus); + + /** + * @Description 个人中心-我发表的话题列表-已转议题列表 + * @Param tokenDto + * @Param myShiftIssueTopicsResultDTO + * @author zxc + * @date 2020/11/13 3:42 下午 + */ + List myShiftIssueTopics(@Param("topicIds") List topicIds,@Param("customerId") String customerId); } \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java index 404549f119..ea8a572ef5 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java @@ -235,4 +235,14 @@ public interface IssueService extends BaseService { * @Date 2020/11/11 14:57 **/ List getMyPubIssues(MyPubIssuesAuditingFormDTO formDTO); + + /** + * @Description 个人中心-我发表的话题列表-已转议题列表 + * @Param tokenDto + * @Param myShiftIssueTopicsResultDTO + * @author zxc + * @date 2020/11/13 3:42 下午 + */ + List myShiftIssueTopics(MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO); + } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java index 54fdfd4908..6a7f5bd0c2 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java @@ -39,6 +39,7 @@ import com.epmet.resi.group.dto.group.form.GroupInfoFormDTO; import com.epmet.resi.group.dto.group.result.GroupInfoResultDTO; import com.epmet.resi.group.dto.topic.ResiTopicDTO; import com.epmet.resi.group.dto.topic.form.GovTopicIssueInfoFormDTO; +import com.epmet.resi.group.dto.topic.form.TopicIdListFormDTO; import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO; import com.epmet.resi.group.dto.topic.result.GovTopicIssueInfoResultDTO; import com.epmet.resi.group.feign.ResiGroupOpenFeignClient; @@ -893,4 +894,37 @@ public class IssueServiceImpl extends BaseServiceImpl imp return baseDao.selectMyPubIssues(formDTO.getPageNo(),formDTO.getPageSize(),formDTO.getUserId(),formDTO.getIssueStatus()); } + /** + * @Description 个人中心-我发表的话题列表-已转议题列表 + * @Param tokenDto + * @Param myShiftIssueTopicsResultDTO + * @author zxc + * @date 2020/11/13 3:42 下午 + */ + @Override + public List myShiftIssueTopics(MyShiftIssueTopicsFormDTO form) { + TopicIdListFormDTO formDTO = new TopicIdListFormDTO(); + formDTO.setUserId(form.getUserId()); + Result> listResult = resiGroupOpenFeignClient.selectMyCreateTopic(formDTO); + if (!listResult.success()){ + throw new RenException("查询我创建的话题失败......"); + } + if(CollectionUtils.isEmpty(listResult.getData())){ + logger.error("查询我创建的话题集合为空"); + return new ArrayList<>(); + } + List topicIds = listResult.getData(); + PageInfo resultPage = PageHelper.startPage(form.getPageNo(), form.getPageSize()).doSelectPageInfo(() -> baseDao.myShiftIssueTopics(topicIds, form.getCustomerId())); + if (CollectionUtils.isEmpty(resultPage.getList())){ + return new ArrayList<>(); + } + List result = resultPage.getList(); + Result> gridListByGridIds = govOrgOpenFeignClient.getGridListByGridIds(result.stream().map(m -> m.getGridId()).collect(Collectors.toList())); + if (!gridListByGridIds.success()){ + throw new RenException("查询话题所属网格名称失败......"); + } + result.forEach(r -> gridListByGridIds.getData().stream().filter(f -> r.getGridId().equals(f.getGridId())).forEach(f -> r.setReleaseGridName(f.getGridName()))); + return result; + } + } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml index b68ac683ed..3ac7bf2bc5 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml @@ -421,4 +421,23 @@ LIMIT #{pageNo}, #{pageSize} + + + \ No newline at end of file diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicIdListFormDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicIdListFormDTO.java new file mode 100644 index 0000000000..9ee2ddce8c --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicIdListFormDTO.java @@ -0,0 +1,14 @@ +package com.epmet.resi.group.dto.topic.form; + +import lombok.Data; + +/** + * @Author zxc + * @DateTime 2020/11/13 4:27 下午 + */ +@Data +public class TopicIdListFormDTO{ + + private String userId; + +} diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/ResiGroupOpenFeignClient.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/ResiGroupOpenFeignClient.java index 4355adc40f..ba705a5893 100644 --- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/ResiGroupOpenFeignClient.java +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/ResiGroupOpenFeignClient.java @@ -6,6 +6,7 @@ import com.epmet.resi.group.dto.group.form.GroupInfoFormDTO; import com.epmet.resi.group.dto.group.result.GroupInfoResultDTO; import com.epmet.resi.group.dto.topic.MyCreateTopicsFormDTO; import com.epmet.resi.group.dto.topic.form.CustomerPageFormDTO; +import com.epmet.resi.group.dto.topic.form.TopicIdListFormDTO; import com.epmet.resi.group.dto.topic.result.IssueGridResultDTO; import com.epmet.resi.group.dto.topic.result.MyCreateTopicsResultDTO; import com.epmet.resi.group.dto.topic.result.ParticipatedTopicUnitResultDTO; @@ -61,4 +62,13 @@ public interface ResiGroupOpenFeignClient { */ @PostMapping("resi/group/topic/my-create-topics") Result> listMyCreateTopics(@RequestBody MyCreateTopicsFormDTO formDTO); + + /** + * @Description 查询我创建的话题 + * @Param topicIdListFormDTO + * @author zxc + * @date 2020/11/13 4:32 下午 + */ + @PostMapping("resi/group/topic/select-my-create-topic") + Result> selectMyCreateTopic(@RequestBody TopicIdListFormDTO topicIdListFormDTO); } diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/fallback/ResiGroupOpenFeignClientFallback.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/fallback/ResiGroupOpenFeignClientFallback.java index cf9833816f..636acafb0e 100644 --- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/fallback/ResiGroupOpenFeignClientFallback.java +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/fallback/ResiGroupOpenFeignClientFallback.java @@ -7,6 +7,7 @@ import com.epmet.resi.group.dto.group.form.GroupInfoFormDTO; import com.epmet.resi.group.dto.group.result.GroupInfoResultDTO; import com.epmet.resi.group.dto.topic.MyCreateTopicsFormDTO; import com.epmet.resi.group.dto.topic.form.CustomerPageFormDTO; +import com.epmet.resi.group.dto.topic.form.TopicIdListFormDTO; import com.epmet.resi.group.dto.topic.result.IssueGridResultDTO; import com.epmet.resi.group.dto.topic.result.ParticipatedTopicUnitResultDTO; import com.epmet.resi.group.feign.ResiGroupOpenFeignClient; @@ -43,4 +44,9 @@ public class ResiGroupOpenFeignClientFallback implements ResiGroupOpenFeignClien public Result listMyCreateTopics(MyCreateTopicsFormDTO formDTO) { return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "listMyTopics", formDTO); } + + @Override + public Result> selectMyCreateTopic(TopicIdListFormDTO topicIdListFormDTO) { + return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "selectMyCreateTopic", topicIdListFormDTO); + } } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java index 6dfc1a834f..4c7d08ba93 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java @@ -285,5 +285,16 @@ public class ResiTopicController { return new Result>().ok(topicService.getParticipatedTopics(param)); } + /** + * @Description 查询我创建的话题 + * @Param topicIdListFormDTO + * @author zxc + * @date 2020/11/13 4:32 下午 + */ + @PostMapping("select-my-create-topic") + public Result> selectMyCreateTopic(@RequestBody TopicIdListFormDTO topicIdListFormDTO){ + return new Result>().ok(topicService.selectMyCreateTopic(topicIdListFormDTO)); + } + } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java index c1423b36dd..701661cac4 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java @@ -24,6 +24,7 @@ import com.epmet.resi.group.dto.topic.ResiTopicDTO; import com.epmet.resi.group.dto.topic.TopicInfoDTO; import com.epmet.resi.group.dto.topic.form.CheckTopicPublisherFormDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO; +import com.epmet.resi.group.dto.topic.form.TopicIdListFormDTO; import com.epmet.resi.group.dto.topic.result.*; import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO; import org.apache.ibatis.annotations.Mapper; @@ -170,4 +171,12 @@ public interface ResiTopicDao extends BaseDao { * @date 2020.11.11 23:08 */ List selectParticipatedTopics(@Param("customerId") String customerId,@Param("userId") String userId); + + /** + * @Description 查询我创建的话题 + * @Param topicIdListFormDTO + * @author zxc + * @date 2020/11/13 4:32 下午 + */ + List selectMyCreateTopic(TopicIdListFormDTO topicIdListFormDTO); } \ No newline at end of file diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java index 35ea013b11..dbd533439e 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java @@ -30,7 +30,6 @@ import com.epmet.resi.group.dto.topic.ResiTopicDTO; import com.epmet.resi.group.dto.topic.TopicInfoDTO; import com.epmet.resi.group.dto.topic.form.*; import com.epmet.resi.group.dto.topic.result.*; -import org.springframework.web.bind.annotation.RequestBody; import java.util.List; @@ -280,4 +279,12 @@ public interface ResiTopicService extends BaseService { * @date 2020.11.11 23:20 */ List getParticipatedTopics(CustomerPageFormDTO param); + + /** + * @Description 查询我创建的话题 + * @Param topicIdListFormDTO + * @author zxc + * @date 2020/11/13 4:32 下午 + */ + List selectMyCreateTopic(TopicIdListFormDTO topicIdListFormDTO); } \ No newline at end of file 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 6ce2433c37..a589c6e42a 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 @@ -1465,6 +1465,17 @@ public class ResiTopicServiceImpl extends BaseServiceImpl selectMyCreateTopic(TopicIdListFormDTO topicIdListFormDTO) { + return baseDao.selectMyCreateTopic(topicIdListFormDTO); + } } 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 04b2bb0e10..db2d2f5fdb 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 @@ -495,5 +495,17 @@ AND topic.created_by ]]> #{userId} ORDER BY topic.created_time desc + + + diff --git a/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/from/MyShiftIssueTopicsFormDTO.java b/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/from/MyShiftIssueTopicsFormDTO.java new file mode 100644 index 0000000000..e4667c1ca7 --- /dev/null +++ b/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/from/MyShiftIssueTopicsFormDTO.java @@ -0,0 +1,38 @@ +package com.epmet.resi.mine.dto.from; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2020/11/13 3:30 下午 + */ +@Data +public class MyShiftIssueTopicsFormDTO implements Serializable { + + private static final long serialVersionUID = -3943178729586797400L; + + public interface MyShiftIssueTopics{} + + /** + * 页码 + */ + @NotNull(message = "页码不能为空",groups = {MyShiftIssueTopics.class}) + private Integer pageNo; + + /** + * 每页数量 + */ + @NotNull(message = "每页数量不能为空",groups = {MyShiftIssueTopics.class}) + private Integer pageSize; + + + @NotBlank(message = "客户ID不能为空",groups = {MyShiftIssueTopics.class}) + private String customerId; + + private String userId; + +} diff --git a/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/result/MyShiftIssueTopicsResultDTO.java b/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/result/MyShiftIssueTopicsResultDTO.java new file mode 100644 index 0000000000..933cfc2967 --- /dev/null +++ b/epmet-module/resi-mine/resi-mine-client/src/main/java/com/epmet/resi/mine/dto/result/MyShiftIssueTopicsResultDTO.java @@ -0,0 +1,41 @@ +package com.epmet.resi.mine.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2020/11/13 3:31 下午 + */ +@Data +public class MyShiftIssueTopicsResultDTO implements Serializable { + + private static final long serialVersionUID = -703102629653169023L; + + /** + * 话题ID + */ + private String topicId; + + /** + * 转议题时间 + */ + private Long shiftIssueTime; + + /** + * 建议 + */ + private String suggestion; + + /** + * 议题标题 + */ + private String issueTitle; + + /** + * 话题发表网格名称 + */ + private String releaseGridName; + +} diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/person/controller/TopicController.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/person/controller/TopicController.java index 6e79e8f11a..8ffdbeb5ea 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/person/controller/TopicController.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/person/controller/TopicController.java @@ -9,8 +9,10 @@ import com.epmet.resi.group.dto.topic.form.CustomerPageFormDTO; import com.epmet.resi.group.dto.topic.result.ParticipatedTopicUnitResultDTO; import com.epmet.resi.group.feign.ResiGroupOpenFeignClient; import com.epmet.resi.mine.dto.from.MyCreateTopicsFormDTO; +import com.epmet.resi.mine.dto.from.MyShiftIssueTopicsFormDTO; import com.epmet.resi.mine.dto.from.MyShiftProjectTopicsFormDTO; import com.epmet.resi.mine.dto.result.MyCreateTopicsResultDTO; +import com.epmet.resi.mine.dto.result.MyShiftIssueTopicsResultDTO; import com.epmet.resi.mine.dto.result.MyShiftProjectTopicsResultDTO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; @@ -76,4 +78,17 @@ public class TopicController { return new Result>().ok(topics); } + /** + * @Description 个人中心-我发表的话题列表-已转议题列表 + * @Param tokenDto + * @Param myShiftIssueTopicsFormDTO + * @author zxc + * @date 2020/11/13 3:42 下午 + */ + @PostMapping("my-shiftissue-topics") + public Result> myShiftIssueTopics(@LoginUser TokenDto tokenDto, @RequestBody MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO){ + ValidatorUtils.validateEntity(myShiftIssueTopicsFormDTO, MyShiftIssueTopicsFormDTO.MyShiftIssueTopics.class); + return new Result>().ok(topicService.myShiftIssueTopics(tokenDto,myShiftIssueTopicsFormDTO)); + } + } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/person/service/TopicService.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/person/service/TopicService.java index 80fabace7b..1f920dc64b 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/person/service/TopicService.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/person/service/TopicService.java @@ -1,6 +1,9 @@ package com.epmet.modules.person.service; +import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.resi.mine.dto.from.MyShiftIssueTopicsFormDTO; import com.epmet.resi.mine.dto.result.MyCreateTopicsResultDTO; +import com.epmet.resi.mine.dto.result.MyShiftIssueTopicsResultDTO; import com.epmet.resi.mine.dto.result.MyShiftProjectTopicsResultDTO; import java.util.List; @@ -24,4 +27,13 @@ public interface TopicService { * @date 2020.11.13 15:00 */ List listMyCreateTopics(String customerId, String userId, Integer pageNo, Integer pageSize); + + /** + * @Description 个人中心-我发表的话题列表-已转议题列表 + * @Param tokenDto + * @Param myShiftIssueTopicsResultDTO + * @author zxc + * @date 2020/11/13 3:42 下午 + */ + List myShiftIssueTopics(TokenDto tokenDto, MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO); } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/person/service/impl/TopicServiceImpl.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/person/service/impl/TopicServiceImpl.java index 8799527751..fbedfd388c 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/person/service/impl/TopicServiceImpl.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/person/service/impl/TopicServiceImpl.java @@ -1,23 +1,29 @@ package com.epmet.modules.person.service.impl; import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.form.ProjectByCreateTopicUserFormDTO; import com.epmet.dto.result.AllGridsByUserIdResultDTO; import com.epmet.dto.result.ProjectOfCreateTopicUserResultDTO; +import com.epmet.feign.GovIssueOpenFeignClient; import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.feign.GovProjectOpenFeignClient; import com.epmet.modules.person.service.TopicService; import com.epmet.resi.group.dto.topic.MyCreateTopicsFormDTO; import com.epmet.resi.group.feign.ResiGroupOpenFeignClient; +import com.epmet.resi.mine.dto.from.MyShiftIssueTopicsFormDTO; import com.epmet.resi.mine.dto.result.MyCreateTopicsResultDTO; +import com.epmet.resi.mine.dto.result.MyShiftIssueTopicsResultDTO; import com.epmet.resi.mine.dto.result.MyShiftProjectTopicsResultDTO; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.stream.Collectors; @@ -36,6 +42,9 @@ public class TopicServiceImpl implements TopicService { @Autowired private ResiGroupOpenFeignClient resiGroupOpenFeignClient; + @Autowired + private GovIssueOpenFeignClient govIssueOpenFeignClient; + @Override public List listMyShiftProjectTopics(String userId, String customerId, Integer pageNo, Integer pageSize) { ProjectByCreateTopicUserFormDTO form = new ProjectByCreateTopicUserFormDTO(); @@ -80,4 +89,24 @@ public class TopicServiceImpl implements TopicService { List topics = result.getData(); return ConvertUtils.sourceToTarget(topics, MyCreateTopicsResultDTO.class); } + + /** + * @Description 个人中心-我发表的话题列表-已转议题列表 + * @Param tokenDto + * @Param myShiftIssueTopicsResultDTO + * @author zxc + * @date 2020/11/13 3:42 下午 + */ + @Override + public List myShiftIssueTopics(TokenDto tokenDto, MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO) { + myShiftIssueTopicsFormDTO.setUserId(tokenDto.getUserId()); + Result> listResult = govIssueOpenFeignClient.myShiftIssueTopics(myShiftIssueTopicsFormDTO); + if (!listResult.success()){ + throw new RenException("查询我发表的话题列表-已转议题列表失败......"); + } + if (CollectionUtils.isEmpty(listResult.getData())){ + return new ArrayList<>(); + } + return listResult.getData(); + } }