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 9d94bd37..8b218ef5 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 @@ -203,4 +203,19 @@ public class ApiPartyGroupController { return partyGroupService.getTopicDetailById(id); } + /** + * 话题置顶或取消置顶 + * + * @param userDetail 用户信息 + * @param formDto 参数 + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author Liuchuang + * @since 2020/9/8 9:33 + */ + @PostMapping("topic/top") + public Result topicTop(@LoginUser TokenDto userDetail, @RequestBody PartyGroupTopicTopFormDTO formDto) { + ValidatorUtils.validateEntity(formDto); + return partyGroupService.modifyTopicTopFlag(userDetail, formDto); + } + } 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 e570d3ac..97a24803 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 @@ -1,5 +1,6 @@ package com.elink.esua.epdc.feign; +import com.elink.esua.epdc.common.token.dto.TokenDto; import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.form.*; @@ -173,4 +174,16 @@ public interface PartyGroupFeignClient { */ @GetMapping(value = "partyGroup/topic/detail/{id}", consumes = MediaType.APPLICATION_JSON_VALUE) Result getTopicDetailById(@PathVariable("id") String id); + + /** + * 话题置顶或取消置顶 + * + * @param formDto 参数 + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author Liuchuang + * @since 2020/9/8 9:33 + */ + @PostMapping("partyGroup/topic/top") + Result topicTop(PartyGroupTopicTopFormDTO 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 2aa76bbf..158eb69c 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 @@ -1,5 +1,6 @@ package com.elink.esua.epdc.feign.fallback; +import com.elink.esua.epdc.common.token.dto.TokenDto; 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; @@ -98,4 +99,9 @@ public class PartyGroupFeignClientFallback implements PartyGroupFeignClient { public Result getTopicDetailById(String id) { return ModuleUtils.feignConError(ServiceConstant.EPDC_PARTY_GROUP_SERVER, "getTopicDetailById",id); } + + @Override + public Result topicTop(PartyGroupTopicTopFormDTO formDto) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_PARTY_GROUP_SERVER, "topicTop",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 6f648e9a..1425eeae 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 @@ -139,4 +139,15 @@ public interface PartyGroupService { * @since 2020/8/24 14:48 */ Result getTopicDetailById(String id); + + /** + * 话题置顶或取消置顶 + * + * @param userDetail 用户信息 + * @param formDto 参数 + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author Liuchuang + * @since 2020/9/8 9:36 + */ + Result modifyTopicTopFlag(TokenDto userDetail, PartyGroupTopicTopFormDTO 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 9b501eb5..1b79779d 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 @@ -167,4 +167,10 @@ public class PartyGroupServiceImpl implements PartyGroupService { public Result getTopicDetailById(String id) { return partyGroupFeignClient.getTopicDetailById(id); } + + @Override + public Result modifyTopicTopFlag(TokenDto userDetail, PartyGroupTopicTopFormDTO formDto) { + formDto.setUserId(userDetail.getUserId()); + return partyGroupFeignClient.topicTop(formDto); + } } diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/PartyGroupOfficialsDTO.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/PartyGroupOfficialsDTO.java index 6febbc8a..5582e063 100644 --- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/PartyGroupOfficialsDTO.java +++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/PartyGroupOfficialsDTO.java @@ -144,4 +144,9 @@ public class PartyGroupOfficialsDTO implements Serializable { */ private List allDeptIdsShow; + /** + * 排序 + */ + private Integer sort; + } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/PartyTopicDTO.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/PartyTopicDTO.java index a15dbd2f..b0c98faf 100644 --- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/PartyTopicDTO.java +++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/PartyTopicDTO.java @@ -210,4 +210,14 @@ public class PartyTopicDTO implements Serializable { */ private String shieldUserName; + /** + * 置顶标识(0否, 1是) + */ + private String topFlag; + + /** + * 置顶时间 + */ + private Date topTime; + } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/form/PartyGroupTopicTopFormDTO.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/form/PartyGroupTopicTopFormDTO.java new file mode 100644 index 00000000..3cf2f696 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/form/PartyGroupTopicTopFormDTO.java @@ -0,0 +1,34 @@ +package com.elink.esua.epdc.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 话题置顶Form DTO + * + * @author Liuchuang + * @since 2020/9/8 9:28 + */ +@Data +public class PartyGroupTopicTopFormDTO implements Serializable { + private static final long serialVersionUID = 5463476744161662442L; + + /** + * 话题ID + */ + @NotBlank(message = "话题ID不能为空") + private String topicId; + + /** + * 置顶标识:0-取消置顶,1-置顶 + */ + @NotBlank(message = "置顶标识不能为空") + private String topFlag; + + /** + * 用户ID + */ + private String userId; +} diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/result/TopicList.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/result/TopicList.java index 49bef853..e703d383 100644 --- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/result/TopicList.java +++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/result/TopicList.java @@ -127,4 +127,9 @@ public class TopicList implements Serializable { */ private List likes; + /** + * 置顶标识:0-否,1-是 + */ + private String topFlag; + } \ 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/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 e6ef0ea9..ca161bf1 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 @@ -17,6 +17,7 @@ package com.elink.esua.epdc.controller; +import com.elink.esua.epdc.common.token.dto.TokenDto; 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.*; @@ -115,4 +116,17 @@ public class AppPartyTopicController { return new Result().ok(data); } + /** + * 话题置顶或取消置顶 + * + * @param formDto 参数 + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author Liuchuang + * @since 2020/9/8 9:33 + */ + @PostMapping("top") + public Result topicTop(@RequestBody PartyGroupTopicTopFormDTO formDto) { + return partyTopicService.modifyTopicTopFlag(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/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 c15b5794..78a31f7b 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 @@ -20,6 +20,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.PartyGroupTopicTopFormDTO; import com.elink.esua.epdc.dto.form.PartyTopicFormDTO; import com.elink.esua.epdc.dto.result.PartyTopicDetailResultDTO; import com.elink.esua.epdc.dto.result.TopicList; @@ -107,4 +108,24 @@ public interface PartyTopicDao extends BaseDao { * @since 2020/8/24 14:32 */ PartyTopicDetailResultDTO selectOneOfTopicDetailById(@Param("id") String id); + + /** + * 获取用户身份 + * + * @param formDto 检索条件 + * @return int + * @author Liuchuang + * @since 2020/9/8 13:31 + */ + int selectGroupUserByUserIdAndTopicId(@Param("formDto") PartyGroupTopicTopFormDTO formDto); + + /** + * 话题置顶或取消置顶 + * + * @param formDto 参数 + * @return void + * @author Liuchuang + * @since 2020/9/8 13:55 + */ + void updateTopicTopFlagById(@Param("formDto") PartyGroupTopicTopFormDTO 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/entity/PartyGroupOfficialsEntity.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/entity/PartyGroupOfficialsEntity.java index 70dc848c..25194fb2 100644 --- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/entity/PartyGroupOfficialsEntity.java +++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/entity/PartyGroupOfficialsEntity.java @@ -102,4 +102,9 @@ public class PartyGroupOfficialsEntity extends BaseEpdcEntity { */ private String parentDeptNames; + /** + * 排序 + */ + private Integer sort; + } \ 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/entity/PartyTopicEntity.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/entity/PartyTopicEntity.java index c6bca55f..2ce70f5b 100644 --- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/entity/PartyTopicEntity.java +++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/entity/PartyTopicEntity.java @@ -169,4 +169,14 @@ public class PartyTopicEntity extends BaseEpdcEntity { */ private String shieldUserName; + /** + * 置顶标识(0否, 1是) + */ + private String topFlag; + + /** + * 置顶时间 + */ + private Date topTime; + } \ 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 f81879c4..616d527e 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 @@ -190,4 +190,14 @@ public interface PartyTopicService extends BaseService { * @since 2020/8/24 14:33 */ PartyTopicDetailResultDTO getTopicDetailById(String id); + + /** + * 话题置顶或取消置顶 + * + * @param formDto 参数 + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author Liuchuang + * @since 2020/9/8 9:44 + */ + Result modifyTopicTopFlag(PartyGroupTopicTopFormDTO 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 099f2788..ea840cc0 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 @@ -47,7 +47,6 @@ import com.elink.esua.epdc.entity.PartyTopicEntity; import com.elink.esua.epdc.entity.PartyTopicUserAttitudeEntity; import com.elink.esua.epdc.feign.AdminFeignClient; import com.elink.esua.epdc.feign.ContentSecurityFeignClient; -import com.elink.esua.epdc.redis.PartyTopicRedis; import com.elink.esua.epdc.rocketmq.dto.RejectRecordDTO; import com.elink.esua.epdc.service.PartyTopicImgService; import com.elink.esua.epdc.service.PartyTopicService; @@ -69,9 +68,6 @@ import java.util.*; @Service public class PartyTopicServiceImpl extends BaseServiceImpl implements PartyTopicService { - @Autowired - private PartyTopicRedis partyTopicRedis; - @Autowired private PartyTopicImgService partyTopicImgService; @@ -327,4 +323,18 @@ public class PartyTopicServiceImpl extends BaseServiceImpl - order by t.CREATED_TIME desc + order by t.SORT, t.CREATED_TIME desc @@ -75,7 +76,7 @@ AREA_RESPONSIBILITY from epdc_party_group_officials where DEL_FLAG ='0' and PARTY_GROUP_ID = #{partyGroupId} - order by CREATED_TIME desc + order by SORT, CREATED_TIME desc LIMIT #{pageIndex},#{pageSize} 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 e00186e3..d3b37926 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 @@ -146,6 +146,7 @@ + @@ -163,31 +164,32 @@ + + + + + UPDATE epdc_party_topic SET TOP_FLAG = #{formDto.topFlag} + + , TOP_TIME = NULL + + + , TOP_TIME = NOW() + + WHERE ID = #{formDto.topicId} + \ No newline at end of file