Administrator
2025-12-13 80cca7cdd2dd0f308742f8da0551ee1c156fa1e3
refactor(order): 重构下单逻辑判断顺序

- 调整系统开关和订单状态检查的位置
- 将账户余额检查后的逻辑重新排序
- 保持原有业务逻辑不变,优化代码结构
1 files modified
57 ■■■■ changed files
src/main/java/com/xcong/excoin/modules/okxNewPrice/celue/CaoZuoServiceImpl.java 57 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/okxNewPrice/celue/CaoZuoServiceImpl.java
@@ -49,34 +49,6 @@
            log.error("账户没有钱,请充值......");
            return null;
        }
        // 系统设置的开关,等于冷静中,则代表不开仓
        String outStr = InstrumentsWs.INSTRUMENTSWSMAP.get(CoinEnums.OUT.name());
        if (OrderParamEnums.OUT_YES.getValue().equals(outStr)){
            log.error("冷静中,不允许下单......");
            return null;
        }
        // 判断当前是否有正在进行的订单操作
        String state = InstrumentsWs.INSTRUMENTSWSMAP.get(CoinEnums.STATE.name());
        log.info(OrderParamEnums.getNameByValue(state));
        if (OrderParamEnums.STATE_4.getValue().equals(state)){
            log.warn("正在下单中,等待下单结束...");
            return null;
        }
        if (OrderParamEnums.STATE_3.getValue().equals(state)){
            log.error("冷静中,不允许下单......");
            return null;
        }
        if (OrderParamEnums.STATE_2.getValue().equals(state)){
            log.error("账户紧张扛仓......");
            return null;
        }
        if (OrderParamEnums.STATE_0.getValue().equals(state)){
            log.error("参数异常,不允许开仓......");
            return null;
        }
        /**
         * 判断止损抗压
         */
@@ -106,6 +78,35 @@
            }
        }
        // 系统设置的开关,等于冷静中,则代表不开仓
        String outStr = InstrumentsWs.INSTRUMENTSWSMAP.get(CoinEnums.OUT.name());
        if (OrderParamEnums.OUT_YES.getValue().equals(outStr)){
            log.error("冷静中,不允许下单......");
            return null;
        }
        // 判断当前是否有正在进行的订单操作
        String state = InstrumentsWs.INSTRUMENTSWSMAP.get(CoinEnums.STATE.name());
        log.info(OrderParamEnums.getNameByValue(state));
        if (OrderParamEnums.STATE_4.getValue().equals(state)){
            log.warn("正在下单中,等待下单结束...");
            return null;
        }
        if (OrderParamEnums.STATE_3.getValue().equals(state)){
            log.error("冷静中,不允许下单......");
            return null;
        }
        if (OrderParamEnums.STATE_2.getValue().equals(state)){
            log.error("账户紧张扛仓......");
            return null;
        }
        if (OrderParamEnums.STATE_0.getValue().equals(state)){
            log.error("参数异常,不允许开仓......");
            return null;
        }
        if (PositionsWs.POSITIONSWSMAP.get("pos") == null){
            log.error("没有获取到持仓信息,等待初始化......");
            return null;