From f8b116ce4c5edea7e33c31347d2065ce33fa5f53 Mon Sep 17 00:00:00 2001 From: puhanshu <a9236326> Date: 星期五, 22 十月 2021 09:41:10 +0800 Subject: [PATCH] 活动积分优化相关代码提交 --- springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComBpActivityServiceImpl.java | 120 +--- springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/partybuilding/ActivitySignUpDTO.java | 3 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java | 13 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActSignMapper.xml | 22 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActivityTypeVO.java | 37 + springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PageActivityMembersVO.java | 10 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComPbActivityDO.java | 28 - springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java | 30 + springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingApi.java | 15 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActActEvaluateService.java | 8 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java | 36 + springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/ComPbActivityMemberDAO.java | 45 - springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActRegistVO.java | 3 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java | 346 +++++++++------ springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PartyBuildingActivityVO.java | 29 - springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActRegistMapper.xml | 2 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActActivityService.java | 22 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/MyActivityEvaluateVO.java | 25 + springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActivityMapper.xml | 26 + springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/api/PartyBuildIngApi.java | 27 - springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActivityVO.java | 11 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActActivityDO.java | 4 springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/model/dos/ComPbActivityMemberDO.java | 10 springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityApi.java | 56 + springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/HttpStatus.java | 5 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActEvaluateServiceImpl.java | 41 + /dev/null | 71 --- springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/ComBpActivityService.java | 18 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java | 42 + springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java | 7 springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/ComBpActivityDAO.java | 40 springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/model/dos/ComPbActivityDO.java | 30 - springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/partybuilding/PartyBuildingService.java | 21 springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityActivityApi.java | 105 ++- 34 files changed, 695 insertions(+), 613 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityApi.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityApi.java index abca450..9e3167e 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/CommunityApi.java @@ -4,25 +4,47 @@ import javax.annotation.Resource; -import com.panzhihua.common.model.dtos.community.PageComMngVillageDTO; -import com.panzhihua.common.service.partybuilding.PartyBuildingService; +import com.panzhihua.common.model.vos.community.MyActivityEvaluateVO; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; import com.alibaba.fastjson.JSONObject; import com.panzhihua.common.controller.BaseController; import com.panzhihua.common.model.dtos.community.ComMngCarAppletDTO; +import com.panzhihua.common.model.dtos.community.PageComMngVillageDTO; import com.panzhihua.common.model.dtos.community.PageVolunteerDTO; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; -import com.panzhihua.common.model.vos.community.*; +import com.panzhihua.common.model.vos.community.ActivitySignInRecordVO; +import com.panzhihua.common.model.vos.community.ActivitySignVO; +import com.panzhihua.common.model.vos.community.ComActActEvaluateVO; +import com.panzhihua.common.model.vos.community.ComActActRegistVO; +import com.panzhihua.common.model.vos.community.ComActActivityVO; +import com.panzhihua.common.model.vos.community.ComActDynVO; +import com.panzhihua.common.model.vos.community.ComMngCarVO; +import com.panzhihua.common.model.vos.community.ComMngStructAreaVO; +import com.panzhihua.common.model.vos.community.ComMngVillageVO; +import com.panzhihua.common.model.vos.community.ComMngVolunteerMngAppletsVO; +import com.panzhihua.common.model.vos.community.ComMngVolunteerMngVO; +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.partybuilding.PartyBuildingService; import com.panzhihua.common.service.user.UserService; import com.panzhihua.common.validated.AddGroup; import com.panzhihua.common.validated.PageGroup; -import io.swagger.annotations.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; import lombok.extern.slf4j.Slf4j; /** @@ -144,18 +166,24 @@ return communityService.activityEvaluate(comActActEvaluateVO); } + @ApiOperation(value = "我的评价", response = MyActivityEvaluateVO.class) + @GetMapping("activity/my-evaluate") + public R listMyActivityEvaluate(@RequestParam("activityId") Long activityId) { + return communityService.listMyActivityEvaluate(getUserId(), activityId); + } + @ApiOperation(value = "报名/取消报名社区活动") @PutMapping("signactivity") public R signActivity(@RequestBody @Validated(AddGroup.class) SignactivityVO signactivityVO) { Long userId = this.getUserId(); Long activityId = signactivityVO.getActivityId(); - Integer isVolunteer = signactivityVO.getIsVolunteer(); signactivityVO.setUserId(userId); R r = communityService.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); @@ -203,26 +231,22 @@ } if (type.intValue() == 1) { return communityService.listSignInRecord(id); - } else { - return partyBuildingService.listSignInRecord(id); } + return R.fail("type不存在"); } @ApiOperation(value = "活动签到记录", response = ComActActRegistVO.class) @ApiImplicitParams({ - @ApiImplicitParam(name = "id", value = "社区活动主键", required = true), - @ApiImplicitParam(name = "type", value = "活动类型,1.居民/志愿者活动 2.党员活动", required = true), - @ApiImplicitParam(name = "userId", value = "用户id", required = true) + @ApiImplicitParam(name = "id", value = "活动主键", required = true), + @ApiImplicitParam(name = "type", value = "活动类型,1.居民/志愿者活动 2.党员活动", required = true) }) @GetMapping("activity/regist/list") public R listRegistRecord(@RequestParam("id") Long id, - @RequestParam("type") Integer type, - @RequestParam("userId") Long userId) { + @RequestParam("type") Integer type) { if (type.intValue() == 1) { - return communityService.listRegistRecord(id, userId); - } else { - return partyBuildingService.listRegistRecord(id, userId); + return communityService.listRegistRecord(id, this.getUserId()); } + return R.fail("type不存在"); } // @ApiOperation(value = "新增社区动态浏览记录") diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java index db78ba4..e717966 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java @@ -250,17 +250,18 @@ } @ApiOperation(value = "我的活动", response = ComActActivityVO.class) + @ApiImplicitParam(name = "status", value = "活动状态(4 进行中 5 已结束 6 已取消)", required = false) @GetMapping("listactivity") - public R listActivity() { + public R listActivity(@RequestParam("status") Integer status) { LoginUserInfoVO loginUserInfo = this.getLoginUserInfo(); Long userId = loginUserInfo.getUserId(); Long communityId = loginUserInfo.getCommunityId(); List<ComActActivityVO> comActActivityVOS = new ArrayList<>(); - R r = communityService.listActivity(userId); + R r = communityService.listActivity(userId, status); if (R.isOk(r)) { comActActivityVOS = (List<ComActActivityVO>)r.getData(); } - R r1 = partyBuildingService.listActivity(userId, communityId); + R r1 = partyBuildingService.listActivity(userId, communityId, status); if (R.isOk(r1)) { List<ComActActivityVO> data = (List<ComActActivityVO>)r1.getData(); comActActivityVOS.addAll(data); diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/HttpStatus.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/HttpStatus.java index ee22d2b..7597925 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/HttpStatus.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/HttpStatus.java @@ -90,4 +90,9 @@ * 接口未实现 */ public static final int NOT_IMPLEMENTED = 501; + + /** + * 暂不支持 + */ + public static final int NOT_ACCEPTABLE = 406; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/partybuilding/ActivitySignUpDTO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/partybuilding/ActivitySignUpDTO.java index 17a5c45..8f02914 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/partybuilding/ActivitySignUpDTO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/partybuilding/ActivitySignUpDTO.java @@ -27,9 +27,6 @@ @NotNull(message = "操作类型不能为空") private Integer type; - @ApiModelProperty("取消原因") - private String reason; - @ApiModelProperty(value = "登录用户id", hidden = true) private Long userId; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActRegistVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActRegistVO.java index 9d96291..29bb739 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActRegistVO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActRegistVO.java @@ -75,6 +75,9 @@ @ApiModelProperty(value = "二维码id") private Integer codeId; + @ApiModelProperty(value = "本次签到获取的积分奖励") + private Integer award; + @ApiModelProperty(value = "活动类型 1居民,志愿者 2党员") private Integer activityType; } \ No newline at end of file diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActivityTypeVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActivityTypeVO.java new file mode 100644 index 0000000..e6a0ec7 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActivityTypeVO.java @@ -0,0 +1,37 @@ +package com.panzhihua.common.model.vos.community; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.panzhihua.common.validated.AddGroup; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @title: ComActActivityTypeVO + * @projectName: 成都呐喊信息技术有限公司-智慧社区项目 + * @description: 活动分类vo + * @author: hans + * @date: 2021/10/21 11:11 + */ +@Data +@ApiModel("活动分类vo") +public class ComActActivityTypeVO { + + @ApiModelProperty("自增id") + private Long id; + + @ApiModelProperty("类型名称") + @NotBlank(groups = AddGroup.class, message = "类型名称不能为空") + private String name; + + @ApiModelProperty("活动类型(1.志愿者 2.居民 3.党员)") + @NotNull(groups = AddGroup.class, message = "活动类型不能为空") + private Integer type; + + @ApiModelProperty(value = "社区id", hidden = true) + private Long communityId; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActivityVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActivityVO.java index d3239dc..fd4ba43 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActivityVO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActActivityVO.java @@ -77,7 +77,6 @@ private Date signUpEnd; @ApiModelProperty("参加人群(多个以逗号隔开)") - @NotBlank(groups = AddGroup.class, message = "参加人群不可为空") private String aattendPeople; @ApiModelProperty("志愿者人数下线") @@ -222,7 +221,7 @@ @ApiModelProperty("参与签到/打卡奖励积分") private Integer rewardIntegral; - @ApiModelProperty("参与次数上限,按次奖励需传入") + @ApiModelProperty("参与次数上限,按次奖励需传入,无次数限制-1") private Integer limit; @ApiModelProperty("是否允许取消(1.允许 2.不允许)") @@ -233,9 +232,15 @@ @NotNull(groups = AddGroup.class, message = "取消活动扣除积分数目不可为空") private Integer cancelDeduct; - @ApiModelProperty("参与次数") + @ApiModelProperty("用户已参与次数") private Integer times; @ApiModelProperty("已获取积分") private Integer award; + + @ApiModelProperty("二维码类型 1居民,志愿者 2党员") + private Integer codeType; + + @ApiModelProperty("活动类型") + private String activityType; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/MyActivityEvaluateVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/MyActivityEvaluateVO.java new file mode 100644 index 0000000..a6893e2 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/MyActivityEvaluateVO.java @@ -0,0 +1,25 @@ +package com.panzhihua.common.model.vos.community; + +import java.util.List; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @title: MyActivityEvaluateVO + * @projectName: 成都呐喊信息技术有限公司-智慧社区项目 + * @description: 我的评价vo + * @author: hans + * @date: 2021/10/21 17:14 + */ +@Data +@ApiModel("我的评价vo") +public class MyActivityEvaluateVO { + + @ApiModelProperty("是否展示评价按钮(1.展示 0.不展示)") + private Integer isDisplay; + + @ApiModelProperty("评论详情") + private List<ComActActEvaluateVO> myEvaluateList; +} \ No newline at end of file diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PageActivityMembersVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PageActivityMembersVO.java index f58b75a..a3427fa 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PageActivityMembersVO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PageActivityMembersVO.java @@ -30,14 +30,4 @@ private Long pageSize; @ApiModelProperty(value = "活动id", required = true) private Long activityId; - @ApiModelProperty("报名状态 0 已取消 1已报名") - private Integer status; - @ApiModelProperty("取消原因") - private String reason; - @ApiModelProperty("参与次数") - private Integer times; - @ApiModelProperty("获取奖励") - private Integer award; - @ApiModelProperty("活动限制次数") - private Integer limit; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PartyBuildingActivityVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PartyBuildingActivityVO.java index 037113b..5d2c30c 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PartyBuildingActivityVO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PartyBuildingActivityVO.java @@ -5,12 +5,9 @@ import com.fasterxml.jackson.annotation.JsonFormat; -import com.panzhihua.common.validated.AddGroup; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; - -import javax.validation.constraints.NotNull; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -107,29 +104,7 @@ @ApiModelProperty("是否是个人发起 1 是 0 否") private Integer isPerson; - @ApiModelProperty("签到范围,默认0无限制") - @NotNull(groups = AddGroup.class, message = "签到范围不可为空") - private Integer range; - - @ApiModelProperty("是否有积分奖励(1.是 2.否)") - @NotNull(groups = AddGroup.class, message = "是否有积分奖励不可为空") - private Integer haveIntegralReward; - - @ApiModelProperty("积分奖励方式(1.按次奖励 2.记时奖励)") - private Integer rewardWay; - - @ApiModelProperty("参与签到/打卡奖励积分") - private Integer rewardIntegral; - - @ApiModelProperty("参与次数上限,按次奖励需传入") - private Integer limit; - - @ApiModelProperty("是否允许取消(1.允许 2.不允许)") - @NotNull(groups = AddGroup.class, message = "是否允许取消不可为空") - private Integer canCancel; - - @ApiModelProperty("取消活动扣除积分数目") - @NotNull(groups = AddGroup.class, message = "取消活动扣除积分数目不可为空") - private Integer cancelDeduct; + @ApiModelProperty("二维码类型 1居民,志愿者 2党员") + private Integer codeType; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java index 96cbc67..62e7d07 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java @@ -1067,10 +1067,12 @@ * * @param userId * 用户id + * @param status * @return 活动列表 */ @PostMapping("listactivity") - R listActivity(@RequestParam("userId") Long userId); + R listActivity(@RequestParam("userId") Long userId, + @RequestParam(value = "status", required = false) Integer status); /** * 用户确认心愿 @@ -7011,4 +7013,30 @@ */ @GetMapping("/activity/regist/list") R listRegistRecord(@RequestParam("id") Long id, @RequestParam("userId") Long userId); + + /** + * 获取活动类型(目前只有志愿者活动需要获取) + * @param communityId + * @param type + * @return + */ + @GetMapping("/activity/type/list") + R listActivityType(@RequestParam("communityId") Long communityId, @RequestParam("type") Integer type); + + /** + * 添加活动类型 + * @param comActActivityTypeVO + * @return + */ + @PostMapping("/activity/type/add") + R addActivityType(@RequestBody ComActActivityTypeVO comActActivityTypeVO); + + /** + * 我的评价 + * @param userId + * @param activityId + * @return + */ + @GetMapping("/activity/my-evaluate") + R listMyActivityEvaluate(@RequestParam("userId") Long userId, @RequestParam("activityId") Long activityId); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/partybuilding/PartyBuildingService.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/partybuilding/PartyBuildingService.java index c44cd6f..a416e67 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/partybuilding/PartyBuildingService.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/partybuilding/PartyBuildingService.java @@ -340,10 +340,12 @@ * 用户id * @param communityId * 社区id 同一用户在不同社区都是党员 + * @param status * @return 党建活动列表 */ @PostMapping("/partybuildIng/listactivity") - R listActivity(@RequestParam("userId") Long userId, @RequestParam("communityId") Long communityId); + R listActivity(@RequestParam("userId") Long userId, @RequestParam("communityId") Long communityId, + @RequestParam(value = "status", required = false) Integer status); /** * 党员活动人员参入列表 @@ -529,21 +531,4 @@ */ @PostMapping("/partybuildIng/getTaskPbActivityPeopleList") R getTaskPbActivityPeopleList(@RequestParam("activityId") Long activityId); - - /** - * 活动签到记录 - * @param id 活动主键 - * @param userId 用户id - * @return - */ - @GetMapping("/partybuildIng/regist/list") - R listRegistRecord(@RequestParam("id") Long id, @RequestParam("userId") Long userId); - - /** - * 活动报名签到情况 - * @param id 活动主键id - * @return - */ - @GetMapping("/partybuildIng/sign-in/list") - R listSignInRecord(@RequestParam("id") Long id); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityActivityApi.java b/springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityActivityApi.java index 914a550..5a0d780 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityActivityApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityActivityApi.java @@ -1,32 +1,43 @@ package com.panzhihua.community_backstage.api; -import java.io.*; +import static java.util.Objects.isNull; +import static java.util.Objects.nonNull; + +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.InputStream; +import java.io.OutputStreamWriter; +import java.io.Writer; import java.math.BigDecimal; import java.nio.charset.StandardCharsets; -import java.text.SimpleDateFormat; -import java.util.*; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; import javax.annotation.Resource; import javax.validation.Valid; -import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; -import com.alibaba.fastjson.JSON; -import com.panzhihua.common.constants.Constants; -import com.panzhihua.common.model.vos.LiveVO; -import com.panzhihua.common.model.vos.WeatherVO; -import com.panzhihua.common.validated.AddGroup; -import com.panzhihua.community_backstage.excel.CustomSheetWriteHandler; -import freemarker.template.Configuration; -import freemarker.template.Template; -import freemarker.template.Version; +import com.panzhihua.common.model.vos.community.ComActActivityTypeVO; import org.springframework.beans.factory.annotation.Value; import org.springframework.util.ObjectUtils; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.write.metadata.WriteSheet; +import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.panzhihua.common.controller.BaseController; @@ -35,7 +46,18 @@ 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.*; +import com.panzhihua.common.model.vos.community.ActivitySignVO; +import com.panzhihua.common.model.vos.community.ComActActEvaluateExcelVO; +import com.panzhihua.common.model.vos.community.ComActActEvaluateVO; +import com.panzhihua.common.model.vos.community.ComActActPictureVO; +import com.panzhihua.common.model.vos.community.ComActActRegistExcelVO; +import com.panzhihua.common.model.vos.community.ComActActRegistVO; +import com.panzhihua.common.model.vos.community.ComActActSignExcelVO; +import com.panzhihua.common.model.vos.community.ComActActivityStatisticsVO; +import com.panzhihua.common.model.vos.community.ComActActivityVO; +import com.panzhihua.common.model.vos.community.ComActDynVO; +import com.panzhihua.common.model.vos.community.ComActEasyPhotoVO; +import com.panzhihua.common.model.vos.community.ComActMicroWishVO; import com.panzhihua.common.model.vos.community.easyPhoto.ComActEasyPhotoClassifyVO; import com.panzhihua.common.model.vos.community.easyPhoto.ComActEasyPhotoStatisticsVO; import com.panzhihua.common.model.vos.community.easyPhoto.ExportEasyPhotoVO; @@ -43,15 +65,23 @@ import com.panzhihua.common.model.vos.user.SysUserNoticeVO; import com.panzhihua.common.service.community.CommunityService; import com.panzhihua.common.service.user.UserService; -import com.panzhihua.common.utlis.*; +import com.panzhihua.common.utlis.DateUtils; +import com.panzhihua.common.utlis.QRCodeUtils; +import com.panzhihua.common.utlis.SFTPUtil; +import com.panzhihua.common.utlis.StringUtils; +import com.panzhihua.common.utlis.WxUtil; +import com.panzhihua.common.utlis.WxXCXTempSend; +import com.panzhihua.common.validated.AddGroup; +import com.panzhihua.community_backstage.excel.CustomSheetWriteHandler; +import freemarker.template.Configuration; +import freemarker.template.Template; +import freemarker.template.Version; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import sun.misc.BASE64Encoder; - -import static java.util.Objects.isNull; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -109,6 +139,9 @@ if (comActActivityVO.getRewardWay().intValue() == 1 && isNull(comActActivityVO.getLimit())) { return R.fail("参与次数上限不能为空"); } + } + if(nonNull(comActActivityVO.getVolunteerMax()) && comActActivityVO.getVolunteerMax().intValue() == 0) { + return R.fail("志愿者参与上限不能为0"); } Long communityId = this.getCommunityId(); comActActivityVO.setCommunityId(communityId); @@ -550,28 +583,6 @@ log.error("文件传输失败【{}】", e.getMessage()); return R.fail(); } - } - - /** - * 查看二维码 - * @param qrCodeVO - * @return - */ - @ApiOperation("查看二维码") - @PostMapping("/getQRCode") - public R getQRCode(@RequestBody QRActivityCodeVO qrCodeVO){ - return this.communityService.getQRCode(qrCodeVO); - } - - /** - * 重置二维码 - * @param qrCodeVO - * @return - */ - @ApiOperation("重置二维码") - @PostMapping("/resetQRCode") - public R resetQRCode(@RequestBody QRActivityCodeVO qrCodeVO){ - return this.communityService.resetQRCode(qrCodeVO); } @ApiOperation(value = "社区活动查询历史封面", response = ComActActPictureVO.class) @@ -1092,4 +1103,18 @@ } return communityService.wishHandleListAdmin(loginUserInfo.getCommunityId(),type); } + + @ApiOperation(value = "添加活动类型") + @PostMapping("activity/type/add") + public R addActivityType(@RequestBody @Validated(AddGroup.class) ComActActivityTypeVO comActActivityTypeVO) { + comActActivityTypeVO.setCommunityId(getCommunityId()); + return communityService.addActivityType(comActActivityTypeVO); + } + + @ApiOperation(value = "获取活动类型(目前只有志愿者活动需要获取)", response = ComActActivityTypeVO.class) + @ApiImplicitParam(name = "type", value = "活动类型(1.志愿者 2.居民 3.党员)", required = true) + @GetMapping("activity/type/list") + public R listActivityType(@RequestParam("type") Integer type) { + return communityService.listActivityType(getCommunityId(), type); + } } diff --git a/springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingApi.java b/springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingApi.java index 700059d..beb922b 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingApi.java @@ -55,8 +55,6 @@ import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import static java.util.Objects.isNull; - /** * @program: springcloud_k8s_panzhihuazhihuishequ * @description: 社区党建引领 @@ -277,18 +275,7 @@ @ApiOperation(value = "新增党员活动") @PostMapping("addactivity") - public R addActivity(@RequestBody @Validated(AddGroup.class) PartyBuildingActivityVO partyBuildingActivityVO) { - if (partyBuildingActivityVO.getHaveIntegralReward().intValue() == 1) { - if (isNull(partyBuildingActivityVO.getRewardWay())) { - return R.fail("奖励方式不能为空"); - } - if (isNull(partyBuildingActivityVO.getRewardIntegral())) { - return R.fail("奖励积分不能为空"); - } - if (partyBuildingActivityVO.getRewardWay().intValue() == 1 && isNull(partyBuildingActivityVO.getLimit())) { - return R.fail("参与次数上限不能为空"); - } - } + public R addActivity(@RequestBody PartyBuildingActivityVO partyBuildingActivityVO) { LoginUserInfoVO loginUserInfo = this.getLoginUserInfo(); Long communityId = loginUserInfo.getCommunityId(); Long userId = loginUserInfo.getUserId(); diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java index 9982304..5ab057e 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java @@ -11,6 +11,7 @@ import javax.annotation.Resource; +import com.panzhihua.common.model.vos.community.ComActActivityTypeVO; import com.panzhihua.service_community.dao.ComActActEvaluateDAO; import com.panzhihua.service_community.model.dos.*; import com.panzhihua.service_community.service.*; @@ -277,8 +278,8 @@ }); } comActActivityVO1.setComActActPrizeVOList(comActActPrizeVOList); - Integer participantMax = comActActivityVO1.getParticipantMax(); - if (participantMax.intValue() == 0) { + Integer volunteerMax = comActActivityVO1.getVolunteerMax(); + if (volunteerMax.intValue() != 0) { comActActivityVO1.setType(1); } else { comActActivityVO1.setType(2); @@ -1386,8 +1387,9 @@ * @return 活动列表 */ @PostMapping("listactivity") - public R listActivity(@RequestParam("userId") Long userId) { - return comActActivityService.listActivity(userId); + public R listActivity(@RequestParam("userId") Long userId, + @RequestParam(value = "status", required = false) Integer status) { + return comActActivityService.listActivity(userId, status); } /** @@ -2477,4 +2479,36 @@ public R listRegistRecord(@RequestParam("id") Long id, @RequestParam("userId") Long userId) { return comActActivityService.listRegistRecord(id, userId); } + + /** + * 获取活动类型(目前只有志愿者活动需要获取) + * @param communityId + * @param type + * @return + */ + @GetMapping("activity/type/list") + public R listActivityType(@RequestParam("communityId") Long communityId, @RequestParam("type") Integer type) { + return comActActivityService.listActivityType(communityId, type); + } + + /** + * 添加活动类型 + * @param comActActivityTypeVO + * @return + */ + @PostMapping("activity/type/add") + public R addActivityType(@RequestBody ComActActivityTypeVO comActActivityTypeVO) { + return comActActivityService.addActivityType(comActActivityTypeVO); + } + + /** + * 我的评价 + * @param userId + * @param activityId 活动id + * @return + */ + @GetMapping("activity/my-evaluate") + public R listMyActivityEvaluate(@RequestParam("userId") Long userId, @RequestParam("activityId") Long activityId) { + return comActActEvaluateService.listMyActivityEvaluate(userId, activityId); + } } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java index 9da35b2..f3ab2fb 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActActivityDAO.java @@ -5,6 +5,7 @@ import java.util.Map; import com.panzhihua.common.model.vos.community.ComActActivityStatisticsVO; +import com.panzhihua.common.model.vos.community.ComActActivityTypeVO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; @@ -61,16 +62,22 @@ + "AND a.begin_at <![CDATA[ >= ]]> #{comActActivityVO.beginAt} AND a.end_at <![CDATA[ <= ]]> #{comActActivityVO.endAt} " + " </if> " + "<if test='comActActivityVO.type != null and comActActivityVO.type==1 '>" + "AND a.volunteer_max!=0 " + " </if> " - + "<if test='comActActivityVO.type != null and comActActivityVO.type==2 '>" + "AND a.participant_max!=0 " + + "<if test='comActActivityVO.type != null and comActActivityVO.type==2 '>" + "AND a.volunteer_max=0 " + " </if> " + " group by a.id " + " order by a.status asc,a.publish_at desc " + "</script>") IPage<ComActActivityVO> pageActivity(Page page, @Param("comActActivityVO") ComActActivityVO comActActivityVO); - @Select("SELECT " + "u.name sponsorName, " + "ca.name communityName, " - + "count(if(s.is_volunteer=1,s.id,null))volunteer_now, " - + "count(if(s.is_volunteer=0,s.id,null))participant_now, " + "a.* " + "FROM " + "com_act_activity a " - + "left join sys_user u on a.sponsor_id=u.user_id " + "left join com_act_act_sign s on a.id=s.activity_id " - + "left join com_act ca on a.community_id=ca.community_id " + "where a.id=#{id} " + " group by a.id ") - ComActActivityVO inforActivity(Long id); +// @Select("SELECT " + "u.name sponsorName, " + "ca.name communityName, " +// + "count(if(s.is_volunteer=1,s.id,null))volunteer_now, " +// + "count(if(s.is_volunteer=0,s.id,null))participant_now, " + "a.* " + "FROM " + "com_act_activity a " +// + "left join sys_user u on a.sponsor_id=u.user_id " + "left join com_act_act_sign s on a.id=s.activity_id " +// + "left join com_act ca on a.community_id=ca.community_id " + "where a.id=#{id} " + " group by a.id ") + + /** + * 活动详情 + * @param id + * @return + */ + ComActActivityVO inforActivity(@Param("id") Long id); @Select("SELECT " + "a.* " + "FROM " + "com_act_act_sign s " + "JOIN com_act_activity a ON s.activity_id = a.id " + "WHERE " + "s.user_id = #{comActActivityVO.sponsorId} " + "ORDER BY " + "s.create_at DESC") @@ -209,4 +216,19 @@ * @return 活动列表 */ List<ComActActivityVO> getIndexTopActivityList(@Param("communityId") Long communityId); + + /** + * 获取活动类型(目前只有志愿者活动需要获取) + * @param communityId + * @param type + * @return + */ + List<ComActActivityTypeVO> listActivityType(@Param("communityId") Long communityId, @Param("type") Integer type); + + /** + * 添加活动类型 + * @param comActActivityTypeVO + * @return + */ + int addActivityType(@Param("comActActivityTypeVO") ComActActivityTypeVO comActActivityTypeVO); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActActivityDO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActActivityDO.java index cc3adf5..7a6d0cd 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActActivityDO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActActivityDO.java @@ -204,4 +204,8 @@ * 取消扣除积分 */ private Integer cancelDeduct; + /** + * 活动类型 + */ + private String activityType; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComPbActivityDO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComPbActivityDO.java index ce9b3dc..1a38ef4 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComPbActivityDO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComPbActivityDO.java @@ -101,32 +101,4 @@ * 社区id */ private Long communityId; - /** - * 签到范围,默认0无限制 - */ - private Integer range; - /** - * 是否有积分奖励(1.是 2.否) - */ - private Integer haveIntegralReward; - /** - * 积分奖励方式(1.按次奖励 2.记时奖励) - */ - private Integer rewardWay; - /** - * 奖励积分 - */ - private Integer rewardIntegral; - /** - * 参与次数上限 - */ - private Integer limit; - /** - * 是否允许取消(1.允许 2.不允许) - */ - private Integer canCancel; - /** - * 取消扣除积分 - */ - private Integer cancelDeduct; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActActEvaluateService.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActActEvaluateService.java index 06e5cee..0d58821 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActActEvaluateService.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActActEvaluateService.java @@ -35,4 +35,12 @@ * @return 当前用户对所有活动的评价列表 */ R listEvaluate(Long userId); + + /** + * 我的评价 + * @param userId + * @param activityId + * @return + */ + R listMyActivityEvaluate(Long userId, Long activityId); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActActivityService.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActActivityService.java index edb7bb8..85993d7 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActActivityService.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActActivityService.java @@ -8,10 +8,6 @@ import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.*; import com.panzhihua.service_community.model.dos.ComActActivityDO; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestParam; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -197,9 +193,10 @@ * * @param userId * 用户id + * @param status * @return 活动列表 */ - R listActivity(Long userId); + R listActivity(Long userId, Integer status); /** * 查询志愿者参与的所有已经完成的活动 @@ -281,4 +278,19 @@ * @return */ R listRegistRecord(Long id, Long userId); + + /** + * 获取活动类型(目前只有志愿者活动需要获取) + * @param communityId + * @param type + * @return + */ + R listActivityType(Long communityId, Integer type); + + /** + * 添加活动类型 + * @param comActActivityTypeVO + * @return + */ + R addActivityType(ComActActivityTypeVO comActActivityTypeVO); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActEvaluateServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActEvaluateServiceImpl.java index 48d692c..93d0ee7 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActEvaluateServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActEvaluateServiceImpl.java @@ -6,7 +6,6 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; -import java.util.Objects; import java.util.stream.Collectors; import javax.annotation.Resource; @@ -21,6 +20,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.ComActActEvaluateVO; +import com.panzhihua.common.model.vos.community.MyActivityEvaluateVO; import com.panzhihua.service_community.dao.ComActActEvaluateDAO; import com.panzhihua.service_community.dao.ComActActRegistDAO; import com.panzhihua.service_community.dao.ComActActSignDAO; @@ -75,7 +75,9 @@ //需要签到类型 int registCount = comActActRegistDAO.selectCount(new QueryWrapper<ComActActRegistDO>() .lambda().eq(ComActActRegistDO::getUserId, userId).eq(ComActActRegistDO::getActivityId, activityId)); - if (registCount <= 0) { + int evaluateCount = this.baseMapper.selectCount(new QueryWrapper<ComActActEvaluateDO>().lambda() + .eq(ComActActEvaluateDO::getUserId, userId).eq(ComActActEvaluateDO::getActivityId, activityId)); + if (registCount <= evaluateCount) { //未签到,不能评价 return R.fail("未签到,不能评价"); } @@ -145,7 +147,7 @@ public R listEvaluate(Long userId) { List<ComActActEvaluateDO> comActActEvaluateDOList = this.baseMapper.selectList(new QueryWrapper<ComActActEvaluateDO>() .lambda().eq(ComActActEvaluateDO::getUserId, userId)); - ArrayList<ComActActEvaluateVO> comActActEvaluateVOS = new ArrayList<>(); + List<ComActActEvaluateVO> comActActEvaluateVOS = new ArrayList<>(); if (!ObjectUtils.isEmpty(comActActEvaluateDOList)) { comActActEvaluateDOList.forEach(comActActEvaluateDO -> { ComActActEvaluateVO comActActEvaluateVO = new ComActActEvaluateVO(); @@ -155,4 +157,37 @@ } return R.ok(comActActEvaluateVOS); } + + /** + * 我的评价 + * @param userId + * @param activityId + * @return + */ + @Override + public R listMyActivityEvaluate(Long userId, Long activityId) { + ComActActivityDO comActActivityDO = comActActivityDAO.selectById(activityId); + if (isNull(comActActivityDO)) { + return R.fail("活动不存在"); + } + List<ComActActEvaluateDO> comActActEvaluateDOList = this.baseMapper.selectList(new QueryWrapper<ComActActEvaluateDO>() + .lambda().eq(ComActActEvaluateDO::getUserId, userId).eq(ComActActEvaluateDO::getActivityId, activityId)); + List<ComActActEvaluateVO> comActActEvaluateVOS = new ArrayList<>(); + if (!ObjectUtils.isEmpty(comActActEvaluateDOList)) { + comActActEvaluateDOList.forEach(comActActEvaluateDO -> { + ComActActEvaluateVO comActActEvaluateVO = new ComActActEvaluateVO(); + BeanUtils.copyProperties(comActActEvaluateDO, comActActEvaluateVO); + comActActEvaluateVOS.add(comActActEvaluateVO); + }); + } + int registCount = comActActRegistDAO.selectCount(new QueryWrapper<ComActActRegistDO>() + .lambda().eq(ComActActRegistDO::getActivityId, activityId).eq(ComActActRegistDO::getUserId, userId)); + + MyActivityEvaluateVO evaluateVO = new MyActivityEvaluateVO(); + evaluateVO.setMyEvaluateList(comActActEvaluateVOS); + boolean needDisplay = registCount > comActActEvaluateVOS.size() && + new Date().before(DateUtils.addDays(comActActivityDO.getEndAt(), 3)); + evaluateVO.setIsDisplay(needDisplay ? 1 : 0); + return R.ok(evaluateVO); + } } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java index bf91110..3456592 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java @@ -1,6 +1,7 @@ package com.panzhihua.service_community.service.impl; import static java.util.Objects.isNull; +import static java.util.Objects.nonNull; import static org.apache.commons.lang3.StringUtils.isBlank; import static org.apache.commons.lang3.StringUtils.isNotBlank; @@ -8,6 +9,7 @@ import java.math.RoundingMode; import java.text.DecimalFormat; import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.Date; @@ -17,12 +19,6 @@ import javax.annotation.Resource; -import com.panzhihua.common.model.dtos.community.integral.admin.AddComActIntegralUserDTO; -import com.panzhihua.service_community.dao.*; -import com.panzhihua.service_community.entity.ComActActivityCode; -import com.panzhihua.service_community.model.dos.*; -import com.panzhihua.service_community.service.ComActActivityCodeService; -import com.panzhihua.service_community.service.ComActIntegralUserTradeService; import org.apache.commons.lang3.time.DateUtils; import org.springframework.beans.BeanUtils; import org.springframework.data.redis.core.StringRedisTemplate; @@ -35,8 +31,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.common.constants.HttpStatus; import com.panzhihua.common.model.dtos.community.bigscreen.work.ScreenActActivityListDTO; import com.panzhihua.common.model.dtos.community.bigscreen.work.ScreenActActivityPeopleListDTO; +import com.panzhihua.common.model.dtos.community.integral.admin.AddComActIntegralUserDTO; import com.panzhihua.common.model.vos.IndexDataVO; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; @@ -45,6 +43,7 @@ import com.panzhihua.common.model.vos.community.ComActActPictureVO; import com.panzhihua.common.model.vos.community.ComActActRegistVO; import com.panzhihua.common.model.vos.community.ComActActivityStatisticsVO; +import com.panzhihua.common.model.vos.community.ComActActivityTypeVO; import com.panzhihua.common.model.vos.community.ComActActivityVO; import com.panzhihua.common.model.vos.community.CommunityActivitiesVO; import com.panzhihua.common.model.vos.community.CommunityGovernanceTrendsVO; @@ -53,7 +52,22 @@ import com.panzhihua.common.service.user.UserService; import com.panzhihua.common.utlis.WxUtil; import com.panzhihua.common.utlis.WxXCXTempSend; +import com.panzhihua.service_community.dao.ComActActEvaluateDAO; +import com.panzhihua.service_community.dao.ComActActPictureDAO; +import com.panzhihua.service_community.dao.ComActActRegistDAO; +import com.panzhihua.service_community.dao.ComActActSignDAO; +import com.panzhihua.service_community.dao.ComActActivityCodeDao; +import com.panzhihua.service_community.dao.ComActActivityDAO; +import com.panzhihua.service_community.dao.ComBpActivityDAO; +import com.panzhihua.service_community.entity.ComActActivityCode; +import com.panzhihua.service_community.model.dos.ComActActEvaluateDO; +import com.panzhihua.service_community.model.dos.ComActActPictureDO; +import com.panzhihua.service_community.model.dos.ComActActRegistDO; +import com.panzhihua.service_community.model.dos.ComActActSignDO; +import com.panzhihua.service_community.model.dos.ComActActivityDO; +import com.panzhihua.service_community.service.ComActActivityCodeService; import com.panzhihua.service_community.service.ComActActivityService; +import com.panzhihua.service_community.service.ComActIntegralUserTradeService; import lombok.extern.slf4j.Slf4j; @@ -291,6 +305,7 @@ LambdaQueryWrapper<ComActActSignDO> actSignQuery = new LambdaQueryWrapper<>(); actSignQuery.eq(ComActActSignDO::getActivityId, id); actSignQuery.eq(ComActActSignDO::getUserId, userId); + actSignQuery.eq(ComActActSignDO::getStatus, 1); ComActActSignDO comActActSignDO = comActActSignDAO.selectOne(actSignQuery); if (!ObjectUtils.isEmpty(comActActSignDO)) { comActActivityVO.setIsSign(1); @@ -298,6 +313,7 @@ } } } + comActActivityVO.setCodeType(1); return comActActivityVO; } @@ -441,69 +457,96 @@ Long activityId = signactivityVO.getActivityId(); Integer type = signactivityVO.getType(); Long userId = signactivityVO.getUserId(); - Integer isVolunteer = signactivityVO.getIsVolunteer(); + Integer isVolunteer = 0; // 查询社区活动 ComActActivityDO actActivityDO = this.baseMapper.selectById(activityId); if (isNull(actActivityDO)) { return R.fail("活动不存在"); } int num = 0; + ComActActSignDO comActActSignDO = comActActSignDAO.selectOne(new QueryWrapper<ComActActSignDO>() + .lambda().eq(ComActActSignDO::getActivityId, activityId).eq(ComActActSignDO::getUserId, userId)); if (1 == type) { + if (nonNull(comActActSignDO) && comActActSignDO.getStatus().equals(1)) { + return R.fail("已经报名过了,请勿重复提交"); + } + Integer volunteerMax = actActivityDO.getVolunteerMax(); + Integer residentMax = actActivityDO.getParticipantMax(); R<LoginUserInfoVO> userInfoR = userService.getUserInfoByUserId(String.valueOf(userId)); LoginUserInfoVO loginUserInfoVO = - JSONObject.parseObject(JSONObject.toJSONString(userInfoR.getData()), LoginUserInfoVO.class); - boolean userNotVolunteer = !(loginUserInfoVO.getIsVolunteer() == 1); - if (isVolunteer == 1 && userNotVolunteer) { - return R.fail("只有志愿者才能报名"); - } - - // 查询当前活动下参与志愿者/居民数量 - Integer count = comActActSignDAO.selectCount(new QueryWrapper<ComActActSignDO>().lambda() - .eq(ComActActSignDO::getActivityId, activityId).eq(ComActActSignDO::getIsVolunteer, isVolunteer)); - if (isVolunteer.equals(1) && actActivityDO.getVolunteerMax() <= count - && !actActivityDO.getVolunteerMax().equals(-1)) { - return R.fail("志愿者报名人数已满"); - } - - //审查用户是否有该活动报名权限(是否活动指定参与人群) - String currentUserTags = loginUserInfoVO.getTags(); - String attendPeople = actActivityDO.getAattendPeople(); - if (isVolunteer.intValue() == 0 && isNotBlank(attendPeople)) { - if (isBlank(currentUserTags)) { - currentUserTags = "全部居民"; + JSONObject.parseObject(JSONObject.toJSONString(userInfoR.getData()), LoginUserInfoVO.class); + // 查询当前活动下参与居民 + Integer residentCount = comActActSignDAO.selectCount(new QueryWrapper<ComActActSignDO>().lambda() + .eq(ComActActSignDO::getActivityId, activityId).eq(ComActActSignDO::getIsVolunteer, 0)); + if (volunteerMax != 0) { + //志愿者活动 + boolean userIsVolunteer = loginUserInfoVO.getIsVolunteer() == 1; + // 查询当前活动下参与志愿者 + Integer volunteerCount = comActActSignDAO.selectCount(new QueryWrapper<ComActActSignDO>().lambda() + .eq(ComActActSignDO::getActivityId, activityId).eq(ComActActSignDO::getIsVolunteer, 1)); + if (userIsVolunteer) { + //用户是志愿者以志愿者身份参加 + if (volunteerMax > volunteerCount || volunteerMax.equals(-1)) { + //以志愿者身份报名 + isVolunteer = 1; + } else if (nonNull(residentMax) && (residentMax > residentCount || residentMax.equals(-1))) { + //志愿者报名人数已满,再以居民身份报名参加 + isVolunteer = 0; + } else { + return R.fail("报名人数已满"); + } } else { - currentUserTags = currentUserTags.concat(",全部居民"); + //用户是普通居民已居民身份参加 + if (nonNull(residentMax) && (residentMax > residentCount || residentMax.equals(-1))) { + //以居民身份报名参加 + isVolunteer = 0; + } else if (volunteerMax > volunteerCount || volunteerMax.equals(-1)) { + return R.fail(HttpStatus.NOT_ACCEPTABLE, "您还不是志愿者哦~"); + } else { + return R.fail("报名人数已满"); + } } - List<String> currentUserTagList = Arrays.asList(currentUserTags.split(",")); - boolean checkResult = currentUserTagList.stream().anyMatch(currentUserTag -> attendPeople.contains(currentUserTag)); - if (!checkResult) { - return R.fail("您不是指定参与人群!"); + } else { + //普通居民活动 + //审查用户是否有该活动报名权限(是否活动指定参与人群) + String currentUserTags = loginUserInfoVO.getTags(); + String attendPeople = actActivityDO.getAattendPeople(); + if (isNotBlank(attendPeople)) { + if (isBlank(currentUserTags)) { + currentUserTags = "全部居民"; + } else { + currentUserTags = currentUserTags.concat(",全部居民"); + } + List<String> currentUserTagList = Arrays.asList(currentUserTags.split(",")); + boolean checkResult = currentUserTagList.stream().anyMatch(currentUserTag -> attendPeople.contains(currentUserTag)); + if (!checkResult) { + return R.fail("您不是指定参与人群!"); + } + } + if (residentMax > residentCount || residentMax.equals(-1)) { + //用户参加居民活动 + isVolunteer = 0; + } else { + return R.fail("报名人数已满"); } } - - if (isVolunteer.equals(0) && actActivityDO.getParticipantMax() <= count - && !actActivityDO.getParticipantMax().equals(-1)) { - return R.fail("居民报名人数已满"); - } - - ComActActSignDO comActActSignDO = new ComActActSignDO(); - comActActSignDO.setActivityId(activityId); - comActActSignDO.setUserId(userId); - comActActSignDO.setIsVolunteer(isVolunteer); - try { + if (nonNull(comActActSignDO)) { + comActActSignDO.setStatus(1); + comActActSignDO.setCreateAt(new Date()); + comActActSignDO.setReason(null); + comActActSignDO.setIsVolunteer(isVolunteer); + num = comActActSignDAO.updateById(comActActSignDO); + } else { + comActActSignDO = new ComActActSignDO(); + comActActSignDO.setActivityId(activityId); + comActActSignDO.setUserId(userId); + comActActSignDO.setIsVolunteer(isVolunteer); num = comActActSignDAO.insert(comActActSignDO); - } catch (Exception e) { - if (e.getMessage().contains("unique_activity_id_user_id")) { - return R.fail("已经报名过了,请勿重复提交"); - } - log.error(e.getMessage()); } } else { if (isNull(signactivityVO.getReason())) { return R.fail("缺少取消原因"); } - ComActActSignDO comActActSignDO = comActActSignDAO.selectOne(new QueryWrapper<ComActActSignDO>() - .lambda().eq(ComActActSignDO::getActivityId, activityId).eq(ComActActSignDO::getUserId, userId)); if (isNull(comActActSignDO)) { return R.fail("未报名"); } @@ -512,7 +555,7 @@ num = comActActSignDAO.updateById(comActActSignDO); } if (num > 0) { - return R.ok(); + return R.ok(isVolunteer); } return R.fail(); } @@ -522,10 +565,11 @@ * * @param userId * 用户id + * @param status * @return 活动列表 */ @Override - public R listActivity(Long userId) { + public R listActivity(Long userId, Integer status) { List<ActivitySignVO> activitySignVOList = comActActSignDAO.selectList(userId); if (ObjectUtils.isEmpty(activitySignVOList)) { return R.fail(); @@ -534,34 +578,41 @@ .collect(Collectors.toList()); List<ComActActivityDO> comActActivityDOS = comActActivityDAO.selectBatchIds(longs); List<ComActActivityVO> comActActivityVOS = new ArrayList<>(); - comActActivityDOS.forEach(comActActivityDO -> { - ComActActivityVO comActActivityVO = new ComActActivityVO(); - BeanUtils.copyProperties(comActActivityDO, comActActivityVO); - List<ActivitySignVO> collect = activitySignVOList.stream() - .filter(activitySignVO -> activitySignVO.getActivityId().equals(comActActivityVO.getId())).limit(1) - .collect(Collectors.toList()); - ActivitySignVO activitySignVO = collect.get(0); - Integer isVolunteer = activitySignVO.getIsVolunteer(); - if (isVolunteer.intValue() == 1) { - comActActivityVO.setType(1); - } else { - comActActivityVO.setType(2); - } - Integer status = comActActivityVO.getStatus(); - if (status.intValue() == 3) { - comActActivityVO.setStatus(4); - } - Date createAt = null; - try { - createAt = DateUtils.parseDate(activitySignVO.getCreateAt()); - } catch (ParseException e) { - log.error("时间转换异常{【】}", e.getMessage()); - } - comActActivityVO.setSingDate(createAt); - comActActivityVO.setTimes(activitySignVO.getTimes()); - comActActivityVO.setAward(activitySignVO.getAward()); - comActActivityVOS.add(comActActivityVO); - }); + if (nonNull(status)) { + comActActivityDOS = comActActivityDOS.stream() + .filter(activityDO -> activityDO.getStatus().equals(status)).collect(Collectors.toList()); + } + if (!comActActivityDOS.isEmpty()) { + comActActivityDOS.forEach(comActActivityDO -> { + ComActActivityVO comActActivityVO = new ComActActivityVO(); + BeanUtils.copyProperties(comActActivityDO, comActActivityVO); + List<ActivitySignVO> collect = activitySignVOList.stream() + .filter(activitySignVO -> activitySignVO.getActivityId().equals(comActActivityVO.getId())).limit(1) + .collect(Collectors.toList()); + ActivitySignVO activitySignVO = collect.get(0); + Integer isVolunteer = activitySignVO.getIsVolunteer(); + if (isVolunteer.intValue() == 1) { + comActActivityVO.setType(1); + } else { + comActActivityVO.setType(2); + } + Integer activityStatus = comActActivityVO.getStatus(); + if (activityStatus.intValue() == 3) { + comActActivityVO.setStatus(4); + } + Date createAt = null; + try { + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + createAt = simpleDateFormat.parse(activitySignVO.getCreateAt()); + } catch (ParseException e) { + log.error("时间转换异常【{}】", e.getMessage()); + } + comActActivityVO.setSingDate(createAt); + comActActivityVO.setTimes(activitySignVO.getTimes()); + comActActivityVO.setAward(activitySignVO.getAward()); + comActActivityVOS.add(comActActivityVO); + }); + } return R.ok(comActActivityVOS); } @@ -830,10 +881,11 @@ .lambda().eq(ComActActRegistDO::getActivityId, activityId).eq(ComActActRegistDO::getUserId, userId).eq(ComActActRegistDO::getCodeId,comActActRegistVO.getCodeId())); int signAllCount = comActActRegistDAO.selectCount(new QueryWrapper<ComActActRegistDO>() .lambda().eq(ComActActRegistDO::getActivityId, activityId).eq(ComActActRegistDO::getUserId, userId)); - if (signDayCount >= 0) { + if (signDayCount > 0) { return R.fail("请扫描新的签到码"); } - if(signAllCount>=comActActivityDO.getLimit()){ + int limit = comActActivityDO.getLimit().intValue(); + if(limit != -1 && signAllCount >= limit){ return R.fail("签到次数上限"); } @@ -862,61 +914,62 @@ comActIntegralUserTradeService.addIntegralTradeAdmin(addComActIntegralUserDTO); // ValueOperations<String, String> opsForValue = stringRedisTemplate.opsForValue(); // opsForValue.set(activitySignInKey, "", 1800L, TimeUnit.SECONDS); - return R.ok(); + return R.ok(comActActivityDO.getRewardIntegral()); } return R.fail("网络错误,请重试"); } - else { - ComPbActivityDO comPbActivityDO=comBpActivityDAO.selectById(activityId); - if (isNull(comPbActivityDO)) { - return R.fail("活动不存在!"); - } +// else { +// ComPbActivityDO comPbActivityDO=comBpActivityDAO.selectById(activityId); +// if (isNull(comPbActivityDO)) { +// return R.fail("活动不存在!"); +// } +// +// Date beginAt = comPbActivityDO.getActivityTimeBegin(); +// Date endAt = comPbActivityDO.getActivityTimeEnd(); +// Date nowDate = new Date(); +// if (nowDate.before(beginAt) || nowDate.after(endAt)) { +// return R.fail("不在活动时间范围内"); +// } +// +// int signDayCount = comActActRegistDAO.selectCount(new QueryWrapper<ComActActRegistDO>() +// .lambda().eq(ComActActRegistDO::getActivityId, activityId).eq(ComActActRegistDO::getUserId, userId).eq(ComActActRegistDO::getCodeId,comActActRegistVO.getCodeId())); +// int signAllCount = comActActRegistDAO.selectCount(new QueryWrapper<ComActActRegistDO>() +// .lambda().eq(ComActActRegistDO::getActivityId, activityId).eq(ComActActRegistDO::getUserId, userId)); +// if (signDayCount >= 0) { +// return R.fail("请扫描新的签到码"); +// } +// int limit = comPbActivityDO.getLimit().intValue(); +// if(limit != -1 && signAllCount >= limit){ +// return R.fail("签到次数上限"); +// } +// +// ComActActRegistDO comActActRegistDO = new ComActActRegistDO(); +// comActActRegistDO.setActivityId(activityId); +// comActActRegistDO.setType(2); +// comActActRegistDO.setUserId(userId); +// comActActRegistDO.setIsVolunteer(comActActRegistVO.getIsVolunteer()); +// comActActRegistDO.setCreateAt(nowDate); +// comActActRegistDO.setCodeId(comActActRegistVO.getCodeId()); +// comActActRegistDO.setAward(comPbActivityDO.getRewardIntegral()); +// comActActRegistDO.setPosition(comActActRegistVO.getPosition()); +// comActActRegistDO.setTimes(signAllCount+1); +// int result = comActActRegistDAO.insert(comActActRegistDO); +// if (result > 0) { +// AddComActIntegralUserDTO addComActIntegralUserDTO=new AddComActIntegralUserDTO(); +// addComActIntegralUserDTO.setUserId(userId); +// addComActIntegralUserDTO.setIntegralType(8); +// addComActIntegralUserDTO.setActivityType(2); +// addComActIntegralUserDTO.setCommunityId(comPbActivityDO.getCommunityId()); +// addComActIntegralUserDTO.setServiceId(activityId); +// comActIntegralUserTradeService.addIntegralTradeAdmin(addComActIntegralUserDTO); +//// ValueOperations<String, String> opsForValue = stringRedisTemplate.opsForValue(); +//// opsForValue.set(activitySignInKey, "", 1800L, TimeUnit.SECONDS); +// return R.ok(); +// } +// return R.fail("网络错误,请重试"); +// } - Date beginAt = comPbActivityDO.getActivityTimeBegin(); - Date endAt = comPbActivityDO.getActivityTimeEnd(); - Date nowDate = new Date(); - if (nowDate.before(beginAt) || nowDate.after(endAt)) { - return R.fail("不在活动时间范围内"); - } - - int signDayCount = comActActRegistDAO.selectCount(new QueryWrapper<ComActActRegistDO>() - .lambda().eq(ComActActRegistDO::getActivityId, activityId).eq(ComActActRegistDO::getUserId, userId).eq(ComActActRegistDO::getCodeId,comActActRegistVO.getCodeId())); - int signAllCount = comActActRegistDAO.selectCount(new QueryWrapper<ComActActRegistDO>() - .lambda().eq(ComActActRegistDO::getActivityId, activityId).eq(ComActActRegistDO::getUserId, userId)); - if (signDayCount >= 0) { - return R.fail("请扫描新的签到码"); - } - if(signAllCount>=comPbActivityDO.getLimit()){ - return R.fail("签到次数上限"); - } - - ComActActRegistDO comActActRegistDO = new ComActActRegistDO(); - comActActRegistDO.setActivityId(activityId); - comActActRegistDO.setType(2); - comActActRegistDO.setUserId(userId); - comActActRegistDO.setIsVolunteer(comActActRegistVO.getIsVolunteer()); - comActActRegistDO.setCreateAt(nowDate); - comActActRegistDO.setCodeId(comActActRegistVO.getCodeId()); - comActActRegistDO.setAward(comPbActivityDO.getRewardIntegral()); - comActActRegistDO.setPosition(comActActRegistVO.getPosition()); - comActActRegistDO.setTimes(signAllCount+1); - int result = comActActRegistDAO.insert(comActActRegistDO); - if (result > 0) { - AddComActIntegralUserDTO addComActIntegralUserDTO=new AddComActIntegralUserDTO(); - addComActIntegralUserDTO.setUserId(userId); - addComActIntegralUserDTO.setIntegralType(8); - addComActIntegralUserDTO.setActivityType(2); - addComActIntegralUserDTO.setCommunityId(comPbActivityDO.getCommunityId()); - addComActIntegralUserDTO.setServiceId(activityId); - comActIntegralUserTradeService.addIntegralTradeAdmin(addComActIntegralUserDTO); -// ValueOperations<String, String> opsForValue = stringRedisTemplate.opsForValue(); -// opsForValue.set(activitySignInKey, "", 1800L, TimeUnit.SECONDS); - return R.ok(); - } - return R.fail("网络错误,请重试"); - } - - + return R.fail("网络错误,请重试"); } /** @@ -958,4 +1011,31 @@ public R listRegistRecord(Long id, Long userId) { return R.ok(comActActRegistDAO.listRegistRecord(id, userId)); } + + /** + * 获取活动类型(目前只有志愿者活动需要获取) + * @param communityId + * @param type + * @return + */ + @Override + public R listActivityType(Long communityId, Integer type) { + return R.ok(this.baseMapper.listActivityType(communityId, type)); + } + + /** + * 添加活动类型 + * @param comActActivityTypeVO + * @return + */ + @Override + public R addActivityType(ComActActivityTypeVO comActActivityTypeVO) { + try { + this.baseMapper.addActivityType(comActActivityTypeVO); + } catch (Exception e) { + log.error("添加活动类型错误【{}】", e.getMessage()); + return R.fail("活动类型已存在"); + } + return R.ok(); + } } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java index fa5be90..7f588c4 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActIntegralUserTradeServiceImpl.java @@ -312,13 +312,14 @@ identityType=1; } } - }else { - ComPbActivityDO comPbActivityDO = comBpActivityDAO.selectById(serviceId); - if(comPbActivityDO!=null){ - amount=comPbActivityDO.getRewardIntegral(); - identityType=2; - } } +// else { +// ComPbActivityDO comPbActivityDO = comBpActivityDAO.selectById(serviceId); +// if(comPbActivityDO!=null){ +// amount=comPbActivityDO.getRewardIntegral(); +// identityType=2; +// } +// } default: break; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActRegistMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActRegistMapper.xml index 5646fc7..45afcbd 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActRegistMapper.xml +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActRegistMapper.xml @@ -21,7 +21,7 @@ caar.id, caar.activity_id, caar.create_at, - caar.positon, + caar.position, caar.times, caar.award, su.user_id, diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActSignMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActSignMapper.xml index 26f8bff..f6ed800 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActSignMapper.xml +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActSignMapper.xml @@ -21,10 +21,10 @@ <select id="getSignLists" resultType="com.panzhihua.common.model.vos.community.ComActActSignExcelVO"> SELECT caas.create_at, - caas.times, + r.times, cass.status, cass.reason, - cass.award, + r.award * r.times as award, t.limit, su.`name`, su.phone, @@ -41,6 +41,13 @@ com_act_act_sign caas LEFT JOIN sys_user su ON caas.user_id = su.user_id left join com_act_activity t on cass.activity_id = t.id + LEFT JOIN ( + SELECT * FROM ( + SELECT * FROM com_act_act_regist + WHERE activity_id = #{activitySignVO.activityId} AND type = 1 + ORDER BY id DESC LIMIT 1000000 + ) temp GROUP BY activity_id, user_id + ) r ON caas.activity_id = r.activity_id AND caas.user_id = r.user_id where caas.activity_id = #{activitySignVO.activityId} <if test="activitySignVO.phone != null and activitySignVO.phone !=''"> AND su.phone = #{activitySignVO.phone} @@ -73,10 +80,17 @@ <select id="listActivitySign" resultType="com.panzhihua.common.model.vos.community.ActivitySignVO"> SELECT u.user_id id, u.image_url, u.name, u.nick_name, case WHEN u.is_partymember = 1 THEN '党员' WHEN a.is_volunteer = 1 THEN '志愿者' ELSE '居民' END identity, - u.phone, u.tags, a.create_at, a.is_volunteer, a.status , a.times ,a.reason,a.award,t.limit + u.phone, u.tags, a.create_at, a.is_volunteer, a.status , r.times , a.reason, r.times * r.award as award, t.limit FROM com_act_act_sign a JOIN sys_user u ON a.user_id = u.user_id left join com_act_activity t on a.activity_id = t.id + LEFT JOIN ( + SELECT * FROM ( + SELECT * FROM com_act_act_regist + WHERE activity_id = #{activitySignVO.activityId} AND type = 1 + ORDER BY id DESC LIMIT 1000000 + ) temp GROUP BY activity_id, user_id + ) r ON a.activity_id = r.activity_id AND a.user_id = r.user_id WHERE a.activity_id = #{activitySignVO.activityId} <if test='activitySignVO.phone != null and activitySignVO.phone != ""'> AND u.phone = #{activitySignVO.phone} @@ -113,7 +127,7 @@ ORDER BY id DESC LIMIT 1000000 ) temp GROUP BY activity_id ) r ON s.activity_id = r.activity_id - WHERE s.user_id = #{userId} + WHERE s.user_id = #{userId} AND s.status = 1 </select> <select id="listSignInRecord" resultType="com.panzhihua.common.model.vos.community.ActivitySignInRecordVO"> SELECT s.activity_id, s.create_at, s.user_id, u.name, a.limit, r.type, r.times diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActivityMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActivityMapper.xml index cd3b83c..e50355d 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActivityMapper.xml +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActActivityMapper.xml @@ -41,12 +41,17 @@ <result column="limit" property="limit" /> <result column="can_cancel" property="canCancel" /> <result column="cancel_deduct" property="cancelDeduct" /> + <result column="activity_type" property="activityType" /> </resultMap> <!-- 通用查询结果列 --> <sql id="Base_Column_List"> id, activity_name, sponsor_id, activity_addr, lat, lng, status, publish_at, end_at, begin_at, sign_up_begin, sign_up_end, aattend_people, volunteer_min, volunteer_max, participant_min, participant_max, cover, has_prize, is_qr_code, contact_name, contact_phone, is_regist, is_top, prize_remark, reward_desc, content, community_id, create_at, cancel_reason </sql> + <insert id="addActivityType"> + INSERT INTO com_act_activity_type (`name`, `type`, community_id) + VALUES (#{comActActivityTypeVO.name}, #{comActActivityTypeVO.type}, #{comActActivityTypeVO.communityId}) + </insert> <select id="activityStatistics" resultType="com.panzhihua.common.model.vos.community.ComActActivityStatisticsVO"> SELECT IFNULL(volunteer_max,0) + IFNULL(participant_max,0) as signTotal @@ -69,7 +74,7 @@ SELECT a.id, a.activity_name, u.`name` sponsorName, a.activity_addr, a.participant_max, COUNT(if(s.is_volunteer=1,NULL,s.id))participant_now, a.volunteer_max, COUNT(if(s.is_volunteer=1,s.id,NULL))volunteer_now, a.`status`, a.publish_at, a.is_qr_code, - a.begin_at, a.end_at, a.sign_up_begin, a.sign_up_end, a.reward_way + a.begin_at, a.end_at, a.sign_up_begin, a.sign_up_end, a.reward_way, a.activity_type FROM com_act_activity a LEFT JOIN sys_user u ON a.sponsor_id=u.user_id LEFT JOIN com_act_act_sign s ON a.id=s.activity_id @@ -82,6 +87,9 @@ </if> <if test='comActActivityVO.rewardWay != null and comActActivityVO.rewardWay != 0'> AND a.reward_way = #{comActActivityVO.rewardWay} + </if> + <if test='comActActivityVO.activityType != null and comActActivityVO.activityType !=""'> + AND a.activity_type = #{comActActivityVO.activityType} </if> <if test='comActActivityVO.activityName != null and comActActivityVO.activityName !=""'> AND a.activity_name LIKE concat( #{comActActivityVO.activityName}, '%' ) @@ -97,7 +105,7 @@ SELECT a.id, a.activity_name, u.`name` sponsorName, a.activity_addr, a.participant_max, COUNT(if(s.is_volunteer=1,NULL,s.id))participant_now, a.volunteer_max, COUNT(if(s.is_volunteer=1,s.id,NULL))volunteer_now, a.`status`, a.publish_at, - a.is_qr_code, a.begin_at, a.end_at, a.sign_up_begin, a.sign_up_end, a.reward_way + a.is_qr_code, a.begin_at, a.end_at, a.sign_up_begin, a.sign_up_end, a.reward_way, a.activity_type FROM com_act_activity a LEFT JOIN sys_user u ON a.sponsor_id=u.user_id LEFT JOIN com_act_act_sign s ON a.id=s.activity_id @@ -111,6 +119,9 @@ <if test='comActActivityVO.rewardWay != null and comActActivityVO.rewardWay != 0'> AND a.reward_way = #{comActActivityVO.rewardWay} </if> + <if test='comActActivityVO.activityType != null and comActActivityVO.activityType !=""'> + AND a.activity_type = #{comActActivityVO.activityType} + </if> <if test='comActActivityVO.activityName != null and comActActivityVO.activityName !=""'> AND a.activity_name LIKE concat( #{comActActivityVO.activityName}, '%' ) </if> @@ -124,4 +135,15 @@ )t1 )t </select> + <select id="inforActivity" resultType="com.panzhihua.common.model.vos.community.ComActActivityVO"> + SELECT u.name sponsorName, ca.name communityName, + count(if(s.is_volunteer=1,s.id,null))volunteer_now, count(if(s.is_volunteer=0,s.id,null))participant_now, a.* + FROM com_act_activity a + left join sys_user u on a.sponsor_id=u.user_id + left join (select * from com_act_act_sign where `status` = 1) s on a.id=s.activity_id + left join com_act ca on a.community_id=ca.community_id where a.id = #{id} group by a.id + </select> + <select id="listActivityType" resultType="com.panzhihua.common.model.vos.community.ComActActivityTypeVO"> + SELECT * FROM com_act_activity_type WHERE `type` = #{type} AND community_id = #{communityId} ORDER BY id ASC + </select> </mapper> \ No newline at end of file diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/api/PartyBuildIngApi.java b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/api/PartyBuildIngApi.java index 604836c..817b1e6 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/api/PartyBuildIngApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/api/PartyBuildIngApi.java @@ -468,8 +468,10 @@ * @return 党建活动列表 */ @PostMapping("listactivity") - public R listActivity(@RequestParam("userId") Long userId, @RequestParam("communityId") Long communityId) { - return comBpActivityService.listActivity(userId, communityId); + public R listActivity(@RequestParam("userId") Long userId, + @RequestParam("communityId") Long communityId, + @RequestParam(value = "status", required = false) Integer status) { + return comBpActivityService.listActivity(userId, communityId, status); } @@ -692,26 +694,5 @@ @PostMapping("getTaskPbActivityPeopleList") public R getTaskPbActivityPeopleList(@RequestParam("activityId") Long activityId) { return comBpActivityService.getTaskPbActivityPeopleList(activityId); - } - - /** - * 活动签到记录 - * @param id 活动主键 - * @param userId 用户id - * @return - */ - @GetMapping("regist/list") - public R listRegistRecord(@RequestParam("id") Long id, @RequestParam("userId") Long userId) { - return comBpActivityService.listRegistRecord(id, userId); - } - - /** - * 活动报名签到情况 - * @param id 活动主键id - * @return - */ - @GetMapping("sign-in/list") - public R listSignInRecord(@RequestParam("id") Long id) { - return comBpActivityService.listSignInRecord(id); } } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/ComBpActivityDAO.java b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/ComBpActivityDAO.java index 784c212..6f0dea4 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/ComBpActivityDAO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/ComBpActivityDAO.java @@ -44,26 +44,26 @@ + "AND #{activityTimeEnd}" + " </if> " + "</script>") List<PartyBuildingActivityVO> listPartyMemberActivities(PartyBuildingActivityVO partyBuildingActivityVO); -// @Select("<script> " + "SELECT\n" + "a.id,\n" + "a.name,\n" + "a.address,\n" + "a.status,\n" + "a.release_time,\n" -// + "a.activity_time_begin,\n" + "a.activity_time_end,\n" + "a.enroll_time_begin,\n" + "a.cover,\n" -// + "if(u.type=3 ,'管理员',u.name)createByName,\n" + "a.enroll_time_end \n" + "FROM\n" + "com_pb_activity a\n" -// + "left join sys_user u on a.create_by=u.user_id \n" -// + "where a.community_id=#{partyBuildingActivityVO.communityId}\n" -// + "<if test='partyBuildingActivityVO.name != null and partyBuildingActivityVO.name.trim() != ""'>" -// + "and a.name = #{partyBuildingActivityVO.name} \n" + " </if> " -// + "<if test='partyBuildingActivityVO.isAppliets != null and partyBuildingActivityVO.isAppliets==1'>" -// + " and a.`status` not in(5,6) " + " </if> " -// + "<if test='partyBuildingActivityVO.status != null and partyBuildingActivityVO.status != 0 and partyBuildingActivityVO.isAppliets ==null '>" -// + "AND a.`status` = #{partyBuildingActivityVO.status} \n" + " </if> " -// + "<if test='partyBuildingActivityVO.status != null and partyBuildingActivityVO.status != 0 and partyBuildingActivityVO.isAppliets !=null and partyBuildingActivityVO.isAppliets==1'>" -// + "AND a.`status` in (3,4) \n" + " </if> " + "<if test='partyBuildingActivityVO.releaseTimeBegin != null '>" -// + "AND a.release_time BETWEEN #{partyBuildingActivityVO.releaseTimeBegin} \n" -// + "AND #{partyBuildingActivityVO.releaseTimeEnd} \n" + " </if> " -// + "<if test='partyBuildingActivityVO.activityTimeBegin != null '>" -// + "AND a.activity_time_begin BETWEEN #{partyBuildingActivityVO.activityTimeBegin} \n" -// + "AND #{partyBuildingActivityVO.activityTimeEnd}" + " </if> " + "order by a.create_at desc " + "</script>") - IPage<PartyBuildingActivityVO> pageActivity(@Param("page") Page page, - @Param("partyBuildingActivityVO") PartyBuildingActivityVO partyBuildingActivityVO); + @Select("<script> " + "SELECT\n" + "a.id,\n" + "a.name,\n" + "a.address,\n" + "a.status,\n" + "a.release_time,\n" + + "a.activity_time_begin,\n" + "a.activity_time_end,\n" + "a.enroll_time_begin,\n" + "a.cover,\n" + + "if(u.type=3 ,'管理员',u.name)createByName,\n" + "a.enroll_time_end \n" + "FROM\n" + "com_pb_activity a\n" + + "left join sys_user u on a.create_by=u.user_id \n" + + "where a.community_id=#{partyBuildingActivityVO.communityId}\n" + + "<if test='partyBuildingActivityVO.name != null and partyBuildingActivityVO.name.trim() != ""'>" + + "and a.name = #{partyBuildingActivityVO.name} \n" + " </if> " + + "<if test='partyBuildingActivityVO.isAppliets != null and partyBuildingActivityVO.isAppliets==1'>" + + " and a.`status` not in(5,6) " + " </if> " + + "<if test='partyBuildingActivityVO.status != null and partyBuildingActivityVO.status != 0 and partyBuildingActivityVO.isAppliets ==null '>" + + "AND a.`status` = #{partyBuildingActivityVO.status} \n" + " </if> " + + "<if test='partyBuildingActivityVO.status != null and partyBuildingActivityVO.status != 0 and partyBuildingActivityVO.isAppliets !=null and partyBuildingActivityVO.isAppliets==1'>" + + "AND a.`status` in (3,4) \n" + " </if> " + "<if test='partyBuildingActivityVO.releaseTimeBegin != null '>" + + "AND a.release_time BETWEEN #{partyBuildingActivityVO.releaseTimeBegin} \n" + + "AND #{partyBuildingActivityVO.releaseTimeEnd} \n" + " </if> " + + "<if test='partyBuildingActivityVO.activityTimeBegin != null '>" + + "AND a.activity_time_begin BETWEEN #{partyBuildingActivityVO.activityTimeBegin} \n" + + "AND #{partyBuildingActivityVO.activityTimeEnd}" + " </if> " + "order by a.create_at desc " + "</script>") + IPage<PartyBuildingActivityVO> pageActivity(Page page, + @Param("partyBuildingActivityVO") PartyBuildingActivityVO partyBuildingActivityVO); @Select("select t.id from (\n" + "SELECT \n" + "a.participation_lowest_num,\n" + "a.name,\n" + "a.id,\n" + "COUNT(m.id)num\n" + "FROM\n" + "com_pb_activity a\n" diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/ComPbActivityMemberDAO.java b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/ComPbActivityMemberDAO.java index c7482dd..8d04275 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/ComPbActivityMemberDAO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/dao/ComPbActivityMemberDAO.java @@ -2,8 +2,6 @@ import java.util.List; -import com.panzhihua.common.model.vos.community.ActivitySignInRecordVO; -import com.panzhihua.common.model.vos.community.ComActActRegistVO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; @@ -34,13 +32,13 @@ // " </where>" + // "</script>") -// @Select("<script> " + "SELECT " + " m.id," + " m.NAME," + " u.phone," + " m.create_at registrationTime" + " FROM " -// + " com_pb_activity_member m " + " LEFT JOIN sys_user u ON m.user_id = u.user_id " + "WHERE " -// + "m.activity_id = #{pageActivityMembersVO.activityId} " -// + "<if test='pageActivityMembersVO.name != null and pageActivityMembersVO.name.trim() != ""'>" -// + "AND m.`name` = #{pageActivityMembersVO.name} " + " </if> " -// + "<if test='pageActivityMembersVO.phone != null and pageActivityMembersVO.phone.trim() != ""'>" -// + "AND u.phone = #{pageActivityMembersVO.phone}" + " </if> " + "</script>") + @Select("<script> " + "SELECT " + " m.id," + " m.NAME," + " u.phone," + " m.create_at registrationTime" + " FROM " + + " com_pb_activity_member m " + " LEFT JOIN sys_user u ON m.user_id = u.user_id " + "WHERE " + + "m.activity_id = #{pageActivityMembersVO.activityId} " + + "<if test='pageActivityMembersVO.name != null and pageActivityMembersVO.name.trim() != ""'>" + + "AND m.`name` = #{pageActivityMembersVO.name} " + " </if> " + + "<if test='pageActivityMembersVO.phone != null and pageActivityMembersVO.phone.trim() != ""'>" + + "AND u.phone = #{pageActivityMembersVO.phone}" + " </if> " + "</script>") IPage<PageActivityMembersVO> pageActivityMembers(Page page, @Param("pageActivityMembersVO") PageActivityMembersVO pageActivityMembersVO); @@ -58,33 +56,4 @@ @Select("select type from sys_user where user_id=#{createBy}") LoginUserInfoVO selectUserInfo(Long createBy); - - /** - * 活动签到记录 - * @param id 党员活动主键 - * @param userId 用户id - * @return - */ - List<ComActActRegistVO> listRegistRecord(@Param("id") Long id, @Param("userId") Long userId); - - /** - * 活动报名签到情况 - * @param id 党员活动主键 - * @return - */ - List<ActivitySignInRecordVO> listSignInRecord(@Param("id") Long id); - - /** - * 获取用户活动报名记录 - * @param userId - * @return - */ - List<PageActivityMembersVO> selectList(@Param("userId") Long userId); - - /** - * 新增党员活动二维码数据 - * @param id 党员活动id - * @return - */ - int insertComActActivityCode(@Param("id") Long id); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/model/dos/ComPbActivityDO.java b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/model/dos/ComPbActivityDO.java index e5c92e5..656fa46 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/model/dos/ComPbActivityDO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/model/dos/ComPbActivityDO.java @@ -102,34 +102,4 @@ * 社区id */ private Long communityId; - /** - * 签到范围,默认0无限制 - */ - @TableField("`range`") - private Integer range; - /** - * 是否有积分奖励(1.是 2.否) - */ - private Integer haveIntegralReward; - /** - * 积分奖励方式(1.按次奖励 2.记时奖励) - */ - private Integer rewardWay; - /** - * 奖励积分 - */ - private Integer rewardIntegral; - /** - * 参与次数上限 - */ - @TableField("`limit`") - private Integer limit; - /** - * 是否允许取消(1.允许 2.不允许) - */ - private Integer canCancel; - /** - * 取消扣除积分 - */ - private Integer cancelDeduct; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/model/dos/ComPbActivityMemberDO.java b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/model/dos/ComPbActivityMemberDO.java index 227af9d..ba7a959 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/model/dos/ComPbActivityMemberDO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/model/dos/ComPbActivityMemberDO.java @@ -54,14 +54,4 @@ */ @TableField(fill = FieldFill.INSERT) private Date createAt; - - /** - * 报名状态 0 已取消 1已报名 - */ - private Integer status; - - /** - * 取消原因 - */ - private String reason; } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/ComBpActivityService.java b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/ComBpActivityService.java index 925e22e..d778476 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/ComBpActivityService.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/ComBpActivityService.java @@ -102,9 +102,10 @@ * 用户id * @param communityId * 社区id + * @param status * @return 党建活动列表 */ - R listActivity(Long userId, Long communityId); + R listActivity(Long userId, Long communityId, Integer status); /** * 党员活动人员参入列表 @@ -164,19 +165,4 @@ * @return 活动下报名人员 */ R getTaskPbActivityPeopleList(Long activityId); - - /** - * 活动签到记录 - * @param id 活动主键 - * @param userId 用户id - * @return - */ - R listRegistRecord(Long id, Long userId); - - /** - * 活动报名签到情况 - * @param id 活动主键id - * @return - */ - R listSignInRecord(Long id); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComBpActivityServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComBpActivityServiceImpl.java index 7f8cbe7..185499d 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComBpActivityServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/java/com/panzhihua/service_dangjian/service/impl/ComBpActivityServiceImpl.java @@ -1,15 +1,8 @@ package com.panzhihua.service_dangjian.service.impl; -import static java.util.Objects.isNull; - import java.text.DateFormat; -import java.text.ParseException; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; import javax.annotation.Resource; @@ -42,6 +35,8 @@ import com.panzhihua.service_dangjian.service.ComBpActivityService; import lombok.extern.slf4j.Slf4j; + +import static java.util.Objects.nonNull; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -189,6 +184,7 @@ comBpActivityDAO.selectCommunityNameByCommunityId(partyBuildingActivityVO.getCommunityId())); } + partyBuildingActivityVO.setCodeType(2); return R.ok(partyBuildingActivityVO); } @@ -215,7 +211,6 @@ int insert = comBpActivityDAO.insert(comPbActivityDO); if (insert > 0) { - comPbActivityMemberDAO.insertComActActivityCode(comPbActivityDO.getId()); return R.ok(); } return R.fail(); @@ -346,58 +341,55 @@ * 用户id * @param communityId * 社区id + * @param status * @return 党建活动列表 */ @Override - public R listActivity(Long userId, Long communityId) { + public R listActivity(Long userId, Long communityId, Integer status) { List<ComActActivityVO> comActActivityVOS = new ArrayList<>(); /*Long memberId=comPbActivityMemberDAO.selectMemberIdByUserId(userId,communityId); if (ObjectUtils.isEmpty(memberId)) { return R.fail(); }*/ - List<PageActivityMembersVO> membersVOS = comPbActivityMemberDAO.selectList(userId); - if (ObjectUtils.isEmpty(membersVOS)) { + List<ComPbActivityMemberDO> comPbActivityMemberDOS = comPbActivityMemberDAO.selectList( + new QueryWrapper<ComPbActivityMemberDO>().lambda().eq(ComPbActivityMemberDO::getUserId, userId)); + if (ObjectUtils.isEmpty(comPbActivityMemberDOS)) { return R.fail(); } - List<Long> collect = membersVOS.stream() - .map(membersVO -> membersVO.getActivityId()).collect(Collectors.toList()); + List<Long> collect = comPbActivityMemberDOS.stream() + .map(comPbActivityMemberDO -> comPbActivityMemberDO.getActivityId()).collect(Collectors.toList()); List<ComPbActivityDO> comPbActivityDOS = comBpActivityDAO.selectBatchIds(collect); - - comPbActivityDOS.forEach(comPbActivityDO -> { - ComActActivityVO comActActivityVO = new ComActActivityVO(); - Long createBy = comPbActivityDO.getCreateBy(); - LoginUserInfoVO loginUserInfoVO = comPbActivityMemberDAO.selectUserInfo(createBy); - List<PageActivityMembersVO> collect1 = membersVOS.stream() - .filter(membersVO -> membersVO.getActivityId().equals(comActActivityVO.getId())).limit(1) - .collect(Collectors.toList()); - PageActivityMembersVO activityMembersVO = collect1.get(0); - Integer type = loginUserInfoVO.getType(); - if (type == 1) { - comActActivityVO.setIsPerson(1); - } else { - comActActivityVO.setIsPerson(0); - } - Integer status = comPbActivityDO.getStatus(); - if (status.intValue() == 3) { - status = 4; - } - Date createAt = null; - try { - createAt = org.apache.commons.lang3.time.DateUtils.parseDate(activityMembersVO.getRegistrationTime()); - } catch (ParseException e) { - log.error("时间转换异常{【】}", e.getMessage()); - } - comActActivityVO.setType(3); - comActActivityVO.setId(comPbActivityDO.getId()); - comActActivityVO.setStatus(status); - comActActivityVO.setActivityName(comPbActivityDO.getName()); - comActActivityVO.setCover(comPbActivityDO.getCover()); - comActActivityVO.setBeginAt(comPbActivityDO.getActivityTimeBegin()); - comActActivityVO.setSingDate(createAt); - comActActivityVO.setTimes(activityMembersVO.getTimes()); - comActActivityVO.setAward(activityMembersVO.getAward()); - comActActivityVOS.add(comActActivityVO); - }); + if (nonNull(status)) { + comPbActivityDOS = comPbActivityDOS.stream() + .filter(activityDO -> activityDO.getStatus().equals(status)).collect(Collectors.toList()); + } + if (!comPbActivityDOS.isEmpty()) { + comPbActivityDOS.forEach(comPbActivityDO -> { + ComActActivityVO comActActivityVO = new ComActActivityVO(); + Long createBy = comPbActivityDO.getCreateBy(); + LoginUserInfoVO loginUserInfoVO = comPbActivityMemberDAO.selectUserInfo(createBy); + Integer type = loginUserInfoVO.getType(); + if (type == 1) { + comActActivityVO.setIsPerson(1); + } else { + comActActivityVO.setIsPerson(0); + } + Integer activityStatus = comPbActivityDO.getStatus(); + if (activityStatus.intValue() == 3) { + activityStatus = 4; + } + comActActivityVO.setType(3); + comActActivityVO.setId(comPbActivityDO.getId()); + comActActivityVO.setStatus(activityStatus); + comActActivityVO.setActivityName(comPbActivityDO.getName()); + comActActivityVO.setCover(comPbActivityDO.getCover()); + comActActivityVO.setBeginAt(comPbActivityDO.getActivityTimeBegin()); + comActActivityVO.setSingDate(comPbActivityMemberDOS.stream() + .filter(comPbActivityMemberDO -> comPbActivityMemberDO.getActivityId().equals(comActActivityVO.getId())) + .collect(Collectors.toList()).get(0).getCreateAt()); + comActActivityVOS.add(comActActivityVO); + }); + } return R.ok(comActActivityVOS); } @@ -477,9 +469,6 @@ return R.ok(null, "已经加入了"); } } else { - if (isNull(activitySignUpDTO.getReason())) { - return R.fail("取消原因不能为空"); - } if (empty) { return R.ok(null, "已经取消"); } else { @@ -487,9 +476,7 @@ if (createBy.equals(userId)) { return R.fail("发起者不能取消报名"); } - comPbActivityMemberDO.setStatus(0); - comPbActivityMemberDO.setReason(activitySignUpDTO.getReason()); - mum = comPbActivityMemberDAO.updateById(comPbActivityMemberDO); + mum = comPbActivityMemberDAO.deleteById(comPbActivityMemberDO.getId()); } } if (mum > 0) { @@ -605,27 +592,6 @@ @Override public R getTaskPbActivityPeopleList(Long activityId) { return R.ok(this.comBpActivityDAO.getTaskPbActivityPeopleList(activityId)); - } - - /** - * 活动签到记录 - * @param id 活动主键 - * @param userId 用户id - * @return - */ - @Override - public R listRegistRecord(Long id, Long userId) { - return R.ok(comPbActivityMemberDAO.listRegistRecord(id, userId)); - } - - /** - * 活动报名签到情况 - * @param id 活动主键id - * @return - */ - @Override - public R listSignInRecord(Long id) { - return R.ok(comPbActivityMemberDAO.listSignInRecord(id)); } } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/resources/mapper/ComPbActivityDOMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/resources/mapper/ComPbActivityDOMapper.xml deleted file mode 100644 index 3172c40..0000000 --- a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/resources/mapper/ComPbActivityDOMapper.xml +++ /dev/null @@ -1,64 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> -<mapper namespace="com.panzhihua.service_dangjian.dao.ComBpActivityDAO"> - - <!-- 通用查询映射结果 --> - <resultMap id="BaseResultMap" type="com.panzhihua.service_dangjian.model.dos.ComPbActivityDO"> - <id column="id" property="id" /> - <result column="name" property="name" /> - <result column="address" property="address" /> - <result column="status" property="status" /> - <result column="create_at" property="createAt" /> - <result column="activity_time_begin" property="activityTimeBegin" /> - <result column="activity_time_end" property="activityTimeEnd" /> - <result column="enroll_time_begin" property="enrollTimeBegin" /> - <result column="enroll_time_end" property="enrollTimeEnd" /> - <result column="participation_num" property="participationNum" /> - <result column="cover" property="cover" /> - <result column="rich_text" property="richText" /> - <result column="participation_lowest_num" property="participationLowestNum" /> - <result column="cancel_reason" property="cancelReason" /> - <result column="create_by" property="createBy" /> - <result column="release_time" property="releaseTime" /> - <result column="community_id" property="communityId" /> - <result column="range" property="range" /> - <result column="have_integral_reward" property="haveIntegralReward" /> - <result column="reward_way" property="rewardWay" /> - <result column="reward_integral" property="rewardIntegral" /> - <result column="limit" property="limit" /> - <result column="can_cancel" property="canCancel" /> - <result column="cancel_deduct" property="cancelDeduct" /> - </resultMap> - - <!-- 通用查询结果列 --> - <sql id="Base_Column_List"> - id - </sql> - <select id="pageActivity" - resultType="com.panzhihua.common.model.vos.partybuilding.PartyBuildingActivityVO"> - SELECT a.id, a.name, a.address, a.status, a.release_time, a.activity_time_begin, a.reward_way, a.participation_num - a.activity_time_end, a.enroll_time_begin, a.cover, if(u.type=3 ,'管理员',u.name)createByName, a.enroll_time_end - FROM com_pb_activity a - left join sys_user u on a.create_by=u.user_id - where a.community_id=#{partyBuildingActivityVO.communityId} - <if test='partyBuildingActivityVO.name != null and partyBuildingActivityVO.name.trim() != ""'> - and a.name = #{partyBuildingActivityVO.name} - </if> - <if test='partyBuildingActivityVO.isAppliets != null and partyBuildingActivityVO.isAppliets==1'> - and a.`status` not in(5,6) - </if> - <if test='partyBuildingActivityVO.status != null and partyBuildingActivityVO.status != 0 and partyBuildingActivityVO.isAppliets ==null '> - AND a.`status` = #{partyBuildingActivityVO.status} - </if> - <if test='partyBuildingActivityVO.status != null and partyBuildingActivityVO.status != 0 and partyBuildingActivityVO.isAppliets !=null and partyBuildingActivityVO.isAppliets==1'> - AND a.`status` in (3,4) - </if> - <if test='partyBuildingActivityVO.releaseTimeBegin != null '> - AND a.release_time BETWEEN #{partyBuildingActivityVO.releaseTimeBegin} AND #{partyBuildingActivityVO.releaseTimeEnd} - </if> - <if test='partyBuildingActivityVO.activityTimeBegin != null '> - AND a.activity_time_begin BETWEEN #{partyBuildingActivityVO.activityTimeBegin} AND #{partyBuildingActivityVO.activityTimeEnd} - </if> - order by a.create_at desc - </select> -</mapper> diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/resources/mapper/ComPbActivityMemberDO.xml b/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/resources/mapper/ComPbActivityMemberDO.xml deleted file mode 100644 index f36d30a..0000000 --- a/springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/resources/mapper/ComPbActivityMemberDO.xml +++ /dev/null @@ -1,71 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> -<mapper namespace="com.panzhihua.service_dangjian.dao.ComPbActivityMemberDAO"> - - <!-- 通用查询映射结果 --> - <resultMap id="BaseResultMap" type="com.panzhihua.service_dangjian.model.dos.ComPbActivityMemberDO"> - <id column="id" property="id" /> - <result column="activity_id" property="activityId" /> - <result column="member_id" property="memberId" /> - <result column="user_id" property="userId" /> - <result column="name" property="name" /> - <result column="photo_path" property="photoPath" /> - <result column="create_at" property="createAt" /> - <result column="status" property="status" /> - <result column="reason" property="reason" /> - </resultMap> - - <!-- 通用查询结果列 --> - <sql id="Base_Column_List"> - id - </sql> - <insert id="insertComActActivityCode"> - INSERT INTO com_act_activity_code (activity_id, `status`, create_time, `type`) VALUES (#{id}, 1, NOW(), 2) - </insert> - <select id="pageActivityMembers" - resultType="com.panzhihua.common.model.vos.partybuilding.PageActivityMembersVO"> - SELECT m.id, m.NAME, u.phone, m.create_at registrationTime, m.status , m.times ,m.reason,m.award,t.limit - FROM com_pb_activity_member m - LEFT JOIN sys_user u ON m.user_id = u.user_id - LEFT JOIN com_pb_activity t ON m.activity_id = t.id - WHERE m.activity_id = #{pageActivityMembersVO.activityId} - <if test='pageActivityMembersVO.status != null'> - AND m.status = #{pageActivityMembersVO.status} - </if> - <if test='pageActivityMembersVO.name != null and pageActivityMembersVO.name.trim() != ""'> - AND m.`name` = #{pageActivityMembersVO.name} - </if> - <if test='pageActivityMembersVO.phone != null and pageActivityMembersVO.phone.trim() != ""'> - AND u.phone = #{pageActivityMembersVO.phone} - </if> - </select> - <select id="listRegistRecord" resultType="com.panzhihua.common.model.vos.community.ComActActRegistVO"> - SELECT create_at, award FROM com_act_act_regist - WHERE activity_id = #{id} AND user_id = #{userId} AND `type` = 2 ORDER BY id DESC - </select> - <select id="listSignInRecord" resultType="com.panzhihua.common.model.vos.community.ActivitySignInRecordVO"> - SELECT m.activity_id, m.create_at, m.user_id, u.name, a.limit, r.type, r.times - FROM com_pb_activity_member m - LEFT JOIN sys_user u ON m.user_id = u.user_id - LEFT JOIN com_pb_activity a ON m.activity_id = a.id - LEFT JOIN ( - SELECT * FROM ( - SELECT * FROM com_act_act_regist - WHERE activity_id = #{id} AND type = 2 - ORDER BY id DESC LIMIT 1000000 - ) temp GROUP BY activity_id, user_id - ) r ON m.activity_id = r.activity_id AND m.user_id = r.user_id - WHERE m.activity_id = #{id} - </select> - <select id="selectList" resultType="com.panzhihua.common.model.vos.partybuilding.PageActivityMembersVO"> - SELECT m.activity_id, m.create_at as registrationTime, r.times, r.times * r.award AS award FROM com_pb_activity_member m - LEFT JOIN ( - SELECT * FROM ( - SELECT * FROM com_act_act_regist - WHERE user_id = #{userId} AND type = 2 - ORDER BY id DESC LIMIT 1000000 - ) temp GROUP BY activity_id - ) r ON m.activity_id = r.activity_id - WHERE m.user_id = #{userId} - </select> -</mapper> -- Gitblit v1.7.1