diff --git a/epdc-cloud-api/pom.xml b/epdc-cloud-api/pom.xml
index 0e29977..080a880 100644
--- a/epdc-cloud-api/pom.xml
+++ b/epdc-cloud-api/pom.xml
@@ -100,6 +100,12 @@
epdc-commons-api-version-control
${epdc-cloud-commons.version}
+
+ com.esua.epdc.yushan
+ epdc-cloud-property-client
+ 1.0.0
+ compile
+
@@ -222,7 +228,7 @@
true
47.104.224.45:8848
47.104.85.99
- 6a3577b4-7b79-43f6-aebb-9c3f31263f6a
+ de000340-5fc4-45aa-bdbc-dd96852012ad
wx3ef8f2cd12a19fcb
@@ -230,14 +236,11 @@
111
111
-
-
-
- wx5d3e97461d248397
- bfed51b731e53db9affb9e6131e7ae12
+ wx50ebeb95943868cd
+ c2719c261fe87b3e2d572552d2c8275d
- wx9f20a46906ab2c3e
- dc13065f79429979d9f687d249eb5c4e
+ wx6d45fd2f4dfe7ce4
+ 54a30a48b100bbad20d7823cd9e1fb17
wxfa4afaa2b5f9c876
7db9f049c78c9a6cafa673deebe8330d
diff --git a/epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiActPhraseController.java b/epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiActPhraseController.java
index 0a563cd..0d3ef0a 100644
--- a/epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiActPhraseController.java
+++ b/epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiActPhraseController.java
@@ -26,7 +26,7 @@ public class ApiActPhraseController {
* @date 2019/12/13 14:41
*/
@PostMapping("sagenumAddOne")
- public Result sagenumAddOneById(String id) {
+ public Result sagenumAddOneById(@RequestBody String id) {
return actPhraseService.sagenumAddOneById(id);
}
diff --git a/epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiPropertyController.java b/epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiPropertyController.java
new file mode 100644
index 0000000..6519e9e
--- /dev/null
+++ b/epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiPropertyController.java
@@ -0,0 +1,294 @@
+package com.elink.esua.epdc.controller;
+
+import com.elink.esua.epdc.common.token.dto.TokenDto;
+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.comment.TopicCommentFormDTO;
+import com.elink.esua.epdc.dto.comment.TopicCommentStatementFormDTO;
+import com.elink.esua.epdc.dto.comment.TopicCommentsFormDTO;
+import com.elink.esua.epdc.dto.comment.result.EventCommentsResultDTO;
+import com.elink.esua.epdc.dto.epdc.form.EpdcUserGroupInviteFormDTO;
+import com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO;
+import com.elink.esua.epdc.dto.group.form.*;
+import com.elink.esua.epdc.dto.group.result.*;
+import com.elink.esua.epdc.dto.project.form.ProjectListFormDTO;
+import com.elink.esua.epdc.dto.topic.form.TopicCloseFormDTO;
+import com.elink.esua.epdc.dto.topic.form.TopicListFormDTO;
+import com.elink.esua.epdc.dto.topic.form.TopicSubmitFormDTO;
+import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO;
+import com.elink.esua.epdc.dto.topic.result.TopicListResultDTO;
+import com.elink.esua.epdc.service.PropertyService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * @author: qushutong
+ * @Date: 2020/5/12 11:11
+ * @Description: 物业相关
+ */
+@RestController
+@RequestMapping("property")
+public class ApiPropertyController {
+ @Autowired
+ private PropertyService propertyService;
+
+
+ /**
+ * 社群详情
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @params [userDetail, id]
+ * @author liuchuang
+ * @since 2019/10/22 15:14
+ */
+ @GetMapping("group/detail/{id}")
+ public Result detail(@LoginUser TokenDto userDetail, @PathVariable("id") String id) {
+ return propertyService.getGroupDetail(userDetail, id);
+ }
+
+ /**
+ * 修改群介绍
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/10/22 15:33
+ */
+ @PostMapping("group/modifyIntroduction")
+ public Result modifyIntroduction(@LoginUser TokenDto userDetail, @RequestBody GroupIntroductionFormDTO formDto) {
+ return propertyService.modifyIntroduction(userDetail, formDto);
+ }
+
+ /**
+ * 修改群头像
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/10/22 17:25
+ */
+ @PostMapping("group/modifyAvatar")
+ public Result modifyAvatar(@LoginUser TokenDto userDetail, @RequestBody GroupModifyAvatarFormDTO formDto) {
+ return propertyService.modifyAvatar(userDetail, formDto);
+ }
+
+ /**
+ * 社群成员列表(待审核/审核通过)
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/23 9:13
+ */
+ @GetMapping("group/listOfMember")
+ public Result> listOfMember(GroupUsersFormDTO formDto) {
+ return propertyService.listOfMember(formDto);
+ }
+
+ /**
+ * 移除社群成员
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/23 10:35
+ */
+ @PostMapping("group/removeMember")
+ public Result removeMember(@LoginUser TokenDto userDetail, @RequestBody GroupUserRemoveOrQuitFormDTO formDto) {
+ return propertyService.removeMember(userDetail, formDto);
+ }
+
+ /**
+ * 退出社群
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/23 10:40
+ */
+ @PostMapping("group/quitGroup")
+ public Result quitGroup(@LoginUser TokenDto userDetail, @RequestBody GroupUserRemoveOrQuitFormDTO formDto) {
+ return propertyService.quitGroup(userDetail, formDto);
+ }
+
+ /**
+ * 添加成员列表
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/23 16:39
+ */
+ @GetMapping("group/getInviteList")
+ public Result> getInviteList(@LoginUser TokenDto userDetail, EpdcUserGroupInviteFormDTO formDto) {
+ return propertyService.listOfInviteUsers(userDetail, formDto);
+ }
+
+ /**
+ * 添加社群成员
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/6 9:17
+ */
+ @PostMapping("group/addMember")
+ public Result addMember(@RequestBody GroupAddUserFormDTO formDto) {
+ return propertyService.saveGroupUsers(formDto);
+ }
+
+ /**
+ * 审核入群申请
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/6 13:22
+ */
+ @PostMapping("group/reviewApply")
+ public Result reviewApply(@RequestBody GroupUserReviewFormDTO formDto) {
+ return propertyService.updateGroupUsers(formDto);
+ }
+
+ /**
+ * 申请入群
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/11 14:00
+ */
+ @PostMapping("group/applyForGroup")
+ public Result applyForGroup(@LoginUser TokenDto userDetail, @RequestBody GroupApplyFormDTO formDto) {
+ ValidatorUtils.validateEntity(formDto);
+ return propertyService.applyForGroup(userDetail, formDto);
+ }
+
+
+ /**
+ * 发布话题
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/11/6 14:46
+ */
+ @PostMapping("topic/submit")
+ public Result submit(@LoginUser TokenDto userDetail, @RequestBody TopicSubmitFormDTO formDto) {
+ ValidatorUtils.validateEntity(formDto);
+ return propertyService.saveTopic(userDetail, formDto);
+ }
+
+ /**
+ * 话题列表
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/11/11 15:04
+ */
+ @GetMapping("topic/list")
+ public Result> listTopic(@LoginUser TokenDto userDetail, TopicListFormDTO formDto) {
+ ValidatorUtils.validateEntity(formDto);
+ return propertyService.listOfTopic(userDetail, formDto);
+ }
+
+
+ /**
+ * 话题详情
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [id]
+ * @author liuchuang
+ * @since 2019/11/7 15:37
+ */
+ @GetMapping("topic/detail/{id}")
+ public Result topicDetail(@LoginUser TokenDto userDetail, @PathVariable("id") String id) {
+ return propertyService.getTopicDetailById(userDetail, id);
+ }
+
+ /**
+ * 关闭话题
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/7 16:10
+ */
+ @PostMapping("topic/close")
+ public Result close(@LoginUser TokenDto userDetail, @RequestBody TopicCloseFormDTO formDto) {
+ ValidatorUtils.validateEntity(formDto);
+ return propertyService.closeTopic(userDetail, formDto);
+ }
+
+ /**
+ * 物业项目列表
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author zhangyuan
+ * @since 2020/5/13 16:10
+ */
+ @GetMapping("projectList")
+ public Result projectList(@LoginUser TokenDto userDetail, ProjectListFormDTO formDto) {
+ ValidatorUtils.validateEntity(formDto);
+ return propertyService.projectList(userDetail, formDto);
+ }
+
+ /**
+ * 物业项目详情
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author zhangyuan
+ * @since 2020/5/13 16:10
+ */
+ @GetMapping("projectDetail/{propertyProjectId}")
+ public Result projectDetail(@LoginUser TokenDto userDetail, @PathVariable("propertyProjectId") String propertyProjectId) {
+ return propertyService.projectDetail(userDetail, propertyProjectId);
+ }
+
+ /**
+ * @author: qushutong
+ * @Date: 2020/5/14 16:48
+ * @Description:提交评论或回复接口
+ */
+ @PostMapping("comment/submit")
+ public Result submit(@LoginUser TokenDto userDetail, @RequestBody TopicCommentFormDTO topicCommentFormDTO) {
+ return propertyService.submit(userDetail, topicCommentFormDTO);
+ }
+
+ /**
+ * 评论(赞/踩)
+ */
+ @PostMapping("comment/statement")
+ public Result statement(@LoginUser TokenDto userDetail, @RequestBody TopicCommentStatementFormDTO topicCommentStatementFormDTO) {
+ return propertyService.statement(userDetail, topicCommentStatementFormDTO);
+ }
+
+ /**
+ * 评论列表
+ */
+ @GetMapping("comment/list")
+ public Result listOfComments(@LoginUser TokenDto userDetail, TopicCommentsFormDTO topicCommentsFormDTO) {
+ return propertyService.listOfComments(userDetail, topicCommentsFormDTO);
+ }
+
+ /**
+ *
+ * 我的话题列表
+ *
+ * @params [userDetail, formDto]
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @author liuchuang
+ * @since 2019/11/11 15:04
+ */
+ @GetMapping("topic/listOfMine")
+ public Result> listTopicOfMine(@LoginUser TokenDto userDetail, TopicListFormDTO formDto) {
+ ValidatorUtils.validateEntity(formDto);
+ return propertyService.listTopicOfMine(userDetail, formDto);
+ }
+}
diff --git a/epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/PropertyFeignClient.java b/epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/PropertyFeignClient.java
new file mode 100644
index 0000000..a35bcc2
--- /dev/null
+++ b/epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/PropertyFeignClient.java
@@ -0,0 +1,246 @@
+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.comment.TopicCommentFormDTO;
+import com.elink.esua.epdc.dto.comment.TopicCommentStatementFormDTO;
+import com.elink.esua.epdc.dto.comment.TopicCommentsFormDTO;
+import com.elink.esua.epdc.dto.comment.result.EventCommentsResultDTO;
+import com.elink.esua.epdc.dto.epdc.form.EpdcUserGroupInviteFormDTO;
+import com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO;
+import com.elink.esua.epdc.dto.group.form.*;
+import com.elink.esua.epdc.dto.group.result.*;
+import com.elink.esua.epdc.dto.project.form.ProjectDetailFormDTO;
+import com.elink.esua.epdc.dto.project.form.ProjectListFormDTO;
+import com.elink.esua.epdc.dto.project.result.ProjectDetailResultDTO;
+import com.elink.esua.epdc.dto.project.result.ProjectListResultDTO;
+import com.elink.esua.epdc.dto.topic.form.*;
+import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO;
+import com.elink.esua.epdc.dto.topic.result.TopicListResultDTO;
+import com.elink.esua.epdc.feign.fallback.PropertyFeignClientFallback;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.http.MediaType;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+import java.util.List;
+
+
+/**
+ * @author: qushutong
+ * @Date: 2020/5/12 13:19
+ * @Description: 物业相关
+ */
+@FeignClient(name = ServiceConstant.EPDC_PROPERTY_SERVER, fallback = PropertyFeignClientFallback.class)
+public interface PropertyFeignClient {
+
+
+ /**
+ * 社群详情
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/22 15:09
+ */
+ @GetMapping(value = "property/epdc-app/group/detail", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result detail(GroupDetailForMobileEndFormDTO formDto);
+
+ /**
+ * 修改群介绍
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/22 15:36
+ */
+ @PostMapping(value = "property/epdc-app/group/modifyIntroduction", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result modifyIntroduction(GroupIntroductionFormDTO formDto);
+
+ /**
+ * 修改群头像
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/22 17:29
+ */
+ @PostMapping(value = "property/epdc-app/group/modifyAvatar", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result modifyAvatar(GroupModifyAvatarFormDTO formDto);
+
+ /**
+ * 社群成员列表(待审核/审核通过)
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/23 9:16
+ */
+ @GetMapping(value = "property/epdc-app/group/listOfMember", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result> listOfMember(GroupUsersFormDTO formDto);
+
+ /**
+ * 移除社群成员
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/23 10:47
+ */
+ @PostMapping(value = "property/epdc-app/group/removeMember", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result removeMember(GroupUserRemoveOrQuitFormDTO formDto);
+
+ /**
+ * 退出社群
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/23 10:47
+ */
+ @PostMapping(value = "property/epdc-app/group/quitGroup", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result quitGroup(GroupUserRemoveOrQuitFormDTO formDto);
+
+ /**
+ * 添加成员列表
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/23 16:38
+ */
+ @GetMapping(value = "property/epdc-app/usergroup/getInviteList", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result> getInviteList(EpdcUserGroupInviteFormDTO formDto);
+
+ /**
+ * 添加成员
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/6 9:37
+ */
+ @PostMapping(value = "property/epdc-app/usergroup/addMember", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result addMember(GroupAddUserFormDTO formDto);
+
+ /**
+ * 审核入群申请
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/6 13:26
+ */
+ @PostMapping(value = "property/epdc-app/usergroup/reviewApply", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result reviewApply(GroupUserReviewFormDTO formDto);
+
+ /**
+ * 申请入群
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/11 14:04
+ */
+ @PostMapping(value = "property/epdc-app/group/applyForGroup", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result applyForGroup(GroupApplyFormDTO formDto);
+
+ /**
+ * 更新社群用户党员标识并加入关联的所有网格党员群
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/11 14:32
+ */
+ @PostMapping(value = "property/epdc-app/usergroup/partyMember", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result updateUserPartyMember(GroupUserPartyMemberFormDTO formDto);
+
+ /**
+ * 用户加入党员群
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/21 10:35
+ */
+ @PostMapping(value = "property/epdc-app/group/joinPartyGroup", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result joinGridPartyGroup(@RequestBody List formDto);
+
+
+ /**
+ * 发布话题
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/6 15:40
+ */
+ @PostMapping(value = "property/epdc-app/topic/submit", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result submit(TopicSubmitFormDTO formDto);
+
+ /**
+ * 话题详情
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [id]
+ * @author liuchuang
+ * @since 2019/11/7 15:37
+ */
+ @GetMapping(value = "property/epdc-app/topic/detail", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result detail(TopicDetailFormDTO formDto);
+
+ /**
+ * 话题列表
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/11 15:06
+ */
+ @GetMapping(value = "property/epdc-app/topic/list", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result> listOfTopic(TopicListFormDTO formDto);
+
+ /**
+ * 关闭话题
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/7 16:14
+ */
+ @PostMapping(value = "property/epdc-app/topic/close", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result close(TopicCloseFormDTO formDto);
+
+ /**
+ * 物业项目列表
+ *
+ * @return ProjectListResultDTO
+ * @params [formDto]
+ * @author ZHANGYUAN
+ * @since 2020/5/13 15:06
+ */
+ @GetMapping(value = "property/epdc-app/project/list", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result> projectList(ProjectListFormDTO formDto);
+
+ /**
+ * 物业项目详情
+ * @return ProjectDetailResultDTO
+ * @params [formDto]
+ * @author ZHANGYUAN
+ * @since 2020/5/13 15:06
+ */
+ @GetMapping(value = "property/epdc-app/project/detail", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result projectDetail(ProjectDetailFormDTO formDto);
+
+ @PostMapping(value = "property/epdc-app/comment/submit", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result submit(TopicCommentFormDTO commentFormDTO);
+
+ @PostMapping(value = "property/epdc-app/comment/statement", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result statement(TopicCommentStatementFormDTO commentStatementFormDTO);
+
+ @GetMapping(value = "property/epdc-app/comment/list", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result listOfComments(TopicCommentsFormDTO formDto);
+
+}
diff --git a/epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/fallback/PropertyFeignClientFallback.java b/epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/fallback/PropertyFeignClientFallback.java
new file mode 100644
index 0000000..aeb299d
--- /dev/null
+++ b/epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/fallback/PropertyFeignClientFallback.java
@@ -0,0 +1,144 @@
+package com.elink.esua.epdc.feign.fallback;
+
+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.comment.TopicCommentFormDTO;
+import com.elink.esua.epdc.dto.comment.TopicCommentStatementFormDTO;
+import com.elink.esua.epdc.dto.comment.TopicCommentsFormDTO;
+import com.elink.esua.epdc.dto.comment.result.EventCommentsResultDTO;
+import com.elink.esua.epdc.dto.epdc.form.EpdcUserGroupInviteFormDTO;
+import com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO;
+import com.elink.esua.epdc.dto.group.GroupSettingStateDTO;
+import com.elink.esua.epdc.dto.group.form.*;
+import com.elink.esua.epdc.dto.group.result.*;
+import com.elink.esua.epdc.dto.project.form.ProjectDetailFormDTO;
+import com.elink.esua.epdc.dto.project.form.ProjectListFormDTO;
+import com.elink.esua.epdc.dto.project.result.ProjectDetailResultDTO;
+import com.elink.esua.epdc.dto.project.result.ProjectListResultDTO;
+import com.elink.esua.epdc.dto.topic.form.*;
+import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO;
+import com.elink.esua.epdc.dto.topic.result.TopicListResultDTO;
+import com.elink.esua.epdc.feign.GroupFeignClient;
+import com.elink.esua.epdc.feign.PropertyFeignClient;
+import org.springframework.stereotype.Component;
+import org.springframework.web.bind.annotation.PathVariable;
+
+import java.util.List;
+
+
+/**
+ * @author: qushutong
+ * @Date: 2020/5/12 13:19
+ * @Description: 物业相关
+ */
+@Component
+public class PropertyFeignClientFallback implements PropertyFeignClient {
+
+
+ @Override
+ public Result detail(GroupDetailForMobileEndFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "detail", formDto);
+ }
+
+ @Override
+ public Result modifyIntroduction(GroupIntroductionFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "modifyIntroduction", formDto);
+ }
+
+ @Override
+ public Result modifyAvatar(GroupModifyAvatarFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "modifyAvatar", formDto);
+ }
+
+ @Override
+ public Result> listOfMember(GroupUsersFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "listOfMember", formDto);
+ }
+
+ @Override
+ public Result removeMember(GroupUserRemoveOrQuitFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "removeMember", formDto);
+ }
+
+ @Override
+ public Result quitGroup(GroupUserRemoveOrQuitFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "quitGroup", formDto);
+ }
+
+ @Override
+ public Result> getInviteList(EpdcUserGroupInviteFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "getInviteList", formDto);
+ }
+
+ @Override
+ public Result addMember(GroupAddUserFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "addMember", formDto);
+ }
+
+ @Override
+ public Result reviewApply(GroupUserReviewFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "reviewApply", formDto);
+ }
+
+ @Override
+ public Result applyForGroup(GroupApplyFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "applyForGroup", formDto);
+ }
+
+ @Override
+ public Result updateUserPartyMember(GroupUserPartyMemberFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "updateUserPartyMember", formDto);
+ }
+
+ @Override
+ public Result joinGridPartyGroup(List formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "joinGridPartyGroup", formDto);
+ }
+
+
+ @Override
+ public Result submit(TopicSubmitFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "submit", formDto);
+ }
+
+ @Override
+ public Result detail(TopicDetailFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "detail", formDto);
+ }
+
+ @Override
+ public Result close(TopicCloseFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "close", formDto);
+ }
+
+
+ @Override
+ public Result> listOfTopic(TopicListFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "listOfTopic", formDto);
+ }
+
+ @Override
+ public Result> projectList(ProjectListFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "projectList", formDto);
+ }
+
+ @Override
+ public Result projectDetail(ProjectDetailFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_PROPERTY_SERVER, "projectDetail", formDto);
+ }
+ public Result submit(TopicCommentFormDTO commentFormDTO) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "submit", commentFormDTO);
+ }
+
+ @Override
+ public Result statement(TopicCommentStatementFormDTO commentStatementFormDTO) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "statement", commentStatementFormDTO);
+ }
+
+ @Override
+ public Result listOfComments(TopicCommentsFormDTO formDto) {
+ return ModuleUtils.feignConError(ServiceConstant.EPDC_GROUP_SERVER, "listOfComments", formDto);
+ }
+
+}
diff --git a/epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/PropertyService.java b/epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/PropertyService.java
new file mode 100644
index 0000000..71e24c5
--- /dev/null
+++ b/epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/PropertyService.java
@@ -0,0 +1,222 @@
+package com.elink.esua.epdc.service;
+
+import com.elink.esua.epdc.common.token.dto.TokenDto;
+import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
+import com.elink.esua.epdc.commons.tools.utils.Result;
+import com.elink.esua.epdc.dto.comment.TopicCommentFormDTO;
+import com.elink.esua.epdc.dto.comment.TopicCommentStatementFormDTO;
+import com.elink.esua.epdc.dto.comment.TopicCommentsFormDTO;
+import com.elink.esua.epdc.dto.comment.result.EventCommentsResultDTO;
+import com.elink.esua.epdc.dto.epdc.form.EpdcUserGroupInviteFormDTO;
+import com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO;
+import com.elink.esua.epdc.dto.group.form.*;
+import com.elink.esua.epdc.dto.group.result.*;
+import com.elink.esua.epdc.dto.project.form.ProjectListFormDTO;
+import com.elink.esua.epdc.dto.project.result.ProjectDetailResultDTO;
+import com.elink.esua.epdc.dto.project.result.ProjectListResultDTO;
+import com.elink.esua.epdc.dto.topic.form.TopicCloseFormDTO;
+import com.elink.esua.epdc.dto.topic.form.TopicListFormDTO;
+import com.elink.esua.epdc.dto.topic.form.TopicSubmitFormDTO;
+import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO;
+import com.elink.esua.epdc.dto.topic.result.TopicListResultDTO;
+
+import java.util.List;
+
+
+/**
+ * @author: qushutong
+ * @Date: 2020/5/12 13:21
+ * @Description: 物先相关
+ */
+public interface PropertyService {
+
+
+ /**
+ * 社群详情
+ *
+ * @return com.elink.esua.epdc.dto.group.result.GroupDetailForMobileEndResultDTO
+ * @params [userDetail, id]
+ * @author liuchuang
+ * @since 2019/10/22 15:15
+ */
+ Result getGroupDetail(TokenDto userDetail, String id);
+
+ /**
+ * 修改群介绍
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/10/22 15:34
+ */
+ Result modifyIntroduction(TokenDto userDetail, GroupIntroductionFormDTO formDto);
+
+ /**
+ * 修改群头像
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/10/22 17:26
+ */
+ Result modifyAvatar(TokenDto userDetail, GroupModifyAvatarFormDTO formDto);
+
+ /**
+ * 社群成员列表(待审核/审核通过)
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/23 9:14
+ */
+ Result> listOfMember(GroupUsersFormDTO formDto);
+
+ /**
+ * 移除社群成员
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/10/23 10:43
+ */
+ Result removeMember(TokenDto userDetail, GroupUserRemoveOrQuitFormDTO formDto);
+
+ /**
+ * 退出社群
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/10/23 10:43
+ */
+ Result quitGroup(TokenDto userDetail, GroupUserRemoveOrQuitFormDTO formDto);
+
+ /**
+ * 添加成员列表
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/10/23 16:40
+ */
+ Result> listOfInviteUsers(TokenDto userDetail, EpdcUserGroupInviteFormDTO formDto);
+
+ /**
+ * 添加社群成员
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/6 9:18
+ */
+ Result saveGroupUsers(GroupAddUserFormDTO formDto);
+
+ /**
+ * 审核入群申请
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [formDto]
+ * @author liuchuang
+ * @since 2019/11/6 13:23
+ */
+ Result updateGroupUsers(GroupUserReviewFormDTO formDto);
+
+ /**
+ * 申请入群
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/11/11 14:02
+ */
+ Result applyForGroup(TokenDto userDetail, GroupApplyFormDTO formDto);
+
+
+ /**
+ * 发布话题
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/11/6 14:51
+ */
+ Result saveTopic(TokenDto userDetail, TopicSubmitFormDTO formDto);
+
+ /**
+ * 话题详情
+ *
+ * @return com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO
+ * @params [id]
+ * @author liuchuang
+ * @since 2019/11/7 15:34
+ */
+ Result getTopicDetailById(TokenDto userDetail, String id);
+
+ /**
+ * 关闭话题
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/11/7 16:11
+ */
+ Result closeTopic(TokenDto userDetail, TopicCloseFormDTO formDto);
+
+
+ /**
+ * 话题列表
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/11/11 15:05
+ */
+ Result> listOfTopic(TokenDto userDetail, TopicListFormDTO formDto);
+
+ /**
+ * 物业项目列表
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/11/11 15:05
+ */
+ Result> projectList(TokenDto userDetail, ProjectListFormDTO formDto);
+
+ /**
+ * 物业项目详情
+ *
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @params [userDetail, formDto]
+ * @author liuchuang
+ * @since 2019/11/11 15:05
+ */
+ Result projectDetail(TokenDto userDetail, String id);
+
+ /**
+ * 提交评论或回复接口
+ */
+ Result submit(@LoginUser TokenDto userDetail, TopicCommentFormDTO topicCommentFormDTO);
+
+ /**
+ * 评论(赞/踩)
+ */
+ Result statement(@LoginUser TokenDto userDetail, TopicCommentStatementFormDTO topicCommentStatementFormDTO);
+
+
+ /**
+ * 评论列表
+ */
+ Result listOfComments(TokenDto userDetail, TopicCommentsFormDTO topicCommentsFormDTO);
+
+ /**
+ *
+ * 我的话题列表
+ *
+ * @params [userDetail, formDto]
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @author liuchuang
+ * @since 2019/11/11 15:50
+ */
+ Result> listTopicOfMine(TokenDto userDetail, TopicListFormDTO formDto);
+}
diff --git a/epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/PropertyServiceImpl.java b/epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/PropertyServiceImpl.java
new file mode 100644
index 0000000..ec71333
--- /dev/null
+++ b/epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/PropertyServiceImpl.java
@@ -0,0 +1,272 @@
+package com.elink.esua.epdc.service.impl;
+
+import com.elink.esua.epdc.async.WxMaSecCheckTask;
+import com.elink.esua.epdc.common.token.dto.TokenDto;
+import com.elink.esua.epdc.commons.tools.enums.UserTagEnum;
+import com.elink.esua.epdc.commons.tools.enums.YesOrNoEnum;
+import com.elink.esua.epdc.commons.tools.utils.Result;
+import com.elink.esua.epdc.dto.ParentAndAllDeptDTO;
+import com.elink.esua.epdc.dto.comment.TopicCommentFormDTO;
+import com.elink.esua.epdc.dto.comment.TopicCommentStatementFormDTO;
+import com.elink.esua.epdc.dto.comment.TopicCommentsFormDTO;
+import com.elink.esua.epdc.dto.comment.result.EventCommentsResultDTO;
+import com.elink.esua.epdc.dto.enums.TopicStateEnum;
+import com.elink.esua.epdc.dto.epdc.form.EpdcUserGroupInviteFormDTO;
+import com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO;
+import com.elink.esua.epdc.dto.group.form.*;
+import com.elink.esua.epdc.dto.group.result.*;
+import com.elink.esua.epdc.dto.project.form.ProjectDetailFormDTO;
+import com.elink.esua.epdc.dto.project.form.ProjectListFormDTO;
+import com.elink.esua.epdc.dto.project.result.ProjectDetailResultDTO;
+import com.elink.esua.epdc.dto.project.result.ProjectListResultDTO;
+import com.elink.esua.epdc.dto.topic.form.*;
+import com.elink.esua.epdc.dto.topic.result.TopicDetailResultDTO;
+import com.elink.esua.epdc.dto.topic.result.TopicListResultDTO;
+import com.elink.esua.epdc.feign.AdminFeignClient;
+import com.elink.esua.epdc.feign.PropertyFeignClient;
+import com.elink.esua.epdc.service.PropertyService;
+import com.elink.esua.epdc.utils.UserTagUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+
+/**
+ * @author: qushutong
+ * @Date: 2020/5/12 13:23
+ * @Description: 社群相关
+ */
+@Service
+public class PropertyServiceImpl implements PropertyService {
+
+ @Autowired
+ private AdminFeignClient adminFeignClient;
+
+ @Autowired
+ private PropertyFeignClient propertyFeignClient;
+
+ @Autowired
+ private WxMaSecCheckTask wxMaSecCheckTask;
+
+ @Override
+ public Result getGroupDetail(TokenDto userDetail, String id) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ GroupDetailForMobileEndFormDTO formDto = new GroupDetailForMobileEndFormDTO();
+ formDto.setId(id);
+ formDto.setUserId(userDetail.getUserId());
+ return propertyFeignClient.detail(formDto);
+ }
+
+ @Override
+ public Result modifyIntroduction(TokenDto userDetail, GroupIntroductionFormDTO formDto) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ formDto.setUserId(userDetail.getUserId());
+ return propertyFeignClient.modifyIntroduction(formDto);
+ }
+
+ @Override
+ public Result modifyAvatar(TokenDto userDetail, GroupModifyAvatarFormDTO formDto) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ formDto.setUserId(userDetail.getUserId());
+ return propertyFeignClient.modifyAvatar(formDto);
+ }
+
+ @Override
+ public Result> listOfMember(GroupUsersFormDTO formDto) {
+ return propertyFeignClient.listOfMember(formDto);
+ }
+
+ @Override
+ public Result removeMember(TokenDto userDetail, GroupUserRemoveOrQuitFormDTO formDto) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ formDto.setOperatorId(userDetail.getUserId());
+ return propertyFeignClient.removeMember(formDto);
+ }
+
+ @Override
+ public Result quitGroup(TokenDto userDetail, GroupUserRemoveOrQuitFormDTO formDto) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ formDto.setOperatorId(userDetail.getUserId());
+ formDto.setUserId(userDetail.getUserId());
+ return propertyFeignClient.quitGroup(formDto);
+ }
+
+ @Override
+ public Result> listOfInviteUsers(TokenDto userDetail, EpdcUserGroupInviteFormDTO formDto) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ formDto.setGridId(userDetail.getGridId());
+ return propertyFeignClient.getInviteList(formDto);
+ }
+
+ @Override
+ public Result saveGroupUsers(GroupAddUserFormDTO formDto) {
+ return propertyFeignClient.addMember(formDto);
+ }
+
+ @Override
+ public Result updateGroupUsers(GroupUserReviewFormDTO formDto) {
+ return propertyFeignClient.reviewApply(formDto);
+ }
+
+ @Override
+ public Result applyForGroup(TokenDto userDetail, GroupApplyFormDTO formDto) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ formDto.setUserId(userDetail.getUserId());
+ formDto.setNickname(userDetail.getNickname());
+ formDto.setUserAvatar(userDetail.getFaceImg());
+ formDto.setMobile(userDetail.getMobile());
+ if (UserTagUtils.containIdentity(userDetail.getUserTagInfos(), UserTagEnum.PARTY_MEMBER)) {
+ formDto.setPartyMember(YesOrNoEnum.YES.value());
+ } else {
+ formDto.setPartyMember(YesOrNoEnum.NO.value());
+ }
+ return propertyFeignClient.applyForGroup(formDto);
+ }
+
+
+ @Override
+ public Result saveTopic(TokenDto userDetail, TopicSubmitFormDTO formDto) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ //获取所有上级机构名称和ID拼接
+ Result dtoResult = adminFeignClient.getParentAndAllDept(userDetail.getGridId());
+ ParentAndAllDeptDTO deptDTO = dtoResult.getData();
+ // 父所有部门
+ formDto.setParentDeptIds(deptDTO.getParentDeptIds());
+ formDto.setParentDeptNames(deptDTO.getParentDeptNames());
+ // 所有部门
+ formDto.setAllDeptIds(deptDTO.getAllDeptIds());
+ formDto.setAllDeptNames(deptDTO.getAllDeptNames());
+ // 网格
+ formDto.setGrid(deptDTO.getGrid());
+ formDto.setGridId(deptDTO.getGridId());
+
+ formDto.setUserId(userDetail.getUserId());
+ formDto.setUserFace(userDetail.getFaceImg());
+ formDto.setNickname(userDetail.getNickname());
+ if (UserTagUtils.containIdentity(userDetail.getUserTagInfos(), UserTagEnum.PARTY_MEMBER)) {
+ formDto.setPartyMember(YesOrNoEnum.YES.value());
+ } else {
+ formDto.setPartyMember(YesOrNoEnum.NO.value());
+ }
+ formDto.setMobile(userDetail.getMobile());
+ formDto.setState(TopicStateEnum.TOPIC_STATE_IN_CONVERSATION.getValue());
+
+ return propertyFeignClient.submit(formDto);
+ }
+
+ @Override
+ public Result getTopicDetailById(TokenDto userDetail, String id) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ TopicDetailFormDTO formDto = new TopicDetailFormDTO();
+ formDto.setId(id);
+ formDto.setUserId(userDetail.getUserId());
+ return propertyFeignClient.detail(formDto);
+ }
+
+ @Override
+ public Result closeTopic(TokenDto userDetail, TopicCloseFormDTO formDto) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ formDto.setUserId(userDetail.getUserId());
+ return propertyFeignClient.close(formDto);
+ }
+
+
+ @Override
+ public Result> listOfTopic(TokenDto userDetail, TopicListFormDTO formDto) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ formDto.setGridId(userDetail.getGridId());
+ formDto.setCurrentUserId(userDetail.getUserId());
+ return propertyFeignClient.listOfTopic(formDto);
+ }
+
+ @Override
+ public Result> projectList(TokenDto userDetail, ProjectListFormDTO formDto) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ formDto.setUserId(userDetail.getUserId());
+ formDto.setGridId(userDetail.getGridId());
+ return propertyFeignClient.projectList(formDto);
+ }
+
+ @Override
+ public Result projectDetail(TokenDto userDetail, String id) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ ProjectDetailFormDTO formDto = new ProjectDetailFormDTO();
+ formDto.setId(id);
+ formDto.setUserId(userDetail.getUserId());
+ formDto.setGridId(userDetail.getGridId());
+ return propertyFeignClient.projectDetail(formDto);
+ }
+
+ @Override
+ public Result submit(TokenDto userDetail, TopicCommentFormDTO topicCommentFormDTO) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ // 上传内容安全检查
+ wxMaSecCheckTask.checkMessage(topicCommentFormDTO.getContent());
+ topicCommentFormDTO.setUserId(userDetail.getUserId());
+ topicCommentFormDTO.setUserName(userDetail.getNickname());
+ topicCommentFormDTO.setUserFace(userDetail.getFaceImg());
+ if (UserTagUtils.containIdentity(userDetail.getUserTagInfos(), UserTagEnum.PARTY_MEMBER)) {
+ topicCommentFormDTO.setPartyFlag(YesOrNoEnum.YES.value());
+ } else {
+ topicCommentFormDTO.setPartyFlag(YesOrNoEnum.NO.value());
+ }
+ return propertyFeignClient.submit(topicCommentFormDTO);
+ }
+
+ @Override
+ public Result statement(TokenDto userDetail, TopicCommentStatementFormDTO topicCommentStatementFormDTO) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ topicCommentStatementFormDTO.setUseId(userDetail.getUserId());
+ topicCommentStatementFormDTO.setUserName(userDetail.getNickname());
+ return propertyFeignClient.statement(topicCommentStatementFormDTO);
+ }
+
+ @Override
+ public Result listOfComments(TokenDto userDetail, TopicCommentsFormDTO topicCommentsFormDTO) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ topicCommentsFormDTO.setUserId(userDetail.getUserId());
+ return propertyFeignClient.listOfComments(topicCommentsFormDTO);
+ }
+
+ @Override
+ public Result> listTopicOfMine(TokenDto userDetail, TopicListFormDTO formDto) {
+ if (null == userDetail) {
+ return new Result().error("获取用户信息失败");
+ }
+ formDto.setUserId(userDetail.getUserId());
+ return propertyFeignClient.listOfTopic(formDto);
+ }
+}