init
This commit is contained in:
@@ -2,6 +2,7 @@ package com.ruoyi.cai.manager;
|
||||
|
||||
import cn.hutool.extra.spring.SpringUtil;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.ruoyi.cai.domain.Rank;
|
||||
import com.ruoyi.cai.domain.User;
|
||||
import com.ruoyi.cai.domain.UserInfo;
|
||||
import com.ruoyi.cai.enums.SystemConfigEnum;
|
||||
@@ -9,8 +10,11 @@ import com.ruoyi.cai.enums.account.AccountChangeCodeEnum;
|
||||
import com.ruoyi.cai.executor.ExecutorConstant;
|
||||
import com.ruoyi.cai.mapper.AccountMapper;
|
||||
import com.ruoyi.cai.service.AccountChangeLogService;
|
||||
import com.ruoyi.cai.service.RankService;
|
||||
import com.ruoyi.cai.service.UserInfoService;
|
||||
import com.ruoyi.cai.service.UserService;
|
||||
import com.ruoyi.cai.util.CaiDateUtil;
|
||||
import com.ruoyi.common.exception.ServiceException;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.BooleanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -18,6 +22,7 @@ import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.time.LocalDate;
|
||||
|
||||
@Component
|
||||
@Slf4j
|
||||
@@ -33,6 +38,8 @@ public class AwardManager {
|
||||
private UserService userService;
|
||||
@Autowired
|
||||
private UserInfoService userInfoService;
|
||||
@Autowired
|
||||
private RankService rankService;
|
||||
|
||||
public void giveRegisterAsync(Long userId){
|
||||
AwardManager bean = SpringUtil.getBean(AwardManager.class);
|
||||
@@ -89,4 +96,31 @@ public class AwardManager {
|
||||
accountMapper.incsIncomeCoin(userId,price);
|
||||
accountChangeLogService.saveLogNoAdmin(user.getId(),user.getUsercode(), AccountChangeCodeEnum.FAST_PAY_AWARD,price,traceId);
|
||||
}
|
||||
|
||||
|
||||
public void giveRank(Long rankId,Long userId){
|
||||
Rank rank = rankService.getById(rankId);
|
||||
if(rank == null){
|
||||
throw new ServiceException("领取失败,奖励不存在");
|
||||
}
|
||||
if(!rank.getUserId().equals(userId)){
|
||||
throw new ServiceException("只能领取自己的奖励哦");
|
||||
}
|
||||
if(rank.getOrderRank() > 10){
|
||||
throw new ServiceException("只有前10名可以领取奖励");
|
||||
}
|
||||
if(rank.getDataType().equals(1)){ // 日榜
|
||||
LocalDate lastDay = LocalDate.now().plusDays(-1);
|
||||
if(!rank.getRankBeginTime().equals(lastDay)){
|
||||
throw new ServiceException("领奖时间已过");
|
||||
}
|
||||
rankService.giveRank(rankId);
|
||||
}else if(rank.getDataType().equals(2)){ // 周榜
|
||||
LocalDate date = CaiDateUtil.getLastWeekOne(LocalDate.now());
|
||||
if(!rank.getRankBeginTime().equals(date)){
|
||||
throw new ServiceException("领奖时间已过");
|
||||
}
|
||||
rankService.giveRank(rankId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user