fix: 前端温区表已激活改为按温区判定(current_regimes.includes(rg))——消除choppy表误显v_lurk_v3, v_lurk_v2在choppy正确显示已激活

This commit is contained in:
xxm
2026-08-18 01:48:42 +08:00
parent 21c7937056
commit 32df064430
+7 -4
View File
@@ -2690,8 +2690,9 @@ function renderStrategyTable(strategies) {
// 评分 = 不合格(≥2叉)/待观察(1叉)/合格/良好/优秀(3勾+综合分区间) // 评分 = 不合格(≥2叉)/待观察(1叉)/合格/良好/优秀(3勾+综合分区间)
const rGrade = gradeOf(qg, comp); const rGrade = gradeOf(qg, comp);
let rStateCls, rStateBadge, rRowBg; let rStateCls, rStateBadge, rRowBg;
const _rgActive = (s.current_regimes || []).includes(rg); // 该策略在当前表温区激活
if (!rManual) { rStateCls = 'text-slate-500'; rStateBadge = '<span class="text-[10px] bg-slate-500/20 text-slate-400 px-1 rounded">手动停用</span>'; rRowBg = 'opacity-50'; } if (!rManual) { rStateCls = 'text-slate-500'; rStateBadge = '<span class="text-[10px] bg-slate-500/20 text-slate-400 px-1 rounded">手动停用</span>'; rRowBg = 'opacity-50'; }
else if (s.current === true) { else if (_rgActive) {
rStateCls = 'text-emerald-400'; rStateCls = 'text-emerald-400';
rStateBadge = '<span class="text-[10px] bg-emerald-500/40 text-emerald-100 px-1 rounded font-bold">已激活</span>'; rStateBadge = '<span class="text-[10px] bg-emerald-500/40 text-emerald-100 px-1 rounded font-bold">已激活</span>';
rRowBg = 'bg-emerald-900/15'; rRowBg = 'bg-emerald-900/15';
@@ -2701,7 +2702,8 @@ function renderStrategyTable(strategies) {
rRowBg = ''; rRowBg = '';
} }
const rGradeBadge = rGrade && rGrade !== 'ok' && rGrade !== 'good' && rGrade !== 'great' ? '' : ''; const rGradeBadge = rGrade && rGrade !== 'ok' && rGrade !== 'good' && rGrade !== 'great' ? '' : '';
const isActive = s.current === true; // 2026-08-18 按温区判定激活(而非全局 s.current)——该策略在当前表温区 rg 是否激活
const isActive = (s.current_regimes || []).includes(rg);
const _bkAttr = bkKey ? ' data-bk="' + bkKey + '" class="hidden"' : ''; const _bkAttr = bkKey ? ' data-bk="' + bkKey + '" class="hidden"' : '';
return '<tr' + (_bkAttr || '') + ' class="border-b border-slate-800/50 hover:bg-slate-800/30 cursor-pointer ' + rRowBg + '" onclick="showStrategyDetail(\'' + s.version + '\')">' + return '<tr' + (_bkAttr || '') + ' class="border-b border-slate-800/50 hover:bg-slate-800/30 cursor-pointer ' + rRowBg + '" onclick="showStrategyDetail(\'' + s.version + '\')">' +
'<td class="px-2 py-1.5 font-mono font-bold ' + rStateCls + '">' + s.version + ' ' + rStateBadge + ((s.market && s.market !== 'all') ? ' <span class="text-[10px] bg-cyan-500/20 text-cyan-300 px-1 rounded">' + (s.market === 'hk' ? '港' : 'A') + '</span>' : '') + '</td>' + '<td class="px-2 py-1.5 font-mono font-bold ' + rStateCls + '">' + s.version + ' ' + rStateBadge + ((s.market && s.market !== 'all') ? ' <span class="text-[10px] bg-cyan-500/20 text-cyan-300 px-1 rounded">' + (s.market === 'hk' ? '港' : 'A') + '</span>' : '') + '</td>' +
@@ -2807,8 +2809,9 @@ function renderStrategyTable(strategies) {
'<th class="text-center px-2 py-1.5">操作</th></tr></thead>' + '<th class="text-center px-2 py-1.5">操作</th></tr></thead>' +
// ── 2026-08-17 分区(老莫):上区=已激活,下区=备选(资格达标未激活),默认折叠 ── // ── 2026-08-17 分区(老莫):上区=已激活,下区=备选(资格达标未激活),默认折叠 ──
(() => { (() => {
const active = metas.filter(s => s.current === true); const _isAct = (s) => (s.current_regimes || []).includes(rg);
const backup = metas.filter(s => s.current !== true); const active = metas.filter(_isAct);
const backup = metas.filter(s => !_isAct(s));
let html = '<tbody class="align-top">'; let html = '<tbody class="align-top">';
if (active.length) { if (active.length) {
html += '<tr class="bg-emerald-900/20"><td colspan="15" class="px-2 py-1 text-[10px] text-emerald-300 font-bold">✅ 已激活 (' + active.length + ')</td></tr>'; html += '<tr class="bg-emerald-900/20"><td colspan="15" class="px-2 py-1 text-[10px] text-emerald-300 font-bold">✅ 已激活 (' + active.length + ')</td></tr>';