lidongdong
2023-10-11 2af69b8d4e804397799c89e2aa0d837c6de738a8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
package com.panzhihua.applets.api;
 
 
import com.alibaba.fastjson.JSONObject;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.ComActActivityVO;
import com.panzhihua.common.model.vos.community.SignactivityVO;
import com.panzhihua.common.model.vos.user.SysUserNoticeVO;
import com.panzhihua.common.service.community.CommunityService;
import com.panzhihua.common.service.jinhui.JinhuiCommunityService;
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.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
 
import javax.annotation.Resource;
import java.util.Date;
 
@Slf4j
@RestController
@RequestMapping("/JinHui/")
@Api(tags = {"金汇社区api"})
public class JinHuiCommnuityApi  extends BaseController
{
 
    @Resource
    private CommunityService communityService;
 
    @Resource
    private JinhuiCommunityService jinhuiCommunityService;
 
    @Resource
    private UserService userService;
 
    @ApiOperation(value = "新增服务活动")
    @PostMapping("add/activity")
    public R addActivity(@RequestBody @Validated(AddGroup.class) ComActActivityVO comActActivityVO) {
        Long communityId = this.getCommunityId();
        comActActivityVO.setCommunityId(communityId);
        comActActivityVO.setUserId(this.getLoginUserInfo().getUserId());
        comActActivityVO.setStatus(2);
        comActActivityVO.setHasPrize(0);
        comActActivityVO.setHaveIntegralReward(0);
        return communityService.addActivity(comActActivityVO);
    }
 
 
    @ApiOperation(value = "报名/取消报名社区活动")
    @PutMapping("signactivity")
    public R signActivity(@RequestBody @Validated(AddGroup.class) SignactivityVO signactivityVO) {
        Long userId = this.getUserId();
        Long activityId = signactivityVO.getActivityId();
        signactivityVO.setUserId(userId);
        R r = jinhuiCommunityService.signActivity(signactivityVO);
        if (R.isOk(r) && signactivityVO.getType().intValue() == 1) {
            R r2 = communityService.detailActivity(activityId, userId, null, null);
            ComActActivityVO comActActivityVO =
                    JSONObject.parseObject(JSONObject.toJSONString(r2.getData()), ComActActivityVO.class);
            Integer isVolunteer = JSONObject.parseObject(JSONObject.toJSONString(r.getData()), Integer.class);
            SysUserNoticeVO sysUserNoticeVO = new SysUserNoticeVO();
            sysUserNoticeVO.setUserId(userId);
            sysUserNoticeVO.setType(1);
            sysUserNoticeVO.setTitle("报名成功");
            sysUserNoticeVO.setBusinessType(1);
            sysUserNoticeVO.setBusinessTitle(comActActivityVO.getActivityName());
            Date beginAt = comActActivityVO.getBeginAt();
            sysUserNoticeVO.setBusinessContent(String.format("活动将于%tF %tT  开始,请按时参加", beginAt, beginAt));
            sysUserNoticeVO.setBusinessId(activityId);
            sysUserNoticeVO.setStatus(0);
            sysUserNoticeVO.setActivityType(comActActivityVO.getType());
            sysUserNoticeVO.setBusinessStatus(2);
            R r1 = userService.addNotice(sysUserNoticeVO);
            if (R.isOk(r1)) {
                log.info("新增用户报名社区活动通知成功【{}】", JSONObject.toJSONString(sysUserNoticeVO));
            }
        }
        return r;
    }
 
 
 
}