lidongdong
2023-09-04 b2fce0dc7dc4ea5dec9792a2bc3ceb9d33d6e07b
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/VolunteerActivitiesPeopleServiceImpl.java
@@ -1,17 +1,18 @@
package com.panzhihua.service_community.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.ComMngVolunteerMngVO;
import com.panzhihua.common.model.vos.community.GrantIntegral;
import com.panzhihua.common.model.vos.community.VolunteerActivitiesPeopleVO;
import com.panzhihua.common.model.vos.community.VolunteerActivityVO;
import com.panzhihua.common.model.vos.community.*;
import com.panzhihua.common.service.user.UserService;
import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.service_community.dao.VolunteerActivitiesPeopleDao;
import com.panzhihua.service_community.entity.SysUser;
import com.panzhihua.service_community.entity.VolunteerActivitiesPeople;
import com.panzhihua.service_community.service.ComMngVolunteerMngService;
import com.panzhihua.service_community.service.VolunteerActivitiesPeopleService;
import com.panzhihua.service_community.service.VolunteerActivityService;
import com.panzhihua.service_community.service.VolunteerIntegralRecordService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@@ -23,12 +24,14 @@
public class VolunteerActivitiesPeopleServiceImpl extends ServiceImpl<VolunteerActivitiesPeopleDao,
        VolunteerActivitiesPeople> implements VolunteerActivitiesPeopleService
{
    @Resource
    private ComMngVolunteerMngService comMngVolunteerMngService;
    @Resource
    private VolunteerActivityService volunteerActivityService;
    @Resource
    private VolunteerIntegralRecordService volunteerIntegralRecordService;
    @Resource
    private UserService userService;
    @Override
@@ -58,39 +61,61 @@
    }
    @Override
    public R grantIntegral(GrantIntegral grantIntegral) {
    public R grantIntegral(GrantIntegral grantIntegral)
    {
        for (GrantIntegral item: grantIntegral.getPeopleAndGranList() )
        {
            if(StringUtils.isEmpty(grantIntegral.getId()))
            if(StringUtils.isEmpty(item.getId()))
            {
                return R.fail("奖励发放id不能为空!");
            }
            if(StringUtils.isEmpty(item.getGrantIntegral()))
            {
                return R.fail("奖励发放积分不能为空!");
            }
            //用户新增积分
            LoginUserInfoVO sysUser=userService.getUserInfoByUserId(item.getUserId()).getData();
            VolunteerActivitiesPeopleVO vla=new VolunteerActivitiesPeopleVO();
            vla.setId(item.getId());
            vla.setUserId(item.getUserId());
            vla.setIssuePoints(item.getGrantIntegral());
            vla.setCommunityId(sysUser.getCommunityId()+"");
            vla.setIssueStatus("1");
            baseMapper.vapUpdate(vla);
            ComMngVolunteerMngVO comMngVolunteerMngVO=new ComMngVolunteerMngVO();
            comMngVolunteerMngVO.setId(Long.valueOf(item.getVolunteerId()));
            int grant=0;
            if(!StringUtils.isNotEmpty(comMngVolunteerMngVO.getLoveIntegral()))
            if(!StringUtils.isEmpty(sysUser.getLoveIntegral()))
            {
                grant=Integer.valueOf(comMngVolunteerMngVO.getLoveIntegral());
                grant=Integer.valueOf(sysUser.getLoveIntegral());
            }
            grant+=Integer.valueOf(item.getGrantIntegral());
            sysUser.setLoveIntegral(grant+"");
            userService.putUser(sysUser);
            comMngVolunteerMngVO.setLoveIntegral(grant+"");
            comMngVolunteerMngService.putVolunteer(comMngVolunteerMngVO);
            //新增积分记录
            VolunteerIntegralRecordVO volunteerIntegralRecordVO=new VolunteerIntegralRecordVO();
            volunteerIntegralRecordVO.setIntegral(item.getGrantIntegral());
            volunteerIntegralRecordVO.setVolunteerId(item.getVolunteerId());
            volunteerIntegralRecordVO.setUserId(item.getUserId());
            volunteerIntegralRecordVO.setIType("1");
            volunteerIntegralRecordVO.setCommunityId(sysUser.getCommunityId()+"");
            volunteerIntegralRecordService.insertVolunteer(volunteerIntegralRecordVO);
        }
        VolunteerActivityVO activityVO=new VolunteerActivityVO();
        activityVO.setId(grantIntegral.getActivityId());
        activityVO.setAwardState("1");
        volunteerActivityService.updateById(activityVO);
        //判断活动奖励是否发放完
        int  num=baseMapper.vapGetUnissuedQuantity(grantIntegral.getActivityId());
        if(num==0)
        {
            VolunteerActivityVO activityVO=new VolunteerActivityVO();
            activityVO.setId(grantIntegral.getActivityId());
            activityVO.setAwardState("1");
            volunteerActivityService.updateById(activityVO);
        }
        return R.ok();
    }