From 9383cd46d6e51eb7a6abb188bdac02d6cde9ec3e Mon Sep 17 00:00:00 2001 From: songyunpeng Date: Thu, 11 Jun 2020 16:57:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=88=91=E7=9A=84=E8=AF=9D=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 --- .../controller/ApiPartyGroupController.java | 12 +++++ .../epdc/feign/PartyGroupFeignClient.java | 4 ++ .../PartyGroupFeignClientFallback.java | 5 ++ .../esua/epdc/service/PartyGroupService.java | 8 +++ .../service/impl/PartyGroupServiceImpl.java | 7 +++ .../epdc/dto/form/MyPartyTopicFormDTO.java | 52 +++++++++++++++++++ .../controller/AppPartyTopicController.java | 15 +++++- .../elink/esua/epdc/dao/PartyTopicDao.java | 9 ++++ .../esua/epdc/service/PartyTopicService.java | 9 ++++ .../service/impl/PartyTopicServiceImpl.java | 17 ++++++ .../main/resources/mapper/PartyTopicDao.xml | 48 +++++++++++++++++ 11 files changed, 184 insertions(+), 2 deletions(-) create mode 100644 esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/form/MyPartyTopicFormDTO.java diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiPartyGroupController.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiPartyGroupController.java index cd585b33..ebc3ca20 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiPartyGroupController.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiPartyGroupController.java @@ -77,6 +77,18 @@ public class ApiPartyGroupController { return partyGroupService.topicList(userDetail, formDto); } + /** + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @Description 我的话题 + * @Author songyunpeng + * @Date 2020/6/3 + * @Param [formDto] + **/ + @GetMapping(value = "myTopicList/list", consumes = MediaType.APPLICATION_JSON_VALUE) + Result myTopicList(@LoginUser TokenDto userDetail, MyPartyTopicFormDTO formDto) { + return partyGroupService.myTopicList(userDetail, formDto); + } + /** * @return com.elink.esua.epdc.commons.tools.utils.Result * @Description 发布话题 diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/PartyGroupFeignClient.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/PartyGroupFeignClient.java index 5ae8934f..ba8e869c 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/PartyGroupFeignClient.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/PartyGroupFeignClient.java @@ -140,4 +140,8 @@ public interface PartyGroupFeignClient { **/ @PostMapping(value = "partyGroup/user/updateInfo", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) Result updateInfo(@RequestBody PartyUserNewInfoFormDTO formDTO); + + + @GetMapping(value = "partyGroup/topic/myTopicList", consumes = MediaType.APPLICATION_JSON_VALUE) + Result myTopicList(MyPartyTopicFormDTO formDto); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/PartyGroupFeignClientFallback.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/PartyGroupFeignClientFallback.java index 8fd55816..97998906 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/PartyGroupFeignClientFallback.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/PartyGroupFeignClientFallback.java @@ -80,4 +80,9 @@ public class PartyGroupFeignClientFallback implements PartyGroupFeignClient { public Result updateInfo(PartyUserNewInfoFormDTO formDTO) { return ModuleUtils.feignConError(ServiceConstant.EPDC_PARTY_GROUP_SERVER, "updateInfo",formDTO); } + + @Override + public Result myTopicList(MyPartyTopicFormDTO formDto) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_PARTY_GROUP_SERVER, "myTopicList",formDto); + } } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/PartyGroupService.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/PartyGroupService.java index 4b9651eb..eb5ac438 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/PartyGroupService.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/PartyGroupService.java @@ -105,4 +105,12 @@ public interface PartyGroupService { * @return com.elink.esua.epdc.commons.tools.utils.Result **/ Result joinGroup(TokenDto userDetail, PartyUserJoinGroupFormDTO formDto); + /** + * @Description 我的话题列表 + * @Author songyunpeng + * @Date 2020/6/11 + * @Param [userDetail, formDto] + * @return com.elink.esua.epdc.commons.tools.utils.Result + **/ + Result myTopicList(TokenDto userDetail, MyPartyTopicFormDTO formDto); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/PartyGroupServiceImpl.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/PartyGroupServiceImpl.java index e6156aa9..c1a08107 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/PartyGroupServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/PartyGroupServiceImpl.java @@ -147,4 +147,11 @@ public class PartyGroupServiceImpl implements PartyGroupService { formDto.setMobile(userDetail.getMobile()); return partyGroupFeignClient.joinGroup(formDto); } + + @Override + public Result myTopicList(TokenDto userDetail, MyPartyTopicFormDTO formDto) { + if(userDetail!=null){ + formDto.setUserId(userDetail.getUserId()); + } + return partyGroupFeignClient.myTopicList(formDto); } } diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/form/MyPartyTopicFormDTO.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/form/MyPartyTopicFormDTO.java new file mode 100644 index 00000000..908be3c9 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/form/MyPartyTopicFormDTO.java @@ -0,0 +1,52 @@ +package com.elink.esua.epdc.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @Author songyunpeng + * @Date 2020/6/3 16:24 + */ +@Data +public class MyPartyTopicFormDTO implements Serializable { + private static final long serialVersionUID = -3034807666143092535L; + + + /** + * 页码 + */ + @NotNull(message = "页码不能为空") + private Integer pageIndex; + /** + * 页容量 + */ + @NotNull(message = "分页数量不能为空") + private Integer pageSize; + + /** + * 第一页查询发起时的时间 + */ + @NotBlank(message = "时间戳不能为空") + private String timestamp; + + /** + * 用户ID + */ + private String userId; + /** + * 话题类型 + */ + private String topicType; + /** + * 党群ID + */ + private String partyGroupId; + /** + * 话题ID + */ + private String partyTopicId; + +} diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/controller/AppPartyTopicController.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/controller/AppPartyTopicController.java index da311cb6..324397f4 100644 --- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/controller/AppPartyTopicController.java +++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/controller/AppPartyTopicController.java @@ -19,6 +19,7 @@ package com.elink.esua.epdc.controller; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; +import com.elink.esua.epdc.dto.form.MyPartyTopicFormDTO; import com.elink.esua.epdc.dto.form.PartyTopicFormDTO; import com.elink.esua.epdc.dto.form.PartyTopicSubmitFormDTO; import com.elink.esua.epdc.dto.form.TopicStatementFormDTO; @@ -27,8 +28,6 @@ import com.elink.esua.epdc.service.PartyTopicService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.List; - /** * 话题表 @@ -55,6 +54,18 @@ public class AppPartyTopicController { return partyTopicService.getAllPartyTopicResultDTO(formDTO); } + /** + * @Description 我的话题列表 + * @Author songyunpeng + * @Date 2020/6/3 + * @Param [formDTO] + * @return com.elink.esua.epdc.commons.tools.utils.Result> + **/ + @GetMapping("myTopicList") + public Result myTopicList(@RequestBody MyPartyTopicFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO); + return partyTopicService.getMyPartyTopicResultDTO(formDTO); + } /** * @Description 发布话题 * @Author songyunpeng diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/dao/PartyTopicDao.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/dao/PartyTopicDao.java index 7ad1af00..7a5adf75 100644 --- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/dao/PartyTopicDao.java +++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/dao/PartyTopicDao.java @@ -19,6 +19,7 @@ package com.elink.esua.epdc.dao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; import com.elink.esua.epdc.dto.PartyTopicDTO; +import com.elink.esua.epdc.dto.form.MyPartyTopicFormDTO; import com.elink.esua.epdc.dto.form.PartyTopicFormDTO; import com.elink.esua.epdc.dto.result.TopicList; import com.elink.esua.epdc.entity.PartyTopicEntity; @@ -77,4 +78,12 @@ public interface PartyTopicDao extends BaseDao { * @return void **/ void updateSupportNum(String id,Integer num); + /** + * @Description 我的话题列表 + * @Author songyunpeng + * @Date 2020/6/11 + * @Param [formDto] + * @return java.util.List + **/ + List selectListOfMyPartyTopic(MyPartyTopicFormDTO formDto); } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/service/PartyTopicService.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/service/PartyTopicService.java index b3bf7fd9..3eea777c 100644 --- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/service/PartyTopicService.java +++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/service/PartyTopicService.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.GroupTopicCloseFormDTO; import com.elink.esua.epdc.dto.PartyTopicDTO; +import com.elink.esua.epdc.dto.form.MyPartyTopicFormDTO; import com.elink.esua.epdc.dto.form.PartyTopicFormDTO; import com.elink.esua.epdc.dto.form.PartyTopicSubmitFormDTO; import com.elink.esua.epdc.dto.form.TopicStatementFormDTO; @@ -154,4 +155,12 @@ public interface PartyTopicService extends BaseService { * @return void **/ void statement(TopicStatementFormDTO formDto); + /** + * @Description 我的话题列表 + * @Author songyunpeng + * @Date 2020/6/11 + * @Param [formDTO] + * @return com.elink.esua.epdc.commons.tools.utils.Result + **/ + Result getMyPartyTopicResultDTO(MyPartyTopicFormDTO formDTO); } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/service/impl/PartyTopicServiceImpl.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/service/impl/PartyTopicServiceImpl.java index 857b8ddd..20502d72 100644 --- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/service/impl/PartyTopicServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/service/impl/PartyTopicServiceImpl.java @@ -32,6 +32,7 @@ import com.elink.esua.epdc.dto.PartyTopicDTO; import com.elink.esua.epdc.dto.PartyTopicUserAttitudeDTO; import com.elink.esua.epdc.dto.PartyUserGroupDTO; import com.elink.esua.epdc.dto.constant.PartyGroupConstant; +import com.elink.esua.epdc.dto.form.MyPartyTopicFormDTO; import com.elink.esua.epdc.dto.form.PartyTopicFormDTO; import com.elink.esua.epdc.dto.form.PartyTopicSubmitFormDTO; import com.elink.esua.epdc.dto.form.TopicStatementFormDTO; @@ -221,4 +222,20 @@ public class PartyTopicServiceImpl extends BaseServiceImpl getMyPartyTopicResultDTO(MyPartyTopicFormDTO formDto) { + int pageIndex = (formDto.getPageIndex() - NumConstant.ONE) * formDto.getPageSize(); + formDto.setPageIndex(pageIndex); + List topicLists = baseDao.selectListOfMyPartyTopic(formDto); + PartyTopicResultDTO partyTopicResultDTO = new PartyTopicResultDTO(); + //获取当前用户在当前党群禁言状态 + PartyUserGroupDTO userByGroupIdAndUserId = partyUserGroupService.getUserByGroupIdAndUserId(formDto.getPartyGroupId(), formDto.getUserId()); + if(userByGroupIdAndUserId!=null && userByGroupIdAndUserId.getBannedEndTime()!=null && new Date().before(userByGroupIdAndUserId.getBannedEndTime())){ + partyTopicResultDTO.setBannedFlag("1"); + }else{ + partyTopicResultDTO.setBannedFlag("0"); + } + partyTopicResultDTO.setTopicList(topicLists); + return new Result().ok(partyTopicResultDTO); } + } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/resources/mapper/PartyTopicDao.xml b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/resources/mapper/PartyTopicDao.xml index 79132ed0..037965d3 100644 --- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/resources/mapper/PartyTopicDao.xml +++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/resources/mapper/PartyTopicDao.xml @@ -201,6 +201,54 @@ LIMIT #{pageIndex},#{pageSize}) tmp) order by t.CREATED_TIME desc,t3.CREATED_TIME + UPDATE epdc_party_topic SET COMMENT_NUM = COMMENT_NUM + #{num} WHERE ID = #{id}