v52: разделы полные, фильтр по филиалам, фикс подпунктов
This commit is contained in:
parent
bd43fb99b5
commit
1fb14c1b92
@ -144,16 +144,16 @@ function re(){
|
||||
if(bf)list=list.filter(function(e){return e.b===parseInt(bf)});
|
||||
if(sc2){list.sort(function(a,b){var va=a[sc2],vb=b[sc2];if(typeof va==="string")va=va.toLowerCase(),vb=vb.toLowerCase();return va>vb?sd2:va<vb?-sd2:0})}
|
||||
|
||||
var h='<div class="card"><div class="fr"><input id="sr2" placeholder="Поиск..." oninput="re()"><select id="sf2" onchange="re()"><option value="">Все статусы</option><option value="wait">Не начато</option><option value="warn">В процессе</option><option value="done">Исполнено</option><option value="late">Просрочено</option></select><span style="font-size:12px;color:var(--g5);margin-left:auto">Найдено: '+list.length+'</span></div>';
|
||||
var h='<div class="card"><div class="fr"><input id="sr2" placeholder="Поиск..." oninput="re()"><select id="sf2" onchange="re()"><option value="">Все статусы</option><option value="wait">Не начато</option><option value="warn">В процессе</option><option value="done">Исполнено</option><option value="late">Просрочено</option></select><select id="bf2" onchange="re()"><option value="">Все филиалы</option>'+br.map(function(b,i){return'<option value="'+i+'">'+b+'</option>'}).join("")+'</select><span style="font-size:12px;color:var(--g5);margin-left:auto">Найдено: '+list.length+'</span></div>';
|
||||
h+='<table><tr>';
|
||||
[{k:null,l:"№"},{k:null,l:"Мероприятие"},{k:null,l:"Ответственные исполнители"},{k:"sec",l:"Раздел"},{k:"due",l:"Срок"},{k:"s",l:"Статус"},{k:null,l:""}].forEach(function(c){h+='<th onclick="if(c.k){sc2=\''+c.k+'\';sd2=sc2===c.k?-sd2:1;re()}">'+c.l+(sc2===c.k?(sd2===1?' ▲':' ▼'):'')+'</th>'});;
|
||||
h+='</tr>';
|
||||
list.forEach(function(e){
|
||||
var hs=e.sub&&e.sub.length,s=gsc(e.id),sdd=hs?s.length:0,stt=hs?e.sub.length:0,cl=dls(e);
|
||||
h+='<tr class="'+cl+'"><td>'+e.id+'</td><td style="font-size:12px;max-width:340px">';
|
||||
if(hs)h+='<span onclick="toggleEx('+e.id+')" style="cursor:pointer;margin-right:4px">'+(ex[e.id]?'▼':'▶')+'</span>';
|
||||
if(hs)h+='<span onclick="event.stopPropagation();toggleEx('+e.id+')" style="cursor:pointer;margin-right:4px">'+(ex[e.id]?'▼':'▶')+'</span>';
|
||||
h+=esc(e.t);if(hs)h+=' <span style="font-size:10px;color:var(--g5)">('+sdd+'/'+stt+')</span>';
|
||||
h+='</td><td style="font-size:11px">'+nl(e.r)+'</td><td><span class="badge b">'+["I","II","III","IV","V"][e.sec]+'</span></td><td>'+e.due+'</td><td>'+sb(e.s)+'</td><td><button class="btn btn-sm" onclick="oe('+e.id+')">📝</button></td></tr>';
|
||||
h+='</td><td style="font-size:11px">'+nl(e.r)+'</td><td style="font-size:11px">'+sec[e.sec]+'</td><td>'+e.due+'</td><td>'+sb(e.s)+'</td><td><button class="btn btn-sm" onclick="oe('+e.id+')">📝</button></td></tr>';
|
||||
if(hs&&ex[e.id])e.sub.forEach(function(s,i){var ch=s.indexOf(i)>=0;h+='<tr style="background:var(--g1)"><td></td><td style="font-size:11px;padding-left:40px"><input type="checkbox" '+(ch?"checked":"")+' onchange="ts('+e.id+','+i+',this.checked)"> '+s.l+') '+esc(s.t)+'</td><td></td><td></td><td></td><td></td><td></td></tr>'});
|
||||
});
|
||||
h+='</table></div>';
|
||||
|
||||
Loading…
Reference in New Issue
Block a user