Helius
2021-06-16 0be3d5de8490fc883935f0418a14e82db25b6b72
src/main/java/com/xcong/excoin/modules/coin/controller/GbzOrderController.java
@@ -53,13 +53,23 @@
            return Result.fail("无法购买");
        }
        String start = redisUtils.getString("bzz_start");
        if ("2".equals(start)) {
            return Result.fail("暂无法购买");
        }
        String total = redisUtils.getString("bzz_coin_total");
        MemberEntity loginUser = LoginUserUtils.getAppLoginUser();
        BigDecimal price = new BigDecimal(66);
        BigDecimal price = new BigDecimal(redisUtils.getString("bzz_order_new_price"));
        BigDecimal amount = BigDecimal.valueOf(gbzAddDto.getCount()).multiply(price);
        MemberWalletCoinEntity wallet = memberWalletCoinDao.selectWalletCoinBymIdAndCode(loginUser.getId(), CoinTypeEnum.USDT.name());
        if (amount.compareTo(wallet.getAvailableBalance()) > 0) {
            return Result.fail("可用金额不足");
        }
        if (Integer.parseInt(total) < gbzAddDto.getCount()) {
            return Result.fail("BZZ数量不足");
        }
        GbzOrderEntity gbzOrder = new GbzOrderEntity();
@@ -73,7 +83,7 @@
        gbzOrderDao.insert(gbzOrder);
        memberWalletCoinDao.updateBlockBalance(wallet.getId(), amount.negate(), BigDecimal.ZERO, 0);
        redisUtils.set("bzz_coin_total", Integer.parseInt(total) - gbzAddDto.getCount());
        LogRecordUtils.insertMemberAccountMoneyChange(loginUser.getId(), "购买BZZ", amount, "USDT", 1, 1);
        return Result.ok("购买成功");
    }
@@ -82,8 +92,11 @@
    @ApiOperation(value = "获取订单列表")
    @PostMapping(value = "/findList")
    public Result findList(@RequestBody GbzListDto gbzListDto) {
        MemberEntity member = LoginUserUtils.getAppLoginUser();
        GbzOrderEntity gbzOrderEntity = new GbzOrderEntity();
        gbzOrderEntity.setMemberId(member.getId());
        Page<GbzOrderEntity> page = new Page<>(gbzListDto.getPageNum(), gbzListDto.getPageSize());
        IPage<GbzOrderEntity> result = gbzOrderDao.selectInPage(page);
        IPage<GbzOrderEntity> result = gbzOrderDao.selectInPage(gbzOrderEntity, page);
        return Result.ok(result.getRecords());
    }
@@ -100,6 +113,10 @@
        String status = redisUtils.getString("bzz_order_status");
        priceVo.setStatus(StrUtil.isNotBlank(status) ? Integer.parseInt(status) : 2);
        String remain = redisUtils.getString("bzz_coin_total");
        priceVo.setRemainCnt(88888);
        BigDecimal totalAmount = gbzOrderDao.selectOrderTotalAmount(LoginUserUtils.getAppLoginUser().getId());
        priceVo.setTotalAmount(totalAmount);
@@ -124,6 +141,8 @@
        MemberWalletCoinEntity wallet = memberWalletCoinDao.selectWalletCoinBymIdAndCode(member.getId(), CoinTypeEnum
                .BZZ.name());
        memberWalletCoinDao.updateBlockBalance(wallet.getId(), totalAmount, BigDecimal.ZERO, 0);
        gbzOrderDao.updateStatus(member.getId());
        LogRecordUtils.insertMemberAccountMoneyChange(member.getId(), "提取BZZ到资产", totalAmount, "BZZ", 1, 1);
        return Result.ok("提取成功");
    }