新版仿ok交易所-后端
zyy3
2025-09-27 b2e913d9ad3e2f33a350c68613fc0287fe327996
trading-order-service/src/main/java/com/yami/trading/service/impl/CapitaltWalletServiceImpl.java
@@ -4,9 +4,11 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yami.trading.bean.contract.domain.ContractOrder;
import com.yami.trading.bean.item.domain.Item;
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.bean.model.WalletExtend;
import com.yami.trading.common.constants.Constants;
import com.yami.trading.common.domain.Result;
import com.yami.trading.common.exception.YamiShopBindException;
@@ -16,6 +18,7 @@
import com.yami.trading.service.MoneyLogService;
import com.yami.trading.service.WalletService;
import com.yami.trading.service.contract.ContractOrderService;
import com.yami.trading.service.item.ItemService;
import lombok.extern.slf4j.Slf4j;
import org.checkerframework.checker.units.qual.A;
import org.springframework.beans.factory.annotation.Autowired;
@@ -43,6 +46,9 @@
    @Autowired
    MoneyLogService moneyLogService;
    @Autowired
    ItemService itemService;
    @Override
    public CapitaltWallet getUserIdWallet(String userId) {
@@ -138,14 +144,40 @@
            moneyLog.setAmountBefore(new BigDecimal(amount_before));
            moneyLog.setAmount(new BigDecimal(amount1));
            moneyLog.setAmountAfter(BigDecimal.valueOf(Arith.add(amount_before, amount1)));
            moneyLog.setLog("后台手动充值");
            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");
            Item item = itemService.findBySymbol(coinType);
            if (item == null) {
                throw new YamiShopBindException("暂不支持的币种");
            }
            WalletExtend walletExtend = new WalletExtend();
            walletExtend = walletService.saveExtendByPara(userId, coinType);
            double volume = moneyRevise.doubleValue();
            double amount_before = walletExtend.getAmount();
            // walletExtend = walletService.saveWalletExtendByParaAndUpdate(String.valueOf(recharge.getPartyId()), recharge.getSymbol(), volume);
            walletService.updateExtend(walletExtend.getPartyId().toString(), walletExtend.getWallettype(), volume);
            // 保存资金日志
            MoneyLog moneyLog = new MoneyLog();
            moneyLog.setCategory(Constants.MONEYLOG_CATEGORY_COIN);
            moneyLog.setAmountBefore(new BigDecimal(amount_before));
            moneyLog.setAmount(new BigDecimal(volume));
            moneyLog.setAmountAfter(new BigDecimal(Arith.add(amount_before, volume)));
            moneyLog.setLog("后台手动充值/扣款");
            moneyLog.setUserId(userId);
            moneyLog.setWalletType(coinType);
            moneyLog.setContentType(Constants.MONEYLOG_CONTENT_RECHARGE);
            moneyLog.setCreateTime(new Date());
            moneyLogService.save(moneyLog);
        }
        return Result.succeed();
    }