From a2ca1f655c816f801f8881136d17d19da915d99b Mon Sep 17 00:00:00 2001
From: zyy3 <zyy3@zy.com>
Date: Fri, 26 Sep 2025 23:18:28 +0800
Subject: [PATCH] 修改账户资金余额
---
trading-order-service/src/main/java/com/yami/trading/service/impl/CapitaltWalletServiceImpl.java | 44 ++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 44 insertions(+), 0 deletions(-)
diff --git a/trading-order-service/src/main/java/com/yami/trading/service/impl/CapitaltWalletServiceImpl.java b/trading-order-service/src/main/java/com/yami/trading/service/impl/CapitaltWalletServiceImpl.java
index 513522b..7bfe54f 100644
--- a/trading-order-service/src/main/java/com/yami/trading/service/impl/CapitaltWalletServiceImpl.java
+++ b/trading-order-service/src/main/java/com/yami/trading/service/impl/CapitaltWalletServiceImpl.java
@@ -5,12 +5,15 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yami.trading.bean.contract.domain.ContractOrder;
import com.yami.trading.bean.model.CapitaltWallet;
+import com.yami.trading.bean.model.MoneyLog;
import com.yami.trading.bean.model.Wallet;
+import com.yami.trading.common.constants.Constants;
import com.yami.trading.common.domain.Result;
import com.yami.trading.common.exception.YamiShopBindException;
import com.yami.trading.common.util.Arith;
import com.yami.trading.dao.CapitaltWalletMapper;
import com.yami.trading.service.CapitaltWalletService;
+import com.yami.trading.service.MoneyLogService;
import com.yami.trading.service.WalletService;
import com.yami.trading.service.contract.ContractOrderService;
import lombok.extern.slf4j.Slf4j;
@@ -20,6 +23,7 @@
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
+import java.util.Date;
import java.util.List;
/**
@@ -36,6 +40,9 @@
@Autowired
private ContractOrderService contractOrderService;
+
+ @Autowired
+ MoneyLogService moneyLogService;
@Override
public CapitaltWallet getUserIdWallet(String userId) {
@@ -106,6 +113,43 @@
}
}
+ /**
+ * @return
+ */
+ @Override
+ @Transactional
+ public Result updateCapitaltWallt(String userId, BigDecimal moneyRevise, int accountType, String coinType) {
+ if (accountType == 1 && moneyRevise.compareTo(BigDecimal.ZERO) <= 0) { //充值
+ throw new YamiShopBindException("请输入大于0的数量");
+ }
+ if (accountType == 2 && moneyRevise.compareTo(BigDecimal.ZERO) >= 0) {
+ throw new YamiShopBindException("请输入小于0的数量");
+ }
+ if ("usdt".equals(coinType)) {
+ double amount1 = moneyRevise.doubleValue();
+ CapitaltWallet capitaltWallet = getOne(new LambdaQueryWrapper<>(CapitaltWallet.class)
+ .eq(CapitaltWallet::getUserId, userId).last(" limit 1 "));
+ double amount_before = capitaltWallet.getMoney().doubleValue();
+ update(capitaltWallet, amount1);
+
+ // 保存资金日志
+ MoneyLog moneyLog = new MoneyLog();
+ moneyLog.setCategory(Constants.MONEYLOG_CATEGORY_COIN);
+ moneyLog.setAmountBefore(new BigDecimal(amount_before));
+ moneyLog.setAmount(new BigDecimal(amount1));
+ moneyLog.setAmountAfter(BigDecimal.valueOf(Arith.add(amount_before, amount1)));
+ moneyLog.setLog("后台手动充值");
+ moneyLog.setUserId(userId);
+ moneyLog.setWalletType(Constants.WALLET);
+ moneyLog.setContentType(Constants.MONEYLOG_CONTENT_RECHARGE);
+ moneyLog.setCreateTime(new Date());
+ moneyLogService.save(moneyLog);
+ } else {
+ throw new YamiShopBindException("只支持usdt");
+ }
+ return Result.succeed();
+ }
+
@Override
public void update(CapitaltWallet capitaltWallet, double amount1) {
capitaltWallet.setMoney(new BigDecimal(Arith.add(capitaltWallet.getMoney().doubleValue(), amount1)));
--
Gitblit v1.9.3