huanghongfa
2021-07-23 44906e4e705282e6701170ffda3e5dc5a7dd4891
随手拍改版接口开发
15个文件已修改
7个文件已添加
511 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/IndexApi.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/GrantRewardDTO.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/easyPhoto/AddEasyPhotoActivityDTO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/easyPhoto/EditEasyPhotoActivityDTO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActEasyPhotoActivityVO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActEasyPhotoRewardVO.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActEasyPhotoVO.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityActivityApi.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActEasyPhotoRewardMapper.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActEasyPhotoActivityDO.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActEasyPhotoDO.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActEasyPhotoRewardDO.java 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActEasyPhotoRewardService.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActEasyPhotoService.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActUserWalletService.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoRewardServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java 103 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActUserWalletServiceImpl.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActEasyPhotoActivityDOMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActEasyPhotoRewardDOMapper.xml 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/IndexApi.java
@@ -327,4 +327,16 @@
    public R isShop(){
        return R.ok(Constants.IS_SHOP_OPEN);
    }
    @ApiOperation(value = "获取最新活动和用户最新收益",response =ComActEasyPhotoRewardVO.class )
    @PostMapping("getUserReward")
    public R getUserReward(){
        return communityService.getUserReward(this.getUserId(),this.getCommunityId());
    }
    @ApiOperation(value = "读取用户随手拍奖励")
    @PostMapping("readUserReward")
    public R readUserReward(){
        return communityService.readUserReward(this.getUserId(),this.getCommunityId());
    }
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/GrantRewardDTO.java
New file
@@ -0,0 +1,30 @@
package com.panzhihua.common.model.dtos.community;
import com.panzhihua.common.validated.AddGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
 * 随手拍发放奖励请求参数
 */
@Data
@ApiModel("随手拍发放奖励请求参数")
public class GrantRewardDTO implements Serializable {
    @ApiModelProperty(value="随手拍id")
    @NotBlank(groups = {AddGroup.class}, message = "随手拍id不能为空")
    private List<Long> ids;
    @ApiModelProperty(value="发放奖励金额")
    @NotBlank(groups = {AddGroup.class}, message = "发放奖励金额不能为空")
    private BigDecimal amount;
    @ApiModelProperty(value="操作人",hidden = true)
    private Long userId;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/easyPhoto/AddEasyPhotoActivityDTO.java
@@ -34,6 +34,9 @@
    @ApiModelProperty("普通奖励金额")
    private BigDecimal ordinaryReward;
    @ApiModelProperty("一般奖励金额")
    private BigDecimal commonlyReward;
    @ApiModelProperty("活动图片")
    private String logo;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/easyPhoto/EditEasyPhotoActivityDTO.java
@@ -32,6 +32,9 @@
    @ApiModelProperty("普通奖励金额")
    private BigDecimal ordinaryReward;
    @ApiModelProperty("一般奖励金额")
    private BigDecimal commonlyReward;
    @ApiModelProperty("活动图片")
    private String logo;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActEasyPhotoActivityVO.java
@@ -38,6 +38,9 @@
    @ApiModelProperty("普通奖励金额")
    private BigDecimal ordinaryReward;
    @ApiModelProperty("一般奖励金额")
    private BigDecimal commonlyReward;
    @ApiModelProperty("活动图片")
    private String logo;
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActEasyPhotoRewardVO.java
New file
@@ -0,0 +1,22 @@
package com.panzhihua.common.model.vos.community;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
 * 用户获得随手拍奖励返回参数
 */
@Data
@ApiModel("用户获得随手拍奖励返回参数")
public class ComActEasyPhotoRewardVO {
    @ApiModelProperty("奖励金额")
    private BigDecimal amount;
    @ApiModelProperty("随手拍最新活动")
    private ComActEasyPhotoActivityVO easyPhotoActivityVO;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActEasyPhotoVO.java
@@ -143,12 +143,15 @@
    @ApiModelProperty(value = "发生地址经纬度信息,逗号分割(长的在前面,短的在后面)")
    private String lngLat;
    @ApiModelProperty(value = "随手拍标签(1.优质 2.精良 3.普通)")
    @ApiModelProperty(value = "随手拍标签(1.优质 2.精良 3.普通 4.一般)")
    private Integer activityType;
    @ApiModelProperty(value = "参加活动奖励金额")
    private BigDecimal activityAmount;
    @ApiModelProperty(value = "随手拍活动id")
    private Long activityId;
    @ApiModelProperty(value = "类型(1.心情类 2.治理类)")
    private Integer easyType;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java
@@ -3702,4 +3702,29 @@
     */
    @PostMapping("/dyn/type/delete")
    R deleteDynTypeByAdmin(@RequestBody List<Long> ids);
    /**
     * 随手拍发放奖励
     * @param grantRewardDTO    请求参数
     * @return  发放结果
     */
    @PostMapping("/easyphoto/grantReward")
    R grantReward(@RequestBody GrantRewardDTO grantRewardDTO);
    /**
     * 获取最新活动和用户最新收益
     * @param userId    用户id
     * @param communityId   社区id
     * @return  最新活动和用户最新收益
     */
    @PostMapping("/easyphoto/getUserReward")
    R getUserReward(@RequestParam("userId") Long userId,@RequestParam("communityId") Long communityId);
    /**
     * 读取用户随手拍奖励
     * @param userId    用户id
     * @return  读取结果
     */
    @PostMapping("/easyphoto/readUserReward")
    R readUserReward(@RequestParam("userId") Long userId,@RequestParam("communityId") Long communityId);
}
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityActivityApi.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.community.GrantRewardDTO;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.*;
@@ -19,6 +20,8 @@
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@@ -401,7 +404,6 @@
        return r;
    }
    @ApiOperation(value = "删除心愿")
    @PostMapping("deletemicrowish")
    public R deleteMicrowish(@RequestParam("id")Long id) {
@@ -416,4 +418,14 @@
        return communityService.easyPhotoStatistics(communityId);
    }
    @ApiOperation(value = "随手拍发放奖励")
    @PostMapping("grantReward")
    public R grantReward(@Valid @RequestBody GrantRewardDTO grantRewardDTO) {
        grantRewardDTO.setUserId(this.getUserId());
        if(grantRewardDTO.getAmount() == null || grantRewardDTO.getAmount().compareTo(BigDecimal.ZERO) < -1){
            return R.fail("您输入的发放金额有误");
        }
        return communityService.grantReward(grantRewardDTO);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java
@@ -1751,4 +1751,35 @@
    public R getCommunityLists(){
        return comActService.getCommunityLists();
    }
    /**
     * 随手拍发放奖励
     * @param grantRewardDTO    请求参数
     * @return  发放结果
     */
    @PostMapping("/easyphoto/grantReward")
    public R grantReward(@RequestBody GrantRewardDTO grantRewardDTO) {
        return comActEasyPhotoService.grantReward(grantRewardDTO);
    }
    /**
     * 获取最新活动和用户最新收益
     * @param userId    用户id
     * @param communityId   社区id
     * @return  最新活动和用户最新收益
     */
    @PostMapping("easyphoto/getUserReward")
    public R getUserReward(@RequestParam("userId") Long userId,@RequestParam("communityId") Long communityId) {
        return comActEasyPhotoService.getUserReward(userId,communityId);
    }
    /**
     * 读取用户随手拍奖励
     * @param userId    用户id
     * @return  读取结果
     */
    @PostMapping("easyphoto/readUserReward")
    public R readUserReward(@RequestParam("userId") Long userId,@RequestParam("communityId") Long communityId) {
        return comActEasyPhotoService.readUserReward(userId,communityId);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActEasyPhotoRewardMapper.java
New file
@@ -0,0 +1,20 @@
package com.panzhihua.service_community.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.panzhihua.service_community.model.dos.ComActEasyPhotoRewardDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.math.BigDecimal;
/**
 * @auther lyq
 * @create 2021-07-23 14:30:03
 * @describe 用户随手拍奖励表mapper类
 */
@Mapper
public interface ComActEasyPhotoRewardMapper extends BaseMapper<ComActEasyPhotoRewardDO> {
    BigDecimal getUserReward(@Param("userId")Long userId, @Param("communityId")Long communityId);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActEasyPhotoActivityDO.java
@@ -74,6 +74,11 @@
    private BigDecimal ordinaryReward;
    /**
     * 一般奖励金额
     */
    private BigDecimal commonlyReward;
    /**
     * 随手拍数量
     */
    private Integer count;
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActEasyPhotoDO.java
@@ -143,12 +143,13 @@
    private BigDecimal activityAmount;
    /**
     * 参加活动标签(1.优质 2.精良 3.普通)
     * 参加活动标签(1.优质 2.精良 3.普通 4.一般)
     */
    public interface activityType{
        int yz = 1;
        int jl = 2;
        int pt = 3;
        int yb = 4;
    }
    /**
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActEasyPhotoRewardDO.java
New file
@@ -0,0 +1,81 @@
package com.panzhihua.service_community.model.dos;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
 * @auther lyq
 * @create 2021-07-23 14:30:03
 * @describe 用户随手拍奖励表实体类
 */
@Data
@TableName("com_act_easy_photo_reward")
public class ComActEasyPhotoRewardDO implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @TableId(type = IdType.AUTO)
    private Long id;
    /**
     * 用户id
     */
    private Long userId;
    /**
     * 社区id
     */
    private Long communityId;
    /**
     * 是否已读(1.是 2.否)
     */
    private Integer isRead;
    /**
     * 奖励金额
     */
    private BigDecimal amount;
    /**
     * 创建时间
     */
    private Date createAt;
    /**
     * 修改时间
     */
    private Date updateAt;
    /**
     * 是否已读(1.是 2.否)
     */
    public interface isRead{
        int yes = 1;
        int no = 2;
    }
    @Override
    public String toString() {
        return "ComActEasyPhotoRewardDO{" +
                "id=" + id +
                ", userId=" + userId +
                ", communityId=" + communityId +
                ", isRead=" + isRead +
                ", amount=" + amount +
                ", createAt=" + createAt +
                ", updateAt=" + updateAt +
                "}";
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActEasyPhotoRewardService.java
New file
@@ -0,0 +1,13 @@
package com.panzhihua.service_community.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.panzhihua.service_community.model.dos.ComActEasyPhotoRewardDO;
/**
 * @auther lyq
 * @create 2021-07-23 14:30:03
 * @describe 用户随手拍奖励表服务类
 */
public interface ComActEasyPhotoRewardService extends IService<ComActEasyPhotoRewardDO> {
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActEasyPhotoService.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.panzhihua.common.model.dtos.community.ComActEasyPhotoCommentDTO;
import com.panzhihua.common.model.dtos.community.GrantRewardDTO;
import com.panzhihua.common.model.dtos.community.PageComActEasyPhotoCommentDTO;
import com.panzhihua.common.model.dtos.community.ComActEasyPhotoCommentUserDTO;
import com.panzhihua.common.model.dtos.partybuilding.ComPbServiceTeamDTO;
@@ -91,5 +92,27 @@
     */
    R easyPhotoStatistics(Long communityId);
    /**
     * 随手拍发放奖励
     * @param grantRewardDTO    请求参数
     * @return  发放结果
     */
    R grantReward(GrantRewardDTO grantRewardDTO);
    /**
     * 获取最新活动和用户最新收益
     * @param userId    用户id
     * @param communityId   社区id
     * @return  最新活动和用户最新收益
     */
    R getUserReward(Long userId,Long communityId);
    /**
     * 读取用户随手拍奖励
     * @param userId    用户id
     * @return  读取结果
     */
    R readUserReward(Long userId,Long communityId);
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActUserWalletService.java
@@ -8,6 +8,8 @@
import com.panzhihua.common.model.vos.R;
import com.panzhihua.service_community.model.dos.ComActUserWalletDO;
import java.math.BigDecimal;
/**
 * @auther lyq
 * @create 2021-06-25 10:35:11
@@ -33,9 +35,10 @@
     * 随手拍审核通过给用户添加收益
     * @param activityType  审核通过选择的随手拍标签(1.优质 2.精良 3.普通)
     * @param easyPhotoId   随手拍id
     * @param userId    审核用户id
     * @param userId    发放用户id
     * @param amount    发放奖励金额
     */
    void examineAddMoney(Integer activityType,Long easyPhotoId,Long userId);
    void examineAddMoney(Integer activityType, Long easyPhotoId, Long userId, BigDecimal amount);
    /**
     * 分页查询收益结算列表
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoRewardServiceImpl.java
New file
@@ -0,0 +1,19 @@
package com.panzhihua.service_community.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.service_community.dao.ComActEasyPhotoRewardMapper;
import com.panzhihua.service_community.model.dos.ComActEasyPhotoRewardDO;
import com.panzhihua.service_community.service.ComActEasyPhotoRewardService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
/**
 * @auther lyq
 * @create 2021-07-23 14:30:03
 * @describe 用户随手拍奖励表服务实现类
 */
@Slf4j
@Service
public class ComActEasyPhotoRewardServiceImpl extends ServiceImpl<ComActEasyPhotoRewardMapper, ComActEasyPhotoRewardDO> implements ComActEasyPhotoRewardService {
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActEasyPhotoServiceImpl.java
@@ -5,12 +5,11 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.model.dtos.community.ComActEasyPhotoCommentDTO;
import com.panzhihua.common.model.dtos.community.GrantRewardDTO;
import com.panzhihua.common.model.dtos.community.PageComActEasyPhotoCommentDTO;
import com.panzhihua.common.model.dtos.community.ComActEasyPhotoCommentUserDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.ComActEasyPhotoCommentVO;
import com.panzhihua.common.model.vos.community.ComActEasyPhotoVO;
import com.panzhihua.common.model.vos.community.TodoEventsVO;
import com.panzhihua.common.model.vos.community.*;
import com.panzhihua.common.utlis.DateUtils;
import com.panzhihua.common.utlis.SensitiveUtil;
import com.panzhihua.common.utlis.StringUtils;
@@ -18,11 +17,13 @@
import com.panzhihua.service_community.model.dos.*;
import com.panzhihua.service_community.service.ComActEasyPhotoService;
import com.panzhihua.service_community.service.ComActUserWalletService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -33,6 +34,7 @@
 * @author: huang.hongfa weixin hhf9596 qq 959656820
 * @create: 2020-12-07 14:31
 **/
@Slf4j
@Service
public class ComActEasyPhotoServiceImpl extends ServiceImpl<ComActEasyPhotoDAO, ComActEasyPhotoDO> implements ComActEasyPhotoService {
    @Resource
@@ -45,6 +47,8 @@
    private ComActEasyPhotoCommentUserDAO comActEasyPhotoCommentUserDAO ;
    @Resource
    private ComActEasyPhotoActivityMapper comActEasyPhotoActivityMapper;
    @Resource
    private ComActEasyPhotoRewardMapper comActEasyPhotoRewardMapper;
    @Resource
    private ComActUserWalletService comActUserWalletService;
    /**
@@ -79,6 +83,20 @@
                    comActEasyPhotoVO1.setHaveGiveThumbsUp(1);
                }
                comActEasyPhotoVO1.setPhone(SensitiveUtil.desensitizedPhoneNumber(comActEasyPhotoVO1.getPhone()));
                if(comActEasyPhotoVO1.getActivityId() != null && comActEasyPhotoVO1.getStatus().equals(ComActEasyPhotoDO.status.ywc)){
                    //查询随手拍活动
                    ComActEasyPhotoActivityDO photoActivityDO = comActEasyPhotoActivityMapper.selectById(comActEasyPhotoVO1.getActivityId());
                    if(comActEasyPhotoVO1.getActivityType().equals(ComActEasyPhotoDO.activityType.yz)){
                        comActEasyPhotoVO1.setActivityAmount(photoActivityDO.getGoodReward());
                    }else if(comActEasyPhotoVO1.getActivityType().equals(ComActEasyPhotoDO.activityType.jl)){
                        comActEasyPhotoVO1.setActivityAmount(photoActivityDO.getExcellentReward());
                    }else if(comActEasyPhotoVO1.getActivityType().equals(ComActEasyPhotoDO.activityType.pt)){
                        comActEasyPhotoVO1.setActivityAmount(photoActivityDO.getOrdinaryReward());
                    }else if(comActEasyPhotoVO1.getActivityType().equals(ComActEasyPhotoDO.activityType.yb)){
                        comActEasyPhotoVO1.setActivityAmount(photoActivityDO.getCommonlyReward());
                    }
                }
            });
            iPage.setRecords(records);
        }
@@ -213,8 +231,7 @@
                    cmActEasyPhotoDO.setStatus(4);//已完成
                }
                cmActEasyPhotoDO.setExamineAt(date);
                //审核通过判断随手拍是否有活动并计算用户收益
                comActUserWalletService.examineAddMoney(comActEasyPhotoVO.getActivityType(),comActEasyPhotoVO.getId(),comActEasyPhotoVO.getUserId());
                cmActEasyPhotoDO.setActivityType(comActEasyPhotoVO.getActivityType());
                break;
            case 2:
                cmActEasyPhotoDO = this.comActEasyPhotoDAO.selectById(comActEasyPhotoVO.getId());
@@ -407,5 +424,81 @@
        return R.ok(this.baseMapper.getEasyPhotoStatistics(communityId));
    }
    /**
     * 随手拍发放奖励
     * @param grantRewardDTO    请求参数
     * @return  发放结果
     */
    @Override
    public R grantReward(GrantRewardDTO grantRewardDTO){
        if(grantRewardDTO.getIds() == null){
            return R.fail("参数错误");
        }
        for (Long id:grantRewardDTO.getIds()) {
            //查询随手拍
            ComActEasyPhotoDO easyPhotoDO = this.baseMapper.selectById(id);
            if(easyPhotoDO != null){
                if(easyPhotoDO.getActivityAmount() != null){
                    log.info("该随手拍已发放过奖励,不可重复发放,随手拍id" + easyPhotoDO.getId());
                    continue;
                }
                //审核通过判断随手拍是否有活动并计算用户收益
                comActUserWalletService.examineAddMoney(easyPhotoDO.getActivityType(),easyPhotoDO.getId(),easyPhotoDO.getSponsorId(),grantRewardDTO.getAmount());
            }
        }
        return R.ok();
    }
    /**
     * 获取最新活动和用户最新收益
     * @param userId    用户id
     * @param communityId   社区id
     * @return  最新活动和用户最新收益
     */
    @Override
    public R getUserReward(Long userId,Long communityId){
        //结果返回参数
        ComActEasyPhotoRewardVO easyPhotoRewardVO = new ComActEasyPhotoRewardVO();
        //查询随手拍活动
        ComActEasyPhotoActivityVO photoActivityVO = new ComActEasyPhotoActivityVO();
        Date nowDate = DateUtils.getCurrentDate(DateUtils.ymdhms_format);
        List<ComActEasyPhotoActivityDO> photoActivityDOS = comActEasyPhotoActivityMapper.selectList(
                new QueryWrapper<ComActEasyPhotoActivityDO>().lambda().eq(ComActEasyPhotoActivityDO::getCommunityId,communityId)
                        .eq(ComActEasyPhotoActivityDO::getStatus,ComActEasyPhotoActivityDO.status.jxz)
                        .le(ComActEasyPhotoActivityDO::getActivityStartAt,nowDate).ge(ComActEasyPhotoActivityDO::getActivityEndAt,nowDate));
        if(!photoActivityDOS.isEmpty()){
            ComActEasyPhotoActivityDO photoActivityDO = photoActivityDOS.get(0);
            BeanUtils.copyProperties(photoActivityDO,photoActivityVO);
        }
        easyPhotoRewardVO.setEasyPhotoActivityVO(photoActivityVO);
        //查询用户未读奖励金额
        BigDecimal amount = comActEasyPhotoRewardMapper.getUserReward(userId,communityId);
        if(amount != null){
            easyPhotoRewardVO.setAmount(amount);
        }
        return R.ok(easyPhotoRewardVO);
    }
    /**
     * 读取用户随手拍奖励
     * @param userId    用户id
     * @return  读取结果
     */
    @Override
    public R readUserReward(Long userId,Long communityId){
        ComActEasyPhotoRewardDO easyPhotoRewardDO = comActEasyPhotoRewardMapper.selectOne(new QueryWrapper<ComActEasyPhotoRewardDO>().lambda()
                .eq(ComActEasyPhotoRewardDO::getUserId,userId).eq(ComActEasyPhotoRewardDO::getCommunityId,communityId)
                .eq(ComActEasyPhotoRewardDO::getIsRead,ComActEasyPhotoRewardDO.isRead.no));
        if(easyPhotoRewardDO != null){
            easyPhotoRewardDO.setIsRead(ComActEasyPhotoRewardDO.isRead.yes);
            easyPhotoRewardDO.setUpdateAt(new Date());
            comActEasyPhotoRewardMapper.updateById(easyPhotoRewardDO);
        }
        return R.ok();
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActUserWalletServiceImpl.java
@@ -14,11 +14,9 @@
import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.service_community.dao.ComActEasyPhotoActivityMapper;
import com.panzhihua.service_community.dao.ComActEasyPhotoDAO;
import com.panzhihua.service_community.dao.ComActEasyPhotoRewardMapper;
import com.panzhihua.service_community.dao.ComActUserWalletMapper;
import com.panzhihua.service_community.model.dos.ComActEasyPhotoActivityDO;
import com.panzhihua.service_community.model.dos.ComActEasyPhotoDO;
import com.panzhihua.service_community.model.dos.ComActUserWalletDO;
import com.panzhihua.service_community.model.dos.ComActUserWalletTradeDO;
import com.panzhihua.service_community.model.dos.*;
import com.panzhihua.service_community.service.ComActUserWalletChangeService;
import com.panzhihua.service_community.service.ComActUserWalletService;
import com.panzhihua.service_community.service.ComActUserWalletTradeService;
@@ -51,6 +49,8 @@
    private ComActUserWalletTradeService comActUserWalletTradeService;
    @Resource
    private ComActUserWalletChangeService comActUserWalletChangeService;
    @Resource
    private ComActEasyPhotoRewardMapper comActEasyPhotoRewardMapper;
    /**
     * 查询用户钱包信息
@@ -113,7 +113,7 @@
     * @param easyPhotoId   随手拍id
     */
    @Override
    public void examineAddMoney(Integer activityType,Long easyPhotoId,Long userId){
    public void examineAddMoney(Integer activityType,Long easyPhotoId,Long userId,BigDecimal amount){
        //查询随手拍信息
        ComActEasyPhotoDO easyPhotoDO = comActEasyPhotoDAO.selectById(easyPhotoId);
@@ -128,11 +128,11 @@
        }
        //查询随手拍活动
        ComActEasyPhotoActivityDO photoActivityDO = comActEasyPhotoActivityMapper.selectById(easyPhotoDO.getActivityId());
        if(photoActivityDO == null){
            log.error("给用户添加收益失败,原因:未查到活动记录,活动id:" + easyPhotoDO.getActivityId());
            return;
        }
//        ComActEasyPhotoActivityDO photoActivityDO = comActEasyPhotoActivityMapper.selectById(easyPhotoDO.getActivityId());
//        if(photoActivityDO == null){
//            log.error("给用户添加收益失败,原因:未查到活动记录,活动id:" + easyPhotoDO.getActivityId());
//            return;
//        }
//        if(photoActivityDO.getStatus() != ComActEasyPhotoActivityDO.status.jxz){
//            log.error("给用户添加收益失败,原因:活动未在进行中,活动id:" + easyPhotoDO.getActivityId());
@@ -156,17 +156,7 @@
            this.baseMapper.insert(userWalletDO);
        }
        //计算收益
        BigDecimal profitAmount = BigDecimal.ZERO;
        if(activityType.equals(ComActEasyPhotoDO.activityType.yz)){
            profitAmount = photoActivityDO.getGoodReward();
        }else if(activityType.equals(ComActEasyPhotoDO.activityType.jl)){
            profitAmount = photoActivityDO.getExcellentReward();
        }else if(activityType.equals(ComActEasyPhotoDO.activityType.pt)){
            profitAmount = photoActivityDO.getOrdinaryReward();
        }
        if(profitAmount.compareTo(BigDecimal.ZERO) == 0){
        if(amount.compareTo(BigDecimal.ZERO) == 0){
            log.error("此次参加活动的随手拍收益为0,不记录本次交易");
            return;
        }else{
@@ -176,23 +166,42 @@
            BigDecimal oldSettlementAmount = userWalletDO.getSettlementAmount();
            //更新钱包金额
            userWalletDO.setIncomeAmount(userWalletDO.getIncomeAmount().add(profitAmount));
            userWalletDO.setAvailableAmount(userWalletDO.getAvailableAmount().add(profitAmount));
            userWalletDO.setIncomeAmount(userWalletDO.getIncomeAmount().add(amount));
            userWalletDO.setAvailableAmount(userWalletDO.getAvailableAmount().add(amount));
            comActUserWalletMapper.updateById(userWalletDO);
            //新增钱包资金交易记录
            Long tradeId = comActUserWalletTradeService.addWalletTrade(easyPhotoDO.getSponsorId(),easyPhotoDO.getCommunityId()
                    ,easyPhotoDO.getId(),profitAmount, ComActUserWalletTradeDO.type.fb,"发布随手拍"
                    ,easyPhotoDO.getId(),amount, ComActUserWalletTradeDO.type.fb,"发布随手拍"
                    ,userId,userWalletDO.getId(),ComActUserWalletTradeDO.changeType.add);
            //新增钱包资金变动记录
            comActUserWalletChangeService.addWalletChange(easyPhotoDO.getSponsorId(),easyPhotoDO.getCommunityId(),userWalletDO.getId()
                    ,oldIncomeAmount,userWalletDO.getIncomeAmount(),oldAvailableAmount,userWalletDO.getAvailableAmount()
                    ,oldSettlementAmount,userWalletDO.getSettlementAmount(),tradeId);
            //查询用户未读奖励金额
            ComActEasyPhotoRewardDO easyPhotoRewardDO = comActEasyPhotoRewardMapper.selectOne(new QueryWrapper<ComActEasyPhotoRewardDO>().lambda()
                    .eq(ComActEasyPhotoRewardDO::getCommunityId,easyPhotoDO.getCommunityId())
                    .eq(ComActEasyPhotoRewardDO::getUserId,easyPhotoDO.getSponsorId())
                    .eq(ComActEasyPhotoRewardDO::getIsRead,ComActEasyPhotoRewardDO.isRead.no));
            if(easyPhotoRewardDO == null){
                easyPhotoRewardDO = new ComActEasyPhotoRewardDO();
                easyPhotoRewardDO.setCommunityId(easyPhotoDO.getCommunityId());
                easyPhotoRewardDO.setUserId(easyPhotoDO.getSponsorId());
                easyPhotoRewardDO.setIsRead(ComActEasyPhotoRewardDO.isRead.no);
                easyPhotoRewardDO.setCreateAt(new Date());
                easyPhotoRewardDO.setAmount(amount);
                comActEasyPhotoRewardMapper.insert(easyPhotoRewardDO);
            }else{
                easyPhotoRewardDO.setAmount(easyPhotoRewardDO.getAmount().add(amount));
                easyPhotoRewardDO.setUpdateAt(new Date());
                comActEasyPhotoRewardMapper.updateById(easyPhotoRewardDO);
            }
        }
        //更新随手拍活动信息
        easyPhotoDO.setActivityType(activityType);
        easyPhotoDO.setActivityAmount(profitAmount);
        easyPhotoDO.setActivityAmount(amount);
        comActEasyPhotoDAO.updateById(easyPhotoDO);
    }
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActEasyPhotoActivityDOMapper.xml
@@ -16,17 +16,18 @@
        <result column="count" property="count" />
        <result column="logo" property="logo" />
        <result column="create_at" property="createAt" />
        <result column="commonly_reward" property="commonlyReward" />
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, status, content, activity_start_at, activity_end_at, release_at, good_reward, excellent_reward, ordinary_reward, count, create_at, logo
        id, status, content, activity_start_at, activity_end_at, release_at, good_reward, excellent_reward, ordinary_reward, count, create_at, logo, commonly_reward
    </sql>
    <select id="pageActivity" parameterType="com.panzhihua.common.model.dtos.community.easyPhoto.PageEasyPhotoActivityDTO"
            resultType="com.panzhihua.common.model.vos.community.ComActEasyPhotoActivityVO">
        select id,community_id,status,content,activity_start_at,activity_end_at,release_at,good_reward
        ,excellent_reward,ordinary_reward,count,logo from com_act_easy_photo_activity
        ,excellent_reward,ordinary_reward,commonly_reward,count,logo from com_act_easy_photo_activity
        <where>
            <if test="pageEasyPhotoActivityDTO.status != null">
                and status = #{pageEasyPhotoActivityDTO.status}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActEasyPhotoRewardDOMapper.xml
New file
@@ -0,0 +1,25 @@
<?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_community.dao.ComActEasyPhotoRewardMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.panzhihua.service_community.model.dos.ComActEasyPhotoRewardDO">
        <id column="id" property="id" />
        <result column="user_id" property="userId" />
        <result column="community_id" property="communityId" />
        <result column="is_read" property="isRead" />
        <result column="amount" property="amount" />
        <result column="create_at" property="createAt" />
        <result column="update_at" property="updateAt" />
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, user_id, community_id, is_read, amount, create_at, update_at
    </sql>
    <select id="getUserReward" resultType="java.math.BigDecimal">
        select amount from com_act_easy_photo_reward where user_id = #{userId} and is_read = 2 and community_id = #{communityId}
    </select>
</mapper>