xiaoyong931011
2021-12-08 f5e6133809c553cfd9fb28ee61019927c547c374
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,7 +323,30 @@
        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);
    }
    @Override
    public Result getOwnAwards(CannonWinRecordDto cannonWinRecordDto) {
        Long memberId = LoginUserUtils.getAppLoginUser().getId();
        Page<CannonWinRecordVo> page = new Page<>(cannonWinRecordDto.getPageNum(), cannonWinRecordDto.getPageSize());
        CannonWinRecord cannonWinRecord = new CannonWinRecord();
        cannonWinRecord.setMemberId(memberId);
        IPage<CannonWinRecordVo> list = cannonSettingDao.findCannonWinRecordInPage(page, cannonWinRecord);
        return Result.ok(list);
    }
    @Override
    public Result getListAwards() {
        Long memberId = LoginUserUtils.getAppLoginUser().getId();
        List<CannonWinRecordVo> list = cannonSettingDao.findCannonWinRecordList();
        return Result.ok(list);
    }
    private CannonAwardVo getAward(Long memberId) {
@@ -327,23 +356,26 @@
        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.setImage(cannonAward.getImage());
                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.setImage(cannonAward.getImage());
                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);
                cannonAwardVo.setName(cannonAward.getName());
                cannonAwardVo.setImage(cannonAward.getImage());
                cannonAwardVo.setQuantity(cannonAward.getQuantity());
            }else{
                CannonSetting cannonSetting = cannonSettingDao.selectCannonSettingByCannonCode(cannonAward.getCode());
@@ -362,6 +394,7 @@
                    cannonOwnRecordDao.insert(cannonOwnRecord);
                    cannonAwardVo.setName(cannonAward.getName());
                    cannonAwardVo.setImage(cannonAward.getImage());
                    cannonAwardVo.setQuantity(cannonAward.getQuantity());
                }else{
                    CannonAward cannonAwardGold = cannonOwnRecordDao.selectCannonAwardByCode("GOLD");
@@ -369,6 +402,7 @@
                    MemberAccountGold memberAccountGold = memberAccountGoldDao.selectAccountGoldByMemberId(memberId);
                    memberCannonService.updateTotalBalanceAndAvailableBalance(memberAccountGold.getId(),quantity,quantity,null);
                    cannonAwardVo.setName(cannonAwardGold.getName());
                    cannonAwardVo.setImage(cannonAwardGold.getImage());
                    cannonAwardVo.setQuantity(cannonAwardGold.getQuantity());
                }
            }
@@ -380,7 +414,6 @@
    public static void main(String[] args) {
        System.out.println(UUID.randomUUID().toString());
    }