xiaoyong931011
2021-12-07 37518c255d676f17e661dfdfd6152de3405f7dcd
20211207  fish
1 files modified
2 files added
43 ■■■■■ changed files
src/main/java/com/xcong/excoin/modules/fish/dao/CannonWinRecordDao.java 7 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/fish/entity/CannonWinRecord.java 18 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/fish/service/impl/MemberCannonServiceImpl.java 18 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/fish/dao/CannonWinRecordDao.java
New file
@@ -0,0 +1,7 @@
package com.xcong.excoin.modules.fish.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xcong.excoin.modules.fish.entity.CannonWinRecord;
public interface CannonWinRecordDao extends BaseMapper<CannonWinRecord> {
}
src/main/java/com/xcong/excoin/modules/fish/entity/CannonWinRecord.java
New file
@@ -0,0 +1,18 @@
package com.xcong.excoin.modules.fish.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.xcong.excoin.common.system.base.BaseEntity;
import lombok.Data;
import java.math.BigDecimal;
@Data
@TableName("cannon_win_record")
public class CannonWinRecord extends BaseEntity {
    private Long memberId;
    private BigDecimal consumeNum;
    private String awardName;
}
src/main/java/com/xcong/excoin/modules/fish/service/impl/MemberCannonServiceImpl.java
@@ -44,6 +44,8 @@
    @Resource
    CannonGameRecordDao cannonGameRecordDao;
    @Resource
    CannonWinRecordDao cannonWinRecordDao;
    @Resource
    RedisUtils redisUtils;
    @Resource
    private CoinService coinService;
@@ -281,6 +283,8 @@
    @Override
    public Result getAwards() {
        Long memberId = LoginUserUtils.getAppLoginUser().getId();
//        Long memberId = 1L;
        AwardsVo awardsVo = cannonOwnRecordDao.getAwards();
        return Result.ok(awardsVo);
    }
@@ -288,6 +292,8 @@
    @Override
    public Result lotteryDraw(LotteryDrawDto lotteryDrawDto) {
        Long memberId = LoginUserUtils.getAppLoginUser().getId();
//        Long memberId = 1L;
        //获取每次抽奖需要的USDT数量
        CannonAwardSet cannonAwardSet = cannonOwnRecordDao.getCannonAwardSet();
        if(ObjectUtil.isEmpty(cannonAwardSet)){
@@ -317,6 +323,12 @@
        cannonAccountMoneyChangeDao.insert(cannonAccountMoneyChange);
        //抽奖品
        CannonAwardVo award = getAward(memberId);
        CannonWinRecord cannonWinRecord = new CannonWinRecord();
        cannonWinRecord.setMemberId(memberId);
        cannonWinRecord.setAwardName(award.getName()+"*"+award.getQuantity());
        cannonWinRecord.setConsumeNum(consume);
        cannonWinRecordDao.insert(cannonWinRecord);
        return Result.ok(award);
    }
@@ -327,19 +339,19 @@
        if(CollUtil.isNotEmpty(cannonAwards)){
            CannonAward cannonAward = RandomUtil.randomEle(cannonAwards);
            //获得金币
            if(cannonAward.getCode() == "GOLD"){
            if("GOLD".equals(cannonAward.getCode())){
                BigDecimal quantity = new BigDecimal(cannonAward.getQuantity());
                MemberAccountGold memberAccountGold = memberAccountGoldDao.selectAccountGoldByMemberId(memberId);
                memberCannonService.updateTotalBalanceAndAvailableBalance(memberAccountGold.getId(),quantity,quantity,null);
                cannonAwardVo.setName(cannonAward.getName());
                cannonAwardVo.setQuantity(cannonAward.getQuantity());
            }else if(cannonAward.getCode() == "COIN"){
            }else if("COIN".equals(cannonAward.getCode())){
                BigDecimal quantity = new BigDecimal(cannonAward.getQuantity());
                MemberWalletCoinEntity memberWalletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, CoinTypeEnum.XCC.name());
                coinService.updateWalletBalance(memberWalletCoinEntity.getId(),quantity,quantity,null);
                cannonAwardVo.setName(cannonAward.getName());
                cannonAwardVo.setQuantity(cannonAward.getQuantity());
            }else if(cannonAward.getCode() == "USDT"){
            }else if("USDT".equals(cannonAward.getCode())){
                BigDecimal quantity = new BigDecimal(cannonAward.getQuantity());
                MemberWalletCoinEntity memberWalletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, CoinTypeEnum.USDT.name());
                coinService.updateWalletBalance(memberWalletCoinEntity.getId(),quantity,quantity,null);