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.*; 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; import javax.annotation.Resource; import java.util.List; @Slf4j @Service public class VolunteerActivitiesPeopleServiceImpl extends ServiceImpl implements VolunteerActivitiesPeopleService { @Resource private VolunteerActivityService volunteerActivityService; @Resource private VolunteerIntegralRecordService volunteerIntegralRecordService; @Resource private UserService userService; @Override public VolunteerActivitiesPeople vapGetById(String id) { return baseMapper.vapGetById(id); } @Override public List vapGetList(String activityId, String communityId) { return baseMapper.vapGetList(activityId,communityId); } @Override public int vapInsert(VolunteerActivitiesPeopleVO volunteerActivitiesPeopleVO) { return baseMapper.vapInsert(volunteerActivitiesPeopleVO); } @Override public int vapUpdate(VolunteerActivitiesPeopleVO volunteerActivitiesPeopleVO) { return baseMapper.vapUpdate(volunteerActivitiesPeopleVO); } @Override public int vapDelete(String id) { return baseMapper.vapDelete(id); } @Override public R grantIntegral(GrantIntegral grantIntegral) { for (GrantIntegral item: grantIntegral.getPeopleAndGranList() ) { 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); int grant=0; if(!StringUtils.isEmpty(sysUser.getLoveIntegral())) { grant=Integer.valueOf(sysUser.getLoveIntegral()); } grant+=Integer.valueOf(item.getGrantIntegral()); sysUser.setLoveIntegral(grant+""); userService.putUser(sysUser); //新增积分记录 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); } //判断活动奖励是否发放完 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(); } }