diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/CheckTopicPublisherFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/CheckTopicPublisherFormDTO.java new file mode 100644 index 0000000000..2e0e2276f2 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/CheckTopicPublisherFormDTO.java @@ -0,0 +1,25 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + */ +@Data +public class CheckTopicPublisherFormDTO implements Serializable { + + private static final long serialVersionUID = 2599592072265715951L; + /** + * 话题Id + */ + private String topicId; + + /** + * 创建人 + */ + private String createdBy; + + +} diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/VoteFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/VoteFormDTO.java index 126257e37d..44655fbb8b 100644 --- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/VoteFormDTO.java +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/VoteFormDTO.java @@ -16,7 +16,7 @@ public class VoteFormDTO implements Serializable { /** * 话题Id */ - private String IssueId; + private String issueId; /** * 态度 - opposition(反对)support(赞成) diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/CheckTopicPublisherResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/CheckTopicPublisherResultDTO.java new file mode 100644 index 0000000000..c8011713e2 --- /dev/null +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/CheckTopicPublisherResultDTO.java @@ -0,0 +1,19 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + + +/** + * @Auth zxc + */ +@Data +public class CheckTopicPublisherResultDTO implements Serializable { + + private static final long serialVersionUID = 9130115335145168458L; + /** + * 校验本人是不是话题发起人 + */ + private Integer checkTopicPublisher; +} 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 a5eeaa6497..709afb5f7c 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 @@ -22,6 +22,7 @@ import com.epmet.dto.IssueDTO; import com.epmet.dto.form.CommonIssueListFormDTO; import com.epmet.dto.form.IssueDetailFormDTO; import com.epmet.dto.form.ShiftProjectListFromDTO; +import com.epmet.dto.form.VoteFormDTO; import com.epmet.dto.result.ClosedIssueListGovResultDTO; import com.epmet.dto.result.ClosedIssueListResultDTO; import com.epmet.dto.result.IssueResultDTO; @@ -91,4 +92,11 @@ public interface IssueDao extends BaseDao { * @date 2020.05.14 13:34 **/ List selectClosedListGov(CommonIssueListFormDTO issueListFormDTO); + + /** + * @Description 判断某人是不是议题发起人 + * @param formDTO + * @author zxc + */ + Integer checkIssuePublisher(VoteFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java index c4f5aa7f3a..59fd426b87 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java @@ -2,8 +2,11 @@ package com.epmet.feign; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.CheckTopicPublisherFormDTO; import com.epmet.dto.form.ShouldVoteCountFormDTO; +import com.epmet.dto.form.VoteFormDTO; import com.epmet.dto.result.AgencyGridResultDTO; +import com.epmet.dto.result.CheckTopicPublisherResultDTO; import com.epmet.dto.result.ShouldVoteCountResultDTO; import com.epmet.feign.fallback.ResiGroupFeignClientFallBack; import com.epmet.resi.group.dto.topic.ResiTopicDTO; @@ -48,4 +51,12 @@ public interface ResiGroupFeignClient { @PostMapping("/resi/group/group/shouldvotecount") Result shouldVoteCount(@RequestBody ShouldVoteCountFormDTO formDTO); + /** + * @Description 校验本人是不是话题发起人 + * @param formDTO + * @author zxc + */ + @PostMapping("/resi/group/topic/checktopicpublisher") + Result checkTopicPublisher(@RequestBody CheckTopicPublisherFormDTO formDTO); + } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java index 7a887029ea..a822a0c4b7 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/feign/fallback/ResiGroupFeignClientFallBack.java @@ -3,8 +3,10 @@ package com.epmet.feign.fallback; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.ModuleUtils; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.CheckTopicPublisherFormDTO; import com.epmet.dto.form.ShouldVoteCountFormDTO; import com.epmet.dto.result.AgencyGridResultDTO; +import com.epmet.dto.result.CheckTopicPublisherResultDTO; import com.epmet.dto.result.ShouldVoteCountResultDTO; import com.epmet.feign.ResiGroupFeignClient; import com.epmet.resi.group.dto.topic.ResiTopicDTO; @@ -32,4 +34,9 @@ public class ResiGroupFeignClientFallBack implements ResiGroupFeignClient { public Result shouldVoteCount(ShouldVoteCountFormDTO formDTO) { return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "shouldVoteCount", formDTO); } + + @Override + public Result checkTopicPublisher(CheckTopicPublisherFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "checkTopicPublisher", formDTO); + } } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteDetailServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteDetailServiceImpl.java index 02cadd81cc..c5274d4ad2 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteDetailServiceImpl.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteDetailServiceImpl.java @@ -28,13 +28,12 @@ import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.constant.IssueConstant; +import com.epmet.dao.IssueDao; import com.epmet.dao.IssueVoteDetailDao; import com.epmet.dto.IssueDTO; import com.epmet.dto.IssueVoteDetailDTO; -import com.epmet.dto.form.CheckVoteFormDTO; -import com.epmet.dto.form.ShouldVoteCountFormDTO; -import com.epmet.dto.form.VoteFormDTO; -import com.epmet.dto.form.VoteRedisFormDTO; +import com.epmet.dto.form.*; +import com.epmet.dto.result.CheckTopicPublisherResultDTO; import com.epmet.dto.result.JoinVoteResultDTO; import com.epmet.dto.result.ShouldVoteCountResultDTO; import com.epmet.entity.IssueVoteDetailEntity; @@ -67,6 +66,8 @@ public class IssueVoteDetailServiceImpl extends BaseServiceImpl page(Map params) { @@ -168,8 +169,17 @@ public class IssueVoteDetailServiceImpl extends BaseServiceImpl NumConstant.ZERO){ + if (checkoutVoteCount > NumConstant.ZERO || issuePublisher > NumConstant.ZERO || publisherResult.getCheckTopicPublisher() > NumConstant.ZERO){ resultDTO.setJoinVote(true); }else { resultDTO.setJoinVote(false); 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 ca168fc5e6..7107c16107 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 @@ -246,4 +246,16 @@ #{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/CheckTopicPublisherFormDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/CheckTopicPublisherFormDTO.java new file mode 100644 index 0000000000..e98662fc4f --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/CheckTopicPublisherFormDTO.java @@ -0,0 +1,25 @@ +package com.epmet.resi.group.dto.topic.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + */ +@Data +public class CheckTopicPublisherFormDTO implements Serializable { + + private static final long serialVersionUID = 6574592704731427746L; + /** + * 话题Id + */ + private String topicId; + + /** + * 创建人 + */ + private String createdBy; + + +} diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/CheckTopicPublisherResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/CheckTopicPublisherResultDTO.java new file mode 100644 index 0000000000..33a4b24291 --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/CheckTopicPublisherResultDTO.java @@ -0,0 +1,22 @@ +package com.epmet.resi.group.dto.topic.result; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + + +/** + * @Auth zxc + */ +@Data +public class CheckTopicPublisherResultDTO implements Serializable { + + private static final long serialVersionUID = -6904613651832971580L; + + /** + * 校验本人是不是话题发起人 + */ + private Integer checkTopicPublisher; +} 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 da04df9797..bbee6b578f 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 @@ -4,6 +4,7 @@ import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.dto.form.VoteFormDTO; import com.epmet.modules.topic.service.ResiTopicService; import com.epmet.resi.group.dto.topic.ResiTopicDTO; import com.epmet.resi.group.dto.topic.TopicInfoDTO; @@ -192,6 +193,7 @@ public class ResiTopicController { */ @PostMapping(value = "selectdetail") public Result selectDetail(@RequestBody TopicInfoFormDTO topicInfo){ + ValidatorUtils.validateEntity(topicInfo); return new Result().ok(topicService.selectDetail(topicInfo)); } @@ -247,4 +249,15 @@ public class ResiTopicController { return new Result().ok(topicService.topicInfoForIssueDetailGov(govTopicIssueInfoFormDTO)); } + /** + * @Description 校验本人是不是话题发起人 + * @param formDTO + * @author zxc + */ + @PostMapping("checktopicpublisher") + public Result checkTopicPublisher(@RequestBody CheckTopicPublisherFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO); + return new Result().ok(topicService.checkTopicPublisher(formDTO)); + } + } 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 a4e516caf1..8f4b3fdfd1 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 @@ -20,15 +20,12 @@ package com.epmet.modules.topic.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.modules.topic.entity.ResiTopicEntity; -import com.epmet.resi.group.dto.group.ResiGroupDTO; 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.result.ResiTopicAndGroupResultDTO; -import com.epmet.resi.group.dto.topic.result.ResiTopicAttachmentsResultDTO; -import com.epmet.resi.group.dto.topic.result.ResiTopicIncludeIssueInfoResultDTO; +import com.epmet.resi.group.dto.topic.result.*; import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO; -import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -148,4 +145,11 @@ public interface ResiTopicDao extends BaseDao { * @date 2020.05.14 17:02 **/ ResiTopicAttachmentsResultDTO selectTopicAndAttachments(@Param("topicId")String topicId); + + /** + * @Description 校验本人是不是话题发起人 + * @param formDTO + * @author zxc + */ + CheckTopicPublisherResultDTO checkTopicPublisher(CheckTopicPublisherFormDTO formDTO); } \ 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 943aa5a47d..08b8e89fd9 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,6 +30,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.*; import com.epmet.resi.group.dto.topic.result.*; +import org.springframework.web.bind.annotation.RequestBody; import java.util.List; @@ -256,4 +257,11 @@ public interface ResiTopicService extends BaseService { **/ GovTopicIssueInfoResultDTO topicInfoForIssueDetailGov(GovTopicIssueInfoFormDTO govTopicIssueInfoFormDTO); + /** + * @Description 校验本人是不是话题发起人 + * @param formDTO + * @author zxc + */ + CheckTopicPublisherResultDTO checkTopicPublisher(CheckTopicPublisherFormDTO formDTO); + } \ 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 1e56b56073..f5bd09a849 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 @@ -69,6 +69,7 @@ import com.epmet.resi.group.dto.member.result.ResiGroupMemberInfoRedisResultDTO; 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.form.CheckTopicPublisherFormDTO; import com.epmet.resi.group.dto.topic.form.GovTopicIssueInfoFormDTO; import com.epmet.resi.group.dto.topic.result.*; import org.apache.commons.lang3.StringUtils; @@ -1140,6 +1141,16 @@ public class ResiTopicServiceImpl extends BaseServiceImpl + + +