From 74803a8987f942f94f703fbbf57a4e7d8d7ea44a Mon Sep 17 00:00:00 2001
From: 罗元桥 <2376770955@qq.com>
Date: 星期一, 30 八月 2021 13:13:36 +0800
Subject: [PATCH] Merge branch 'yuyue_dev' into 'test'

---
 springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/DiscussApi.java |   98 ++++++++++++++++++++++++++++++++----------------
 1 files changed, 65 insertions(+), 33 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/DiscussApi.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/DiscussApi.java
index e6b1717..b5bc7dc 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/DiscussApi.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/DiscussApi.java
@@ -1,23 +1,28 @@
 package com.panzhihua.applets.api;
 
+import java.util.List;
+
+import javax.annotation.Resource;
+
+import org.springframework.util.ObjectUtils;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import com.panzhihua.applets.weixin.CheckService;
 import com.panzhihua.common.controller.BaseController;
 import com.panzhihua.common.model.dtos.community.*;
+import com.panzhihua.common.model.dtos.community.integral.admin.AddComActIntegralUserDTO;
 import com.panzhihua.common.model.vos.LoginUserInfoVO;
 import com.panzhihua.common.model.vos.R;
 import com.panzhihua.common.model.vos.community.ComActDiscussCommentVO;
 import com.panzhihua.common.model.vos.community.ComActDiscussVO;
 import com.panzhihua.common.service.community.CommunityService;
 import com.panzhihua.common.validated.AddGroup;
+
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.util.ObjectUtils;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
-
-import javax.annotation.Resource;
-import java.util.List;
 
 /**
  * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -32,24 +37,33 @@
 public class DiscussApi extends BaseController {
     @Resource
     private CommunityService communityService;
+    @Resource
+    private CheckService checkService;
 
     @ApiOperation(value = "一起议-新增")
     @PostMapping("discuss")
     public R addDiscuss(@RequestBody @Validated(AddGroup.class) ComActDiscussDTO comActDiscussDTO) {
+        // 微信内容审核
+        String discussSubject = comActDiscussDTO.getDiscussSubject();
+        if (!checkService.checkMessage(discussSubject)) {
+            return R.fail("内容违规");
+        }
         Integer type = comActDiscussDTO.getType();
         String voteTitle = comActDiscussDTO.getVoteTitle();
-        List<String> discussOptions = comActDiscussDTO.getDiscussOptions();
-        if (type.intValue()==2 ) {
-            if(ObjectUtils.isEmpty(voteTitle)){
+        List<ComActDiscussOptionDTO> discussOptions = comActDiscussDTO.getDiscussOptions();
+        if (type.equals(2)) {
+            if (ObjectUtils.isEmpty(voteTitle)) {
                 return R.fail("投票标题不能为空");
             }
-            if(ObjectUtils.isEmpty(discussOptions)){
+            if (ObjectUtils.isEmpty(discussOptions)) {
                 return R.fail("选项不能为空");
             }
         }
         String address = comActDiscussDTO.getAddress();
         if (ObjectUtils.isEmpty(address)) {
             return R.fail("地址不能为空");
+        } else if (address.contains("null")) {
+            comActDiscussDTO.setAddress(null);
         }
         LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
         Long userId = loginUserInfo.getUserId();
@@ -59,17 +73,19 @@
         return communityService.addDiscuss(comActDiscussDTO);
     }
 
-
-    @ApiOperation(value = "一起议-分页查询",response = ComActDiscussVO.class)
+    @ApiOperation(value = "一起议-分页查询", response = ComActDiscussVO.class)
     @PostMapping("pagediscuss")
     public R pageDiscuss(@RequestBody PageComActDiscussDTO pageComActDiscussDTO) {
-        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
-        pageComActDiscussDTO.setCommunityId(loginUserInfo.getCommunityId());
-        Integer isMy = pageComActDiscussDTO.getIsMy();
-        if (null!=isMy&&isMy.intValue()==1) {
-            pageComActDiscussDTO.setUserId(loginUserInfo.getUserId());
+        LoginUserInfoVO loginUserInfo = this.getLoginUserInfoSureNoLogin();
+        if (loginUserInfo != null) {
+            pageComActDiscussDTO.setCommunityId(loginUserInfo.getCommunityId());
+            pageComActDiscussDTO.setLoginUserId(loginUserInfo.getUserId());
+
+            Integer isMy = pageComActDiscussDTO.getIsMy();
+            if (null != isMy && isMy.intValue() == 1) {
+                pageComActDiscussDTO.setUserId(loginUserInfo.getUserId());
+            }
         }
-        pageComActDiscussDTO.setLoginUserId(loginUserInfo.getUserId());
         return communityService.pageDiscussApplets(pageComActDiscussDTO);
     }
 
@@ -81,10 +97,15 @@
             return R.fail("回复不能为空");
         }
         Long discussId = comActDiscussCommentDTO.getDiscussId();
-        if (null==discussId||0==discussId) {
+        if (null == discussId || 0 == discussId) {
             return R.fail("一起议主键不能为空");
         }
         comActDiscussCommentDTO.setUserId(this.getUserId());
+        // 议事投票计算积分
+        AddComActIntegralUserDTO integralUserDTO = new AddComActIntegralUserDTO(discussId,
+            AddComActIntegralUserDTO.integralType.cyystp, this.getCommunityId(), this.getUserId());
+        integralUserDTO.setIsComment(1);
+        communityService.addIntegralTradeAdmin(integralUserDTO);
         return communityService.addDiscussComment(comActDiscussCommentDTO);
 
     }
@@ -103,22 +124,31 @@
         return communityService.putDiscussCommentUser(comActDiscussUserDTO);
     }
 
-    @ApiOperation(value = "一起议-详情",response = ComActDiscussVO.class)
+    @ApiOperation(value = "一起议-详情", response = ComActDiscussVO.class)
     @GetMapping("discuss")
-    @ApiImplicitParam(name = "id",value = "一起议主键",required = true)
+    @ApiImplicitParam(name = "id", value = "一起议主键", required = true)
     public R detailDiscuss(@RequestParam("id") Long id) {
-        Long userId = this.getUserId();
-        return communityService.detailDiscussApplets(id,userId);
+        Long userId = 0L;
+        LoginUserInfoVO loginUserInfo = this.getLoginUserInfoSureNoLogin();
+        if (loginUserInfo != null) {
+            userId = loginUserInfo.getUserId();
+        }
+        return communityService.detailDiscussApplets(id, userId);
     }
 
-    @ApiOperation(value = "一起议-评论-分页查询",response = ComActDiscussCommentVO.class)
+    @ApiOperation(value = "一起议-评论-分页查询", response = ComActDiscussCommentVO.class)
     @PostMapping("pagediscusscomment")
     public R pageDiscussComment(@RequestBody PageComActDiscussCommentDTO pageComActDiscussCommentDTO) {
         Long id = pageComActDiscussCommentDTO.getId();
-        if (null==id||0==id) {
+        if (null == id || 0 == id) {
             return R.fail("一起议主键不能为空");
         }
-        pageComActDiscussCommentDTO.setLoginUserId(this.getUserId());
+        Long userId = 0L;
+        LoginUserInfoVO loginUserInfo = this.getLoginUserInfoSureNoLogin();
+        if (loginUserInfo != null) {
+            userId = loginUserInfo.getUserId();
+        }
+        pageComActDiscussCommentDTO.setLoginUserId(userId);
         return communityService.pageDiscussCommentApplets(pageComActDiscussCommentDTO);
     }
 
@@ -130,7 +160,7 @@
             return R.fail("回复不能为空");
         }
         Long id = comActDiscussCommentDTO.getId();
-        if (null==id||0==id) {
+        if (null == id || 0 == id) {
             return R.fail("评论主键不能为空");
         }
         comActDiscussCommentDTO.setUserId(this.getUserId());
@@ -139,18 +169,20 @@
 
     @ApiOperation(value = "一起议-投票")
     @GetMapping("discussoptionuser")
-    @ApiImplicitParam(name = "id",value = "一起议选项主键",required = true)
+    @ApiImplicitParam(name = "id", value = "一起议选项主键", required = true)
     public R addDiscussOptionUser(@RequestParam("id") Long id) {
-        if (null==id||0==id) {
+        if (null == id || 0 == id) {
             return R.fail("选项主键不能为空");
         }
-        ComActDiscussOptionUserDTO comActDiscussOptionUserDTO=new ComActDiscussOptionUserDTO();
+        ComActDiscussOptionUserDTO comActDiscussOptionUserDTO = new ComActDiscussOptionUserDTO();
         comActDiscussOptionUserDTO.setDiscussOptionId(id);
         comActDiscussOptionUserDTO.setUserId(this.getUserId());
+        // 议事投票计算积分
+        AddComActIntegralUserDTO integralUserDTO = new AddComActIntegralUserDTO(id,
+            AddComActIntegralUserDTO.integralType.cyystp, this.getCommunityId(), this.getUserId());
+        integralUserDTO.setIsComment(2);
+        communityService.addIntegralTradeAdmin(integralUserDTO);
         return communityService.addDiscussOptionUser(comActDiscussOptionUserDTO);
     }
-
-
-
 
 }

--
Gitblit v1.7.1