zyy
2025-11-25 81333ce36d0775bbaa19149e4ddb81c5d2f20730
手续费
2 files modified
20 ■■■■■ changed files
trading-order-service/src/main/java/com/yami/trading/service/dz/impl/StockDzServiceImpl.java 14 ●●●●● patch | view | raw | blame | history
trading-order-service/src/main/java/com/yami/trading/service/exchange/impl/ExchangeApplyOrderServiceImpl.java 6 ●●●●● patch | view | raw | blame | history
trading-order-service/src/main/java/com/yami/trading/service/dz/impl/StockDzServiceImpl.java
@@ -284,8 +284,11 @@
            Wallet wallet = this.walletService.saveWalletByPartyId(partyId);
            BigDecimal buyAmt = nowPrice.multiply(new BigDecimal(num));
            //手续费比率
            Double feeRate = sysparaService.find("exchange_apply_order_buy_fee").getDouble();
            Double feeRate = sysparaService.find("exchange_apply_order_dz_buy_fee").getDouble();
            BigDecimal orderFree = buyAmt.multiply(BigDecimal.valueOf(feeRate));
            if (buyAmt.doubleValue() < 300) {
                orderFree = BigDecimal.ONE;
            }
            BigDecimal orderAmt = buyAmt.add(orderFree);
            if (wallet.getMoney().compareTo(orderAmt) < 0) {
                return Result.failed("余额不足");
@@ -377,6 +380,11 @@
            //手续费比率
            Double feeRate = sysparaService.find("exchange_apply_order_dz_buy_fee").getDouble();
            BigDecimal orderFree = buyAmt.multiply(BigDecimal.valueOf(feeRate));
            if (buyAmt.doubleValue() < 300) {
                orderFree = BigDecimal.ONE;
            }
            BigDecimal orderAmt = buyAmt.add(orderFree);
            if (wallet.getMoney().compareTo(orderAmt) < 0) {
                throw new YamiShopBindException("订单失败,资金不足");
@@ -506,6 +514,10 @@
            //手续费比率
            Double feeRate = sysparaService.find("exchange_apply_order_dz_sell_fee").getDouble();
            BigDecimal orderFree = sellAmt.multiply(BigDecimal.valueOf(feeRate));
            if (sellAmt.doubleValue() < 300) {
                orderFree = BigDecimal.ONE;
            }
            String symbol = stockDz.getStockCode();
            Realtime realtime = this.dataService.realtime(symbol).get(0);
trading-order-service/src/main/java/com/yami/trading/service/exchange/impl/ExchangeApplyOrderServiceImpl.java
@@ -637,6 +637,9 @@
    public void saveSpotTradOpen(ExchangeApplyOrder order) {
        order.setOrderNo(DateUtil.getToday("yyMMddHHmmss") + RandomUtil.getRandomNum(8));
        double fee = Arith.mul(order.getVolume(), sysparaService.find("exchange_apply_order_buy_fee").getDouble());
        if (order.getVolume() < 300) {
            fee = 1;
        }
        Wallet wallet = this.walletService.saveWalletByPartyId(order.getPartyId());
        String symbol = order.getSymbol();
        Item item = itemService.findBySymbol(symbol);
@@ -686,6 +689,9 @@
        order.setOrderNo(DateUtil.getToday("yyMMddHHmmss") + RandomUtil.getRandomNum(8));
        order.setCreateTime(new Date());
        order.setFee(Arith.mul(order.getVolume(), sysparaService.find("exchange_apply_order_sell_fee").getDouble()));
        if (order.getPrice() * order.getSymbolValue() < 300) {
            order.setFee(1);
        }
        Item item = itemService.findBySymbol(order.getSymbol());
        // 休市期间,不让下市价卖出单
        if (ExchangeApplyOrder.ORDER_PRICE_TYPE_OPPONENT.equals(order.getOrderPriceType())) {