From 478e76aaf92cec55208c7ef9a9e44abd6b8ec41c Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Tue, 15 Jun 2021 17:55:51 +0800
Subject: [PATCH] modify
---
src/main/java/com/xcong/excoin/modules/coin/controller/GbzOrderController.java | 15 +++++++++++++--
1 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/coin/controller/GbzOrderController.java b/src/main/java/com/xcong/excoin/modules/coin/controller/GbzOrderController.java
index 13677f2..1736cff 100644
--- a/src/main/java/com/xcong/excoin/modules/coin/controller/GbzOrderController.java
+++ b/src/main/java/com/xcong/excoin/modules/coin/controller/GbzOrderController.java
@@ -52,14 +52,19 @@
if ("1".equals(status)) {
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 +78,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("购买成功");
}
@@ -101,6 +106,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(Integer.parseInt(remain));
+
BigDecimal totalAmount = gbzOrderDao.selectOrderTotalAmount(LoginUserUtils.getAppLoginUser().getId());
priceVo.setTotalAmount(totalAmount);
return Result.ok(priceVo);
@@ -124,6 +133,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("提取成功");
}
--
Gitblit v1.9.1