From 3ca7f722f25c1908bc4588c75dbde1f56a8d9877 Mon Sep 17 00:00:00 2001
From: DESKTOP-71BH0QO\L、ming <172680469@qq.com>
Date: 星期五, 26 三月 2021 10:08:46 +0800
Subject: [PATCH] Merge branch 'master' of http://gitlab.nhys.cdnhxx.com/root/zhihuishequ

---
 springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/PartyBuildingApi.java |  168 +++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 143 insertions(+), 25 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/PartyBuildingApi.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/PartyBuildingApi.java
index 690d7fb..4bf2734 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/PartyBuildingApi.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/PartyBuildingApi.java
@@ -1,12 +1,23 @@
 package com.panzhihua.applets.api;
 
+import com.alibaba.fastjson.JSONObject;
+import com.panzhihua.applets.weixin.CheckService;
 import com.panzhihua.common.controller.BaseController;
+import com.panzhihua.common.model.dtos.partybuilding.ActivitySignUpDTO;
+import com.panzhihua.common.model.dtos.partybuilding.ComPbActivityDTO;
+import com.panzhihua.common.model.dtos.partybuilding.PageComPbServiceTeamDTO;
+import com.panzhihua.common.model.vos.LoginUserInfoVO;
 import com.panzhihua.common.model.vos.R;
 import com.panzhihua.common.model.vos.partybuilding.*;
+import com.panzhihua.common.model.vos.user.SysUserNoticeVO;
 import com.panzhihua.common.service.partybuilding.PartyBuildingService;
+import com.panzhihua.common.service.user.UserService;
+import com.panzhihua.common.validated.AddGroup;
 import io.swagger.annotations.Api;
 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;
@@ -18,71 +29,178 @@
  * @author: huang.hongfa weixin hhf9596 qq 959656820
  * @create: 2020-12-02 16:19
  **/
+@Slf4j
 @RestController
 @RequestMapping("/partybuilding/")
 @Api(tags = {"党群服务"})
 public class PartyBuildingApi extends BaseController {
     @Resource
     private PartyBuildingService partyBuildingService;
+    @Resource
+    private UserService userService;
+    @Resource
+    private CheckService checkService;
 
-    @ApiOperation(value = "分页党建动态/政策文件",response =PartyCommitteeVO.class )
+    @ApiOperation(value = "分页党建动态/政策文件",response =PartyBuildingComPbDynVO.class )
     @PostMapping("pagedynamic")
     public R pageYnamic(@RequestBody PartyBuildingComPbDynVO partyBuildingComPbDynVO){
-        Long communityId=1l;//todo 获取社区id
+        Long communityId = this.getCommunityId();
         Integer type = partyBuildingComPbDynVO.getType();
         if (ObjectUtils.isEmpty(type)) {
             return R.fail("类型不能为空");
         }
         partyBuildingComPbDynVO.setCommunityId(communityId);
-        R r = partyBuildingService.pageYnamic(partyBuildingComPbDynVO);
-        return r;
+        partyBuildingComPbDynVO.setStatus(2);
+        return partyBuildingService.pageYnamic(partyBuildingComPbDynVO);
     }
 
     @ApiOperation(value = "分页查询党员活动",response = PageActivityMembersVO.class)
     @PostMapping("pageactivity")
     public R pageActivity(@RequestBody PartyBuildingActivityVO partyBuildingActivityVO) {
-        R r = partyBuildingService.pageActivity(partyBuildingActivityVO);
-        return r;
+        Long communityId = this.getCommunityId();
+        partyBuildingActivityVO.setCommunityId(communityId);
+        Integer status = partyBuildingActivityVO.getStatus();
+        if (null!=status&&status.intValue()==4) {
+            partyBuildingActivityVO.setIsAppliets(1);
+        }
+        return partyBuildingService.pageActivity(partyBuildingActivityVO);
     }
 
     @ApiOperation(value = "动态/政策文件详情",response =PartyBuildingComPbDynVO.class )
     @GetMapping("infodynamic")
     public R infoYnamic(@RequestParam("id") Long id) {
         R r = partyBuildingService.infoYnamic(id);
+        if (R.isOk(r)) {
+            if (ObjectUtils.isEmpty(id)||0==id) {
+                return R.fail("主键id不能为空");
+            }
+            Long userId = this.getUserId();
+            ComPbDynUserVO comPbDynUserVO=new ComPbDynUserVO();
+            comPbDynUserVO.setCreateAt(new Date());
+            comPbDynUserVO.setDynId(id);
+            comPbDynUserVO.setUserId(userId);
+            R r1 = partyBuildingService.addDynUser(comPbDynUserVO);
+            PartyBuildingComPbDynVO partyBuildingComPbDynVO=JSONObject.parseObject(JSONObject.toJSONString(r.getData()),PartyBuildingComPbDynVO.class);
+            if (R.isOk(r1)) {
+                partyBuildingComPbDynVO.setIsAdd(1);
+            }else{
+                partyBuildingComPbDynVO.setIsAdd(0);
+            }
+            return R.ok(partyBuildingComPbDynVO);
+        }
         return r;
     }
 
-    @ApiOperation(value = "增加阅读记录")
-    @GetMapping("adddynuser")
-    public R addDynUser(@RequestParam("id") Long id) {
-        if (ObjectUtils.isEmpty(id)) {
-            return R.fail("主键id不能为空");
-        }
-        Long userId = this.getUserId();
-        ComPbDynUserVO comPbDynUserVO=new ComPbDynUserVO();
-        comPbDynUserVO.setCreateAt(new Date());
-        comPbDynUserVO.setDynId(id);
-        comPbDynUserVO.setUserId(userId);
-        R r = partyBuildingService.addDynUser(comPbDynUserVO);
-        return r;
-    }
+//    @ApiOperation(value = "增加阅读记录")
+//    @PostMapping("adddynuser")
+//    public R addDynUser(@RequestBody PartyBuildingComPbDynVO partyBuildingComPbDynVO) {
+//        Long id = partyBuildingComPbDynVO.getId();
+//        if (ObjectUtils.isEmpty(id)||0==id) {
+//            return R.fail("主键id不能为空");
+//        }
+//        Long userId = this.getUserId();
+//        ComPbDynUserVO comPbDynUserVO=new ComPbDynUserVO();
+//        comPbDynUserVO.setCreateAt(new Date());
+//        comPbDynUserVO.setDynId(id);
+//        comPbDynUserVO.setUserId(userId);
+//        return partyBuildingService.addDynUser(comPbDynUserVO);
+//    }
 
     @ApiOperation(value = "分页党委查询",response =PartyCommitteeVO.class )
     @PostMapping("pagepartycommittee")
     public R pagePartyCommittee(@RequestBody PartyCommitteeVO partyCommitteeVO) {
-        //todo 获取用户的社区信息
-        Long communityId = 1l;
+        Long communityId =this.getCommunityId();
         partyCommitteeVO.setCommunityId(communityId);
-        R r = partyBuildingService.pagePartyCommittee(partyCommitteeVO);
-        return r;
+        return partyBuildingService.pagePartyCommittee(partyCommitteeVO);
     }
 
     @ApiOperation(value = "活动详情",response = PartyBuildingActivityVO.class)
     @GetMapping("activityinfo")
     public R activityinfo(@RequestParam("id") Long id) {
-        R r = partyBuildingService.activityinfo(id);
+        Long userId = this.getUserId();
+        return partyBuildingService.activityinfo(id,userId);
+    }
+
+    @ApiOperation(value = "党员活动人员参入列表",response = PartyBuildingMemberVO.class)
+    @GetMapping("listpartybuildingmember")
+    public R listPartyBuildingMember(@RequestParam("id") Long id) {
+        return partyBuildingService.listPartyBuildingMember(id);
+    }
+
+    @ApiOperation(value = "报名、取消报名党员活动")
+    @PutMapping("activitysignup")
+    public R putActivitySignUp(@RequestBody @Validated ActivitySignUpDTO activitySignUpDTO) {
+        Long userId = this.getUserId();
+        activitySignUpDTO.setUserId(userId);
+        Long id = activitySignUpDTO.getId();
+        R r = partyBuildingService.putActivitySignUp(activitySignUpDTO);
+        if (R.isOk(r)&&activitySignUpDTO.getType().intValue()==1) {
+            R r2 = partyBuildingService.activityinfo(id, userId);
+            PartyBuildingActivityVO partyBuildingActivityVO=JSONObject.parseObject(JSONObject.toJSONString(r2.getData()),PartyBuildingActivityVO.class);
+            SysUserNoticeVO sysUserNoticeVO=new SysUserNoticeVO();
+            sysUserNoticeVO.setUserId(userId);
+            sysUserNoticeVO.setType(1);
+            sysUserNoticeVO.setTitle("报名成功");
+            sysUserNoticeVO.setBusinessType(2);
+            sysUserNoticeVO.setBusinessTitle(partyBuildingActivityVO.getName());
+            Date activityTimeBegin = partyBuildingActivityVO.getActivityTimeBegin();
+            sysUserNoticeVO.setBusinessContent(String.format("活动将于 %tF %tT  开始,请按时参加", activityTimeBegin,activityTimeBegin));
+            sysUserNoticeVO.setBusinessId(id);
+            sysUserNoticeVO.setStatus(0);
+            sysUserNoticeVO.setBusinessStatus(2);
+            R r1 = userService.addNotice(sysUserNoticeVO);
+            if (R.isOk(r1)) {
+                log.info("新增用户报名党建活动通知成功【{}】", JSONObject.toJSONString(sysUserNoticeVO));
+            }
+        }
         return r;
     }
 
+    @ApiOperation(value = "创建党员活动")
+    @PostMapping("activityinfo")
+    public R addActivityinfo(@RequestBody @Validated(AddGroup.class) ComPbActivityDTO comPbActivityDTO) {
+        //        微信内容审核
+        String msg = comPbActivityDTO.getRichText();
+        if (!checkService.checkMessage(msg)) {
+            return R.fail("内容违规");
+        }
+        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
+        Long userId = loginUserInfo.getUserId();
+        Long communityId = loginUserInfo.getCommunityId();
+        comPbActivityDTO.setCreateBy(userId);
+        comPbActivityDTO.setCommunityId(communityId);
+        Date date=new Date();
+        comPbActivityDTO.setReleaseTime(date);
+        Date activityTimeBegin = comPbActivityDTO.getActivityTimeBegin();
+        Date activityTimeEnd = comPbActivityDTO.getActivityTimeEnd();
+        boolean before = activityTimeEnd.before(activityTimeBegin);
+        if (before) {
+            return R.fail("活动结束时间不能早于开始时间");
+        }
+//        1 待发布 2 未开始 3 报名中 4 进行中 5 已结束 6 已取消
+        int status=2;
+        Date enrollTimeBegin = comPbActivityDTO.getEnrollTimeBegin();
+        Date enrollTimeEnd = comPbActivityDTO.getEnrollTimeEnd();
+        if (enrollTimeEnd.before(enrollTimeBegin)) {
+            return R.fail("报名结束时间不能早于报名开始时间");
+        }
+        if (enrollTimeBegin.before(date)) {
+            status=3;
+        }
+        comPbActivityDTO.setStatus(status);
+        return partyBuildingService.addActivityApplets(comPbActivityDTO);
+    }
 
+    @ApiOperation(value = "分页查询服务团队成员",response = ComPbServiceTeamVO.class)
+    @PostMapping("pageserviceteam")
+    public R pageServiceTeam(@RequestBody PageComPbServiceTeamDTO pageComPbServiceTeamDTO) {
+        pageComPbServiceTeamDTO.setCommunityId(this.getCommunityId());
+        return partyBuildingService.pageServiceTeam(pageComPbServiceTeamDTO);
+    }
+
+    public static void main(String[] args) {
+        Date date = new Date();
+        String dateFormat = String.format("%tF %tT ", date, date);
+        System.out.println(dateFormat);
+    }
 }

--
Gitblit v1.7.1