标签改双组独立设计: 时间组×级别组自由组合(今日+推荐/有效等), 互不顶掉

This commit is contained in:
mzl92
2026-08-27 15:49:55 +08:00
parent 194ce81f27
commit 5843898e59
2 changed files with 34 additions and 20 deletions
+21 -14
View File
@@ -111,13 +111,19 @@ tr.today:hover td{background:#fde68a!important}
<section class="pane">
<div class="panel">
<h3>候选人</h3>
<div class="tabs" id="quickTabs">
<button class="tab on" data-q="" onclick="quickTab('')">全部</button>
<button class="tab" data-q="today" onclick="quickTab('today')">☀️ 今日</button>
<button class="tab" data-q="valid" onclick="quickTab('valid')">✅ 有效人员</button>
<button class="tab" data-q="rec" onclick="quickTab('rec')">推荐</button>
<button class="tab" data-q="maybe" onclick="quickTab('maybe')">待定</button>
<button class="tab" data-q="greeted" onclick="quickTab('greeted')">已打招呼</button>
<div class="tabs" id="timeTabs">
<span style="color:var(--sub);font-size:12px;align-self:center">时间:</span>
<button class="tab on" data-q="" onclick="timeTab('')">全部时间</button>
<button class="tab" data-q="today" onclick="timeTab('today')">☀️ 今日</button>
<span style="color:var(--sub);font-size:12px;align-self:center;margin-left:10px">或选日期区间 ↓</span>
</div>
<div class="tabs" id="levelTabs">
<span style="color:var(--sub);font-size:12px;align-self:center">级别:</span>
<button class="tab on" data-q="" onclick="levelTab('')">全部</button>
<button class="tab" data-q="valid" onclick="levelTab('valid')">✅ 有效人员</button>
<button class="tab" data-q="rec" onclick="levelTab('rec')">推荐</button>
<button class="tab" data-q="maybe" onclick="levelTab('maybe')">待定</button>
<button class="tab" data-q="greeted" onclick="levelTab('greeted')">已打招呼</button>
</div>
<div class="filters">
<select id="q_level"><option value="">全部级别</option><option value="有效">有效(推荐+待定)</option><option>推荐</option><option>待定</option><option>不推荐</option><option>不相关</option></select>
@@ -275,16 +281,17 @@ function renderCharts(s){
}
window.addEventListener('resize',()=>charts.forEach(c=>c.resize()));
let qToday=0;
function quickTab(which){
qToday=which==='today'?1:0;
$('q_level').value=which==='valid'?'有效':(which==='rec'?'推荐':(which==='maybe'?'待定':''));
$('q_greeted').value=which==='greeted'?'1':'';
if(which!==''){$('q_from').value='';$('q_to').value=''}
function timeTab(t){qToday=t==='today'?1:0;if(qToday){$('q_from').value='';$('q_to').value=''}loadList(1)}
function levelTab(l){
$('q_level').value=l==='valid'?'有效':(l==='rec'?'推荐':(l==='maybe'?'待定':''));
$('q_greeted').value=l==='greeted'?'1':'';
loadList(1);
}
function syncTabs(){
const which=qToday?'today':($('q_level').value==='有效'?'valid':$('q_level').value==='推荐'?'rec':$('q_level').value==='待定'?'maybe':($('q_greeted').value==='1'?'greeted':''));
document.querySelectorAll('#quickTabs .tab').forEach(b=>b.classList.toggle('on',b.dataset.q===which));
document.querySelectorAll('#timeTabs .tab').forEach(b=>b.classList.toggle('on',(b.dataset.q==='today')===!!qToday));
const lv=$('q_level').value,gr=$('q_greeted').value;
const which=gr==='1'?'greeted':(lv==='有效'?'valid':(lv==='推荐'?'rec':(lv==='待定'?'maybe':'')));
document.querySelectorAll('#levelTabs .tab').forEach(b=>b.classList.toggle('on',b.dataset.q===which));
}
function qs(){return `?level=${$('q_level').value}&greeted=${$('q_greeted').value}&account=${$('q_account').value}&today=${qToday}&date_from=${$('q_from').value}&date_to=${$('q_to').value}&q=${encodeURIComponent($('q_kw').value.trim())}`}
async function loadList(p){