From b2a424fa6b83908366142b29d83ddb2f05a734f1 Mon Sep 17 00:00:00 2001 From: liuchuang Date: Thu, 7 Nov 2019 15:44:02 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AF=9D=E9=A2=98=E8=AF=A6=E6=83=85=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=20init?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epdc/controller/ApiTopicController.java | 20 ++++- .../esua/epdc/feign/TopicFeignClient.java | 15 ++++ .../fallback/TopicFeignClientFallback.java | 6 ++ .../elink/esua/epdc/service/TopicService.java | 12 +++ .../epdc/service/impl/TopicServiceImpl.java | 6 ++ .../topic/result/TopicDetailResultDTO.java | 78 +++++++++++++++++++ .../topic/controller/AppTopicController.java | 21 ++++- .../modules/topic/dao/TopicDao.java | 12 +++ .../modules/topic/service/TopicService.java | 12 +++ .../topic/service/impl/TopicServiceImpl.java | 6 ++ .../main/resources/mapper/topic/TopicDao.xml | 55 +++++++++++++ 11 files changed, 235 insertions(+), 8 deletions(-) create mode 100644 esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/topic/result/TopicDetailResultDTO.java diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiTopicController.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiTopicController.java index 23869a8b3..6c8a4a68b 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiTopicController.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiTopicController.java @@ -5,12 +5,10 @@ import com.elink.esua.epdc.commons.tools.annotation.LoginUser; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; import com.elink.esua.epdc.dto.topic.form.TopicSubmitFormDTO; +import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO; import com.elink.esua.epdc.service.TopicService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; /** * @@ -40,4 +38,18 @@ public class ApiTopicController { ValidatorUtils.validateEntity(formDto); return topicService.saveTopic(userDetail, formDto); } + + /** + * + * 话题详情 + * + * @params [id] + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author liuchuang + * @since 2019/11/7 15:37 + */ + @GetMapping("detail/{id}") + public Result detail(@PathVariable("id") String id) { + return topicService.getTopicDetailById(id); + } } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/TopicFeignClient.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/TopicFeignClient.java index 22a620349..095719792 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/TopicFeignClient.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/TopicFeignClient.java @@ -3,9 +3,12 @@ package com.elink.esua.epdc.feign; import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.topic.form.TopicSubmitFormDTO; +import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO; import com.elink.esua.epdc.feign.fallback.TopicFeignClientFallback; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; /** @@ -29,4 +32,16 @@ public interface TopicFeignClient { */ @PostMapping(value = "group/epdc-app/topic/submit", consumes = MediaType.APPLICATION_JSON_VALUE) Result submit(TopicSubmitFormDTO formDto); + + /** + * + * 话题详情 + * + * @params [id] + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author liuchuang + * @since 2019/11/7 15:37 + */ + @GetMapping(value = "group/epdc-app/topic/detail/{id}", consumes = MediaType.APPLICATION_JSON_VALUE) + Result detail(@PathVariable("id") String id); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/TopicFeignClientFallback.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/TopicFeignClientFallback.java index 0301eec04..8e4ce186c 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/TopicFeignClientFallback.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/TopicFeignClientFallback.java @@ -4,6 +4,7 @@ import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.utils.ModuleUtils; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.topic.form.TopicSubmitFormDTO; +import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO; import com.elink.esua.epdc.feign.TopicFeignClient; import org.springframework.stereotype.Component; @@ -18,4 +19,9 @@ public class TopicFeignClientFallback implements TopicFeignClient { public Result submit(TopicSubmitFormDTO formDto) { return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "submit", formDto); } + + @Override + public Result detail(String id) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "detail", id); + } } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/TopicService.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/TopicService.java index a7e19c453..45a6d6b95 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/TopicService.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/TopicService.java @@ -3,6 +3,7 @@ package com.elink.esua.epdc.service; import com.elink.esua.epdc.common.token.dto.TokenDto; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.topic.form.TopicSubmitFormDTO; +import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO; /** * @@ -23,4 +24,15 @@ public interface TopicService { * @since 2019/11/6 14:51 */ Result saveTopic(TokenDto userDetail, TopicSubmitFormDTO formDto); + + /** + * + * 移动端-话题详情 + * + * @params [id] + * @return com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO + * @author liuchuang + * @since 2019/11/7 15:34 + */ + Result getTopicDetailById(String id); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/TopicServiceImpl.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/TopicServiceImpl.java index e2e4efe77..a3e005d0b 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/TopicServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/TopicServiceImpl.java @@ -5,6 +5,7 @@ import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.CompleteDeptDTO; import com.elink.esua.epdc.dto.enums.TopicStateEnum; import com.elink.esua.epdc.dto.topic.form.TopicSubmitFormDTO; +import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO; import com.elink.esua.epdc.feign.AdminFeignClient; import com.elink.esua.epdc.feign.TopicFeignClient; import com.elink.esua.epdc.service.TopicService; @@ -53,4 +54,9 @@ public class TopicServiceImpl implements TopicService { return topicFeignClient.submit(formDto); } + + @Override + public Result getTopicDetailById(String id) { + return topicFeignClient.detail(id); + } } diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/topic/result/TopicDetailResultDTO.java b/esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/topic/result/TopicDetailResultDTO.java new file mode 100644 index 000000000..238e80e89 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/topic/result/TopicDetailResultDTO.java @@ -0,0 +1,78 @@ +package com.elink.esua.epdc.dto.topic.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * + * 话题详情 + * + * @Author:liuchuang + * @Date:2019/11/7 15:25 + */ +@Data +public class TopicDetailResultDTO implements Serializable { + private static final long serialVersionUID = -4978924751646345443L; + + /** + * 话题ID + */ + private String id; + + /** + * 话题内容 + */ + private String topicContent; + + /** + * 话题地址 + */ + private String topicAddress; + + /** + * 发布时间 + */ + private String createdTime; + + /** + * 发布人 + */ + private String nickname; + + /** + * 发布人头像 + */ + private String userAvatar; + + /** + * 党员标识(0-否,1-是) + */ + private String partyMember; + + /** + * 浏览数 + */ + private Integer browseNum; + + /** + * 是否可操作(true 可评、赞等) + */ + private Boolean operationalFlag; + + /** + * 是否可关闭(true 可以) + */ + private Boolean closeFlag; + + /** + * 是否可转议题(true 可以) + */ + private Boolean changeFlag; + + /** + * 图片 + */ + private List images; +} diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/controller/AppTopicController.java b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/controller/AppTopicController.java index 100284db9..6c885920e 100644 --- a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/controller/AppTopicController.java +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/controller/AppTopicController.java @@ -3,12 +3,10 @@ package com.elink.esua.epdc.modules.topic.controller; import com.elink.esua.epdc.commons.tools.constant.Constant; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.topic.form.TopicSubmitFormDTO; +import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO; import com.elink.esua.epdc.modules.topic.service.TopicService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; /** * @@ -37,4 +35,19 @@ public class AppTopicController { public Result submit(@RequestBody TopicSubmitFormDTO formDto) { return topicService.saveTopic(formDto); } + + /** + * + * 话题详情 + * + * @params [id] + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author liuchuang + * @since 2019/11/7 15:37 + */ + @GetMapping("detail/{id}") + public Result detail(@PathVariable("id") String id) { + TopicDetailResultDTO data = topicService.getTopicDetailById(id); + return new Result().ok(data); + } } diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/dao/TopicDao.java b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/dao/TopicDao.java index 86adc36fb..798665ada 100644 --- a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/dao/TopicDao.java +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/dao/TopicDao.java @@ -18,6 +18,7 @@ package com.elink.esua.epdc.modules.topic.dao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; +import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO; import com.elink.esua.epdc.modules.topic.entity.TopicEntity; import org.apache.ibatis.annotations.Mapper; @@ -35,4 +36,15 @@ public interface TopicDao extends BaseDao { */ void updateCommentNum(String id); + /** + * + * 移动端-话题详情 + * + * @params [id] + * @return com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO + * @author liuchuang + * @since 2019/11/7 15:32 + */ + TopicDetailResultDTO selectOneOfTopicDetailById(String id); + } diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/TopicService.java b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/TopicService.java index 8c485067d..9dd9855db 100644 --- a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/TopicService.java +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/TopicService.java @@ -22,6 +22,7 @@ import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.topic.TopicDTO; import com.elink.esua.epdc.dto.topic.form.TopicSubmitFormDTO; +import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO; import com.elink.esua.epdc.modules.topic.entity.TopicEntity; import java.util.List; @@ -111,4 +112,15 @@ public interface TopicService extends BaseService { * @since 2019/11/6 15:53 */ Result saveTopic(TopicSubmitFormDTO formDto); + + /** + * + * 移动端-话题详情 + * + * @params [id] + * @return com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO + * @author liuchuang + * @since 2019/11/7 15:34 + */ + TopicDetailResultDTO getTopicDetailById(String id); } diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/impl/TopicServiceImpl.java b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/impl/TopicServiceImpl.java index 8433757ce..825c8948c 100644 --- a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/impl/TopicServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/impl/TopicServiceImpl.java @@ -27,6 +27,7 @@ import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.constant.TopicImageConstant; import com.elink.esua.epdc.dto.topic.TopicDTO; import com.elink.esua.epdc.dto.topic.form.TopicSubmitFormDTO; +import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO; import com.elink.esua.epdc.modules.topic.dao.TopicDao; import com.elink.esua.epdc.modules.topic.entity.TopicEntity; import com.elink.esua.epdc.modules.topic.service.TopicImgService; @@ -121,4 +122,9 @@ public class TopicServiceImpl extends BaseServiceImpl imp return new Result().error(); } + @Override + public TopicDetailResultDTO getTopicDetailById(String id) { + return baseDao.selectOneOfTopicDetailById(id); + } + } diff --git a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/topic/TopicDao.xml b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/topic/TopicDao.xml index 57b2b51ee..6b8db72cc 100644 --- a/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/topic/TopicDao.xml +++ b/esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/topic/TopicDao.xml @@ -8,5 +8,60 @@ UPDATE epdc_topic SET COMMENT_NUM = COMMENT_NUM + 1 WHERE ID = #{id} + + + + + + + + + + + + + + + + + +