新版仿ok交易所-后端
zyy
2026-03-01 fa8a94210436f609def68e8d244609af75e09290
trading-order-service/src/main/java/com/yami/trading/service/contract/ContractOrderService.java
@@ -817,8 +817,8 @@
        map.put("amount", order.getVolume().multiply(order.getUnitAmount()));
        map.put("amount_open", order.getVolumeOpen().multiply(order.getUnitAmount()));
        map.put("fee", order.getFee());
        map.put("deposit", order.getDeposit());
        map.put("deposit_open", order.getDepositOpen());
        map.put("deposit", order.getDeposit().add(order.getAddDepositOpen()));
        map.put("deposit_open", order.getDepositOpen().add(order.getAddDepositOpen()));
        map.put("change_ratio", order.getChangeRatio().setScale(2, RoundingMode.HALF_UP));
        if(order.getProfit()!=null){
@@ -859,4 +859,18 @@
            RedisUtil.del(ContractRedisKeys.CONTRACT_ASSETS_PROFIT_PARTY_ID + partyId);
        }
    }
    public void addDepositOpen(ContractOrder order, BigDecimal addDepositOpen) {
        Wallet wallet = walletService.findByUserId(order.getPartyId());
        BigDecimal amountBefore = wallet.getMoney();
        if (amountBefore.compareTo(addDepositOpen) < 0) {
            throw new YamiShopBindException("not sufficient funds");
        }
        order.setAddDepositOpen(order.getAddDepositOpen().add(addDepositOpen));
        walletService.updateMoney(order.getSymbol(), order.getPartyId(), BigDecimal.ZERO.subtract(addDepositOpen), BigDecimal.ZERO
                , Constants.MONEYLOG_CATEGORY_CONTRACT, Constants.WALLET_USDT, Constants.MONEYLOG_CONTENT_CONTRACT_ADD, "委托单追加保证金,订单号[" + order.getOrderNo() + "]"
        );
        update(order);
    }
}