新版仿ok交易所-后端
1
zj
2025-09-30 d4be4cc69f18b01cc39bd3f9dc9497a828848ca8
trading-order-service/src/main/java/com/yami/trading/service/exchange/impl/ExchangeApplyOrderServiceImpl.java
@@ -111,11 +111,11 @@
        double amount = Arith.mul(sub, realtime.getClose().doubleValue());
        order.setCloseTime(new Date());
        order.setClosePrice(realtime.getClose().doubleValue());
//        Wallet wallet = this.walletService.saveWalletByPartyId(order.getPartyId());
        CapitaltWallet capitaltWallet = capitaltWalletService.getUserIdWallet(order.getPartyId());
        double amount_before = capitaltWallet.getMoney().doubleValue();
//        this.walletService.update(userIdWallet.getUserId().toString(), amount);
        this.capitaltWalletService.update(capitaltWallet, amount);
        Wallet wallet = this.walletService.saveWalletByPartyId(order.getPartyId());
//        CapitaltWallet capitaltWallet = capitaltWalletService.getUserIdWallet(order.getPartyId());
        double amount_before = wallet.getMoney().doubleValue();
        this.walletService.update(wallet.getUserId().toString(), amount);
//        this.capitaltWalletService.update(capitaltWallet, amount);
        /*
         * 保存资金日志
@@ -124,7 +124,7 @@
        moneylog_deposit.setCategory(Constants.MONEYLOG_CATEGORY_EXCHANGE);
        moneylog_deposit.setAmountBefore(new BigDecimal(amount_before));
        moneylog_deposit.setAmount(new BigDecimal(amount));
        moneylog_deposit.setAmountAfter(capitaltWallet.getMoney());
        moneylog_deposit.setAmountAfter(wallet.getMoney());
        moneylog_deposit.setLog("委托单,订单号[" + order.getOrderNo() + "]");
        moneylog_deposit.setUserId(order.getPartyId());
        moneylog_deposit.setWalletType(Constants.WALLET);
@@ -183,6 +183,7 @@
        List<ExchangeApplyOrder> list = list(lambdaQueryWrapper);
        return getDataList(list);
    }
    private static List<ExchangeApplyOrder> getData() {
@@ -614,8 +615,8 @@
        // 可以买的数量
        double amount = Arith.div(sub, order.getClosePrice(), 8);
        order.setSymbolValue(amount);
//        Wallet wallet = this.walletService.saveWalletByPartyId(order.getPartyId());
        CapitaltWallet userIdWallet = capitaltWalletService.getUserIdWallet(order.getPartyId());
        Wallet userIdWallet = this.walletService.saveWalletByPartyId(order.getPartyId());
//        CapitaltWallet userIdWallet = capitaltWalletService.getUserIdWallet(order.getPartyId());
        double amount_before = userIdWallet.getMoney().doubleValue();
        // 如果是计划委托,则先不扣钱
        if (order.isTriggerOrder()) {
@@ -637,11 +638,13 @@
            save(order);
        }
        if (!order.isTriggerOrder()) {
            System.out.println("-----userIdWallet---------:"+userIdWallet.getMoney().doubleValue());
            System.out.println("-----order---------:"+order.getVolume().doubleValue());
            if (userIdWallet.getMoney().doubleValue() < order.getVolume().doubleValue()) {
                throw new YamiShopBindException("余额不足");
            }
//            this.walletService.update(userIdWallet.getUserId().toString(), Arith.sub(0, order.getVolume()));
            capitaltWalletService.update(userIdWallet, Arith.sub(0, order.getVolume()));
            this.walletService.update(userIdWallet.getUserId().toString(), Arith.sub(0, order.getVolume()));
//            capitaltWalletService.update(userIdWallet, Arith.sub(0, order.getVolume()));
            /*
             * 保存资金日志
             */