Fix dashboard daily loss risk cell text overlap
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -337,6 +337,26 @@
|
|||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.dashboard-risk-item--daily-loss {
|
||||||
|
flex: 1.4 1 8.75rem;
|
||||||
|
min-width: 8.75rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dashboard-risk-item--daily-loss .dashboard-risk-value {
|
||||||
|
white-space: normal;
|
||||||
|
line-height: 1.35;
|
||||||
|
font-size: 0.86rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dashboard-risk-sub {
|
||||||
|
margin-top: 0.14rem;
|
||||||
|
font-size: 0.68rem;
|
||||||
|
font-weight: 500;
|
||||||
|
line-height: 1.3;
|
||||||
|
color: var(--text-muted);
|
||||||
|
white-space: normal;
|
||||||
|
}
|
||||||
|
|
||||||
.dashboard-risk-value.risk-switch-on {
|
.dashboard-risk-value.risk-switch-on {
|
||||||
color: var(--profit);
|
color: var(--profit);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -367,8 +367,9 @@
|
|||||||
riskGridEl.innerHTML = items.map(function (it) {
|
riskGridEl.innerHTML = items.map(function (it) {
|
||||||
var val = it.valueHtml != null ? it.valueHtml : escHtml(it.value);
|
var val = it.valueHtml != null ? it.valueHtml : escHtml(it.value);
|
||||||
var cls = 'dashboard-risk-value' + (it.valueClass ? ' ' + it.valueClass : '');
|
var cls = 'dashboard-risk-value' + (it.valueClass ? ' ' + it.valueClass : '');
|
||||||
|
var itemCls = 'dashboard-risk-item' + (it.itemClass ? ' ' + it.itemClass : '');
|
||||||
return (
|
return (
|
||||||
'<div class="dashboard-risk-item">' +
|
'<div class="' + itemCls + '">' +
|
||||||
'<div class="dashboard-risk-label">' + escHtml(it.label) + '</div>' +
|
'<div class="dashboard-risk-label">' + escHtml(it.label) + '</div>' +
|
||||||
'<div class="' + cls + '">' + val + '</div>' +
|
'<div class="' + cls + '">' + val + '</div>' +
|
||||||
'</div>'
|
'</div>'
|
||||||
@@ -376,6 +377,30 @@
|
|||||||
}).join('');
|
}).join('');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function buildDailyRiskItem(used, lim, slipBuf, cap) {
|
||||||
|
var main = used != null ? fmtNum(used) + '%' : '—';
|
||||||
|
if (lim != null) {
|
||||||
|
main += ' / ' + fmtNum(lim) + '%';
|
||||||
|
}
|
||||||
|
var item = {
|
||||||
|
label: '日亏损风控',
|
||||||
|
itemClass: 'dashboard-risk-item--daily-loss',
|
||||||
|
};
|
||||||
|
var sub = '';
|
||||||
|
if (slipBuf != null && cap != null) {
|
||||||
|
sub = '滑点 ' + fmtNum(slipBuf) + '% · 合计≤' + fmtNum(cap) + '%';
|
||||||
|
} else if (slipBuf != null) {
|
||||||
|
sub = '滑点 ' + fmtNum(slipBuf) + '%';
|
||||||
|
}
|
||||||
|
if (sub) {
|
||||||
|
item.valueHtml = escHtml(main) +
|
||||||
|
'<div class="dashboard-risk-sub">' + escHtml(sub) + '</div>';
|
||||||
|
} else {
|
||||||
|
item.value = main;
|
||||||
|
}
|
||||||
|
return item;
|
||||||
|
}
|
||||||
|
|
||||||
function fmtHours(h) {
|
function fmtHours(h) {
|
||||||
if (h == null) return '—';
|
if (h == null) return '—';
|
||||||
var n = Number(h);
|
var n = Number(h);
|
||||||
@@ -459,19 +484,9 @@
|
|||||||
var dailyRiskCap = lim.daily_loss_total_cap_pct != null
|
var dailyRiskCap = lim.daily_loss_total_cap_pct != null
|
||||||
? lim.daily_loss_total_cap_pct
|
? lim.daily_loss_total_cap_pct
|
||||||
: st.daily_loss_total_cap_pct;
|
: st.daily_loss_total_cap_pct;
|
||||||
var dailyRiskText = dailyRiskUsed != null ? fmtNum(dailyRiskUsed) + '%' : '—';
|
var dailyRiskItem = buildDailyRiskItem(
|
||||||
if (dailyRiskLim != null && dailyRiskUsed != null) {
|
dailyRiskUsed, dailyRiskLim, slipBuf, dailyRiskCap,
|
||||||
dailyRiskText += ' / ' + fmtNum(dailyRiskLim) + '%';
|
);
|
||||||
if (slipBuf != null) {
|
|
||||||
dailyRiskText += '(+滑点' + fmtNum(slipBuf) + '%';
|
|
||||||
if (dailyRiskCap != null) {
|
|
||||||
dailyRiskText += ',合计≤' + fmtNum(dailyRiskCap) + '%';
|
|
||||||
}
|
|
||||||
dailyRiskText += ')';
|
|
||||||
}
|
|
||||||
} else if (dailyRiskLim != null) {
|
|
||||||
dailyRiskText += ' / ' + fmtNum(dailyRiskLim) + '%';
|
|
||||||
}
|
|
||||||
var marginPct = risk.margin_pct_used;
|
var marginPct = risk.margin_pct_used;
|
||||||
var maxMarginPct = lim.max_margin_pct;
|
var maxMarginPct = lim.max_margin_pct;
|
||||||
var rollMaxPct = lim.roll_max_margin_pct;
|
var rollMaxPct = lim.roll_max_margin_pct;
|
||||||
@@ -502,7 +517,7 @@
|
|||||||
},
|
},
|
||||||
{ label: '持仓限制', value: active + ' / ' + (maxPos != null ? maxPos : '—') },
|
{ label: '持仓限制', value: active + ' / ' + (maxPos != null ? maxPos : '—') },
|
||||||
{ label: '日持仓限制', value: dailyOpens + ' / ' + (dailyPosLim != null ? dailyPosLim : '—') },
|
{ label: '日持仓限制', value: dailyOpens + ' / ' + (dailyPosLim != null ? dailyPosLim : '—') },
|
||||||
{ label: '日亏损风控', value: dailyRiskText },
|
dailyRiskItem,
|
||||||
{ label: '手动平仓次数', value: manualCnt + ' / ' + (manualLim != null ? manualLim : '—') },
|
{ label: '手动平仓次数', value: manualCnt + ' / ' + (manualLim != null ? manualLim : '—') },
|
||||||
{
|
{
|
||||||
label: '综合保证金占比',
|
label: '综合保证金占比',
|
||||||
|
|||||||
Reference in New Issue
Block a user