feat条件单页本页划入交易户,避免跳转丢失新建表单。
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -597,6 +597,43 @@ def api_open_url(iid: int):
|
||||
return jsonify({"ok": True, "url": url, "base_url": inst["base_url"], "tab": tab})
|
||||
|
||||
|
||||
@app.route("/api/instances/<int:iid>/transfer", methods=["POST"])
|
||||
@login_required
|
||||
def api_instance_transfer(iid: int):
|
||||
"""条件单页本页划转:中控发指令,实例执行资金户↔交易户."""
|
||||
from lib.bridge_client_lib import post_instance_transfer
|
||||
|
||||
inst = get_instance(iid)
|
||||
if not inst:
|
||||
return jsonify({"ok": False, "msg": "不存在"}), 404
|
||||
data = request.get_json(silent=True) or {}
|
||||
try:
|
||||
amount = float(data.get("amount"))
|
||||
except (TypeError, ValueError):
|
||||
return jsonify({"ok": False, "msg": "数量无效"}), 400
|
||||
if amount <= 0:
|
||||
return jsonify({"ok": False, "msg": "数量须大于 0"}), 400
|
||||
from_acct = (data.get("from") or "funding").strip() or "funding"
|
||||
to_acct = (data.get("to") or "trading").strip() or "trading"
|
||||
ccy = (data.get("ccy") or "USDT").strip().upper() or "USDT"
|
||||
out = post_instance_transfer(
|
||||
inst,
|
||||
amount=amount,
|
||||
from_acct=from_acct,
|
||||
to_acct=to_acct,
|
||||
ccy=ccy,
|
||||
)
|
||||
# 成功后轻量刷新总览/条件单缓存,供下次读到新余额;不整页重载
|
||||
if out.get("ok"):
|
||||
try:
|
||||
overview_store.request_refresh()
|
||||
cond_orders_store.request_refresh()
|
||||
except Exception:
|
||||
pass
|
||||
code = 200 if out.get("ok") else 400
|
||||
return jsonify(out), code
|
||||
|
||||
|
||||
@app.route("/api/settings/update/hub/version", methods=["GET"])
|
||||
@login_required
|
||||
def api_hub_self_version():
|
||||
|
||||
Reference in New Issue
Block a user