fix: 注册 order_entry_model.js 静态路由,embed 内联联动逻辑
中控 iframe 下 JS 404 导致小分歧/杠杆不更新;boot 脚本内联兜底。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -3,6 +3,52 @@ const JOURNAL_ENTRY_REASON_OPTIONS = {{ entry_reason_options | tojson }};
|
||||
const ORDER_ENTRY_MODEL_TRADE_STYLE = {{ entry_model_trade_style_map | tojson }};
|
||||
const JOURNAL_ENTRY_REASON_OTHER = {{ entry_reason_other_value | tojson }};
|
||||
|
||||
function tradeStyleForEntryModelSelect(sel){
|
||||
if(!sel || !sel.value) return "trend";
|
||||
var opt = sel.options[sel.selectedIndex];
|
||||
if(opt){
|
||||
var ds = opt.getAttribute("data-trade-style");
|
||||
if(ds === "swing" || ds === "trend") return ds;
|
||||
}
|
||||
return (ORDER_ENTRY_MODEL_TRADE_STYLE && ORDER_ENTRY_MODEL_TRADE_STYLE[sel.value]) || "trend";
|
||||
}
|
||||
function syncOrderEntryModelTradeStyle(){
|
||||
var sel = document.getElementById("order-entry-model");
|
||||
var hidden = document.getElementById("order-trade-style-hidden");
|
||||
var hint = document.getElementById("order-trade-style-hint");
|
||||
if(!sel || !hidden) return;
|
||||
var labels = { trend: "趋势单", swing: "波段单" };
|
||||
var ts = tradeStyleForEntryModelSelect(sel);
|
||||
hidden.value = ts;
|
||||
if(hint) hint.textContent = labels[ts] || ts;
|
||||
}
|
||||
function paintOrderLeverageHint(leverage){
|
||||
var hidden = document.getElementById("order-leverage");
|
||||
var hint = document.getElementById("order-leverage-hint");
|
||||
if(!hidden && !hint) return;
|
||||
var lev = parseInt(leverage, 10);
|
||||
if(!Number.isFinite(lev) || lev <= 0){
|
||||
if(hint) hint.textContent = "杠杆 —";
|
||||
if(hidden) hidden.value = "";
|
||||
return;
|
||||
}
|
||||
if(hidden) hidden.value = String(lev);
|
||||
if(hint) hint.textContent = "杠杆 " + lev + "x";
|
||||
}
|
||||
function initOrderEntryModelSelect(root){
|
||||
var scope = (root && root.querySelector) ? root : document;
|
||||
var sel = scope.querySelector ? scope.querySelector("#order-entry-model") : document.getElementById("order-entry-model");
|
||||
if(!sel) return;
|
||||
if(sel.dataset.entryModelWired !== "1"){
|
||||
sel.dataset.entryModelWired = "1";
|
||||
sel.addEventListener("change", syncOrderEntryModelTradeStyle);
|
||||
}
|
||||
syncOrderEntryModelTradeStyle();
|
||||
}
|
||||
window.syncOrderEntryModelTradeStyle = syncOrderEntryModelTradeStyle;
|
||||
window.paintOrderLeverageHint = paintOrderLeverageHint;
|
||||
window.initOrderEntryModelSelect = initOrderEntryModelSelect;
|
||||
|
||||
function reloadInstancePage(){
|
||||
if(document.body && document.body.getAttribute("data-embed-shell") === "1" && window.InstanceEmbed){
|
||||
window.InstanceEmbed.reloadCurrentTab();
|
||||
@@ -1026,12 +1072,7 @@ function refreshOrderDefaults(){
|
||||
.then(data=>{
|
||||
if(!data.ok){ return; }
|
||||
if(data.leverage){
|
||||
if(typeof paintOrderLeverageHint === "function"){
|
||||
paintOrderLeverageHint(data.leverage);
|
||||
} else {
|
||||
const levEl = document.getElementById("order-leverage");
|
||||
if(levEl) levEl.value = data.leverage;
|
||||
}
|
||||
paintOrderLeverageHint(data.leverage);
|
||||
}
|
||||
if(typeof data.available_trading_usdt !== "undefined" && data.available_trading_usdt !== null){
|
||||
latestAvailableUsdt = Number(data.available_trading_usdt);
|
||||
@@ -1242,6 +1283,7 @@ if(addOrderForm){
|
||||
}
|
||||
|
||||
refreshOrderDefaults();
|
||||
if(typeof initOrderEntryModelSelect === "function") initOrderEntryModelSelect();
|
||||
refreshPriceSnapshotConditional();
|
||||
setInterval(refreshAccountSnapshot, Number(document.body.dataset.balanceRefreshMs || 30000));
|
||||
function refreshPriceSnapshotConditional(){
|
||||
|
||||
Reference in New Issue
Block a user