Helius
2020-09-01 add952b321258d52b1d5dc90b11b5daecd687690
src/main/java/com/xcong/excoin/utils/CalculateUtil.java
@@ -118,13 +118,11 @@
                    subCnt = maxCnt - holdOrderEntity.getSymbolCntSale();
                }
                log.info("--{}, {}, {}, {}", maxCnt, subCnt, openPrice, type);
                feeAmount = feeAmount.add(holdOrderEntity.getOpeningFeeAmount());
                sku = holdOrderEntity.getSymbolSku();
            }
            BigDecimal forceSetPrice = BigDecimal.ZERO;
            if (subCnt != 0) {
                log.info("--->{}, {}, {}, {}, {}", openPrice, subCnt, sku, type, maxCnt);
                forceSetPrice = getForceSetPrice(walletContract.getTotalBalance().subtract(feeAmount), openPrice, subCnt, sku, type, memberEntity);
            }
@@ -138,7 +136,8 @@
            if (forceSetPrice.compareTo(BigDecimal.ZERO) > 0) {
                sendOrderBombMsg(id, type, forceSetPrice, symbol, operateNo);
                log.info("id:{}, type:{}, forceSetPrice:{}, symbol:{}, operateNo:{}", id, type, forceSetPrice, symbol, operateNo);
                sendOrderBombMsg(id, type, forceSetPrice, symbol, operateNo, memberEntity.getId());
            }
        }
    }
@@ -222,14 +221,14 @@
     */
    private static void sendOrderBombMsg(Long id, int type, BigDecimal forceClosingPrice, String symbol, int operateNo) {
    private static void sendOrderBombMsg(Long id, int type, BigDecimal forceClosingPrice, String symbol, int operateNo, Long memberId) {
        OrderModel model = null;
        // 开多
        if (ContractHoldOrderEntity.OPENING_TYPE_MORE == type) {
            model = new OrderModel(id, RabbitPriceTypeEnum.CLOSE_MORE_BOMB.getValue(), forceClosingPrice.setScale(8, RoundingMode.HALF_UP).toPlainString(), symbol, operateNo);
            model = new OrderModel(id, RabbitPriceTypeEnum.CLOSE_MORE_BOMB.getValue(), forceClosingPrice.setScale(8, RoundingMode.HALF_UP).toPlainString(), symbol, operateNo, memberId);
            // 开空
        } else {
            model = new OrderModel(id, RabbitPriceTypeEnum.CLOSE_LESS_BOMB.getValue(), forceClosingPrice.setScale(8, RoundingMode.HALF_UP).toPlainString(), symbol, operateNo);
            model = new OrderModel(id, RabbitPriceTypeEnum.CLOSE_LESS_BOMB.getValue(), forceClosingPrice.setScale(8, RoundingMode.HALF_UP).toPlainString(), symbol, operateNo, memberId);
        }
        SpringContextHolder.getBean(OrderProducer.class).sendPriceOperate(JSONObject.toJSONString(model));
    }