添加get_order

This commit is contained in:
zhiyong 2025-05-12 13:39:10 +08:00
parent 3e0fbec6da
commit 0e171dc572
2 changed files with 32 additions and 1 deletions

View File

@ -253,6 +253,7 @@ class XtTrader(BaseTrader):
def get_order(self, order_id): def get_order(self, order_id):
if not self.is_available(): if not self.is_available():
logger.error(f"交易系统连接失败,无法获取订单: {order_id}")
return None return None
order = self.xt_trader.query_stock_order(self.account, int(order_id)) order = self.xt_trader.query_stock_order(self.account, int(order_id))
@ -271,7 +272,9 @@ class XtTrader(BaseTrader):
"order_status": order.order_status, "order_status": order.order_status,
"status_msg": order.status_msg "status_msg": order.status_msg
} }
return None else:
logger.error(f"无法获取订单: {order_id}")
return None
def _convert_price_type(self, price_type): def _convert_price_type(self, price_type):
"""Convert numeric price type to readable string""" """Convert numeric price type to readable string"""

View File

@ -507,6 +507,34 @@ def get_today_orders():
abort(500, description="Internal server error") abort(500, description="Internal server error")
@app.route("/yu/order/<order_id>", methods=["GET"])
def get_order(order_id):
"""Get order information by order_id."""
logger.info(f"Received order request for order {order_id}")
try:
# 检查交易系统是否可用
trader = get_trader()
if is_real_mode() and not trader.is_available():
return jsonify({
"success": False,
"error": trader.connection_error_message or "交易系统连接失败,请稍后再试"
}), 503
order = trader.get_order(order_id)
return jsonify(order), 200
except Exception as e:
logger.error(f"Error processing order request: {str(e)}")
abort(500, description="Internal server error")
def get_order(order_id):
"""Get order information by order_id."""
logger.info(f"Received order request for order {order_id}")
@app.route("/yu/clear/<strategy_name>", methods=["DELETE"]) @app.route("/yu/clear/<strategy_name>", methods=["DELETE"])
def clear_strategy(strategy_name): def clear_strategy(strategy_name):
"""清除指定策略的持仓管理数据""" """清除指定策略的持仓管理数据"""