fix: remove Количество field completely — from card and all report formats

This commit is contained in:
Dauren777 2026-06-11 11:16:16 +00:00
parent 19b7b9c255
commit e1c7c232da

View File

@ -1239,7 +1239,6 @@ function openEv(id,subIdx){
h+="<div style='margin-bottom:12px;padding:10px;background:#F0F9FF;border-radius:8px'><strong>AI-анализ:</strong> <span style='font-size:13px;color:#64748B'>"+esc(e.ai||"\u2014")+"</span></div>";
h+="<div style='margin-bottom:12px'><strong>Отчётность:</strong></div>";
h+="<div style='margin-bottom:8px;display:flex;gap:8px;flex-wrap:wrap;align-items:center'>";
h+="<span style='font-size:12px'>Количество:</span> <input type='number' id='evq_"+e.id+"' value='"+(localStorage.getItem("sq_"+e.id+(subIdx!==undefined?"_s"+subIdx:"")+"_m"+selMonth)||e.q||"")+"' min='0' style='width:80px;padding:4px;border:1px solid #E2E8F0;border-radius:4px;font-size:12px'>";
h+="<span style='font-size:12px;margin-left:8px'>Месяц:</span> <select id='evm_"+e.id+"' onchange='switchEvMonth("+e.id+","+(subIdx!==undefined?subIdx:"null")+")' style='padding:4px;border:1px solid #E2E8F0;border-radius:4px;font-size:12px'>";
var mnames=["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"];
for(var mi=0;mi<12;mi++){
@ -1310,10 +1309,8 @@ function closeModal(){
function switchEvMonth(id,subIdx){
var inm=document.getElementById("evm_"+id);if(!inm)return;
var mv=inm.value;
var inn=document.getElementById("evn_"+id);var inq=document.getElementById("evq_"+id);
var subSuffix=curSub!==null?"_s"+curSub:"";
var inn=document.getElementById("evn_"+id);
if(inn)try{localStorage.setItem("sn_"+id+subSuffix+"_m"+mv,inn.value.trim())}catch(e){}
if(inq)try{localStorage.setItem("sq_"+id+subSuffix+"_m"+mv,(parseInt(inq.value,10)||inq.value||0).toString())}catch(e){}
try{localStorage.setItem("evmonth_"+id,mv)}catch(e){}
openEv(id,subIdx!==null?subIdx:undefined)
}
@ -1321,7 +1318,7 @@ function saveEvModal(id){
var sel=document.getElementById("evs_"+id);
for(var i=0;i<evs.length;i++){if(evs[i].id===id){if(sel)evs[i].s=sel.value;if(sel&&sel.value==="done"&&(evs[i].done==="\\u2014"||!evs[i].done)){var d=new Date();evs[i].done=d.getDate()+"."+String(d.getMonth()+1).padStart(2,"0")+"."+d.getFullYear()}break}}
var inm=document.getElementById("evm_"+id);
if(inm){var mv=inm.value;try{localStorage.setItem("evmonth_"+id,mv)}catch(e){};var inq=document.getElementById("evq_"+id);var inn=document.getElementById("evn_"+id);var subSuffix2=curSub!==null?"_s"+curSub:"";if(inn)try{localStorage.setItem("sn_"+id+subSuffix2+"_m"+mv,inn.value.trim())}catch(e){};if(inq)try{localStorage.setItem("sq_"+id+subSuffix2+"_m"+mv,(parseInt(inq.value,10)||inq.value||0).toString())}catch(e){}}
if(inm){var mv=inm.value;try{localStorage.setItem("evmonth_"+id,mv)}catch(e){};var inn=document.getElementById("evn_"+id);var subSuffix2=curSub!==null?"_s"+curSub:"";if(inn)try{localStorage.setItem("sn_"+id+subSuffix2+"_m"+mv,inn.value.trim())}catch(e){}}
saveEv();closeModal();renderEv()
}
function chgSt(id){
@ -1552,7 +1549,7 @@ function dlCSV(){
var csv="\uFEFFN;\u041C\u0435\u0440\u043E\u043F\u0440\u0438\u044F\u0442\u0438\u0435;\u0424\u0438\u043B\u0438\u0430\u043B;\u0421\u0440\u043E\u043A;\u0421\u0442\u0430\u0442\u0443\u0441;\u041F\u0440\u043E\u0433\u0440\u0435\u0441\u0441;\u041A\u043E\u043B-\u0432\u043E;\u041F\u0440\u0438\u043C\u0435\u0447\u0430\u043D\u0438\u0435;\u041E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0439\n";
for(var i=0;i<fl.length;i++){
var e=fl[i];
csv+=e.id+";\""+esc(e.t)+"\";\""+brs[e.b]+"\";"+e.due+";"+stn[e.s]+";"+(e.p||0)+"%;"+(e.q||"")+";\""+esc(e.n||"")+"\";\""+esc(nl2c(e.r))+"\"\n"
csv+=e.id+";\""+esc(e.t)+"\";\""+brs[e.b]+"\";"+e.due+";"+stn[e.s]+";"+(e.p||0)+"%;\""+esc(e.n||"")+"\"+"\";\""+esc(nl2c(e.r))+"\"\n"
}
var blob=new Blob([csv],{type:"text/csv;charset=utf-8"});
var a=document.createElement("a");
@ -1563,14 +1560,13 @@ function dlCSV(){
function dlHTML(){
var fl=getFilteredEvs();var periodLabel=getReportPeriod();var months=getReportMonths();
var mn=["\u042F\u043D\u0432\u0430\u0440\u044C","\u0424\u0435\u0432\u0440\u0430\u043B\u044C","\u041C\u0430\u0440\u0442","\u0410\u043F\u0440\u0435\u043B\u044C","\u041C\u0430\u0439","\u0418\u044E\u043D\u044C","\u0418\u044E\u043B\u044C","\u0410\u0432\u0433\u0443\u0441\u0442","\u0421\u0435\u043D\u0442\u044F\u0431\u0440\u044C","\u041E\u043A\u0442\u044F\u0431\u0440\u044C","\u041D\u043E\u044F\u0431\u0440\u044C","\u0414\u0435\u043A\u0430\u0431\u0440\u044C"];
var hh="<!DOCTYPE html><html><head><meta charset='utf-8'><title>\u041E\u0442\u0447\u0451\u0442 \u041F\u0411 \u0437\u0430 "+periodLabel+"</title><style>body{font:14px Arial,sans-serif;padding:30px;color:#1A1A2E}h2{font-size:20px;margin-bottom:4px}h3{font-size:14px;color:#005BAA;margin:16px 0 4px;border-bottom:1px solid #ddd;padding-bottom:6px}.meta{font-size:12px;color:#1A1A2E;margin:2px 0 6px 0;background:#F0F4FF;padding:6px 10px;border-radius:4px}.desc{font-size:12px;color:#1A1A2E;margin:6px 0;padding:10px;background:#F0F4FF;border-radius:4px;border-left:4px solid #005BAA}.qty{font-weight:600;color:#2E7D32;margin:4px 0}.files{font-size:11px;margin:6px 0}.files .fg{margin:4px 0 8px 0;padding:4px 8px;background:#f9f9f9;border-radius:4px}.files .fgl{font-weight:600;color:#005BAA;font-size:11px}.files a{color:#005BAA;display:block;margin:2px 0 2px 8px}@media print{body{padding:10mm}}</style></head><body><h2>\u041F\u043B\u0430\u043D \u041F\u0411</h2><p>QAZAQtelecom HSE \u0437\u0430 "+periodLabel+"</p><p style='font-size:11px;color:#64748B'>\u041E\u0442\u0447\u0451\u0442 \u0441\u0444\u043E\u0440\u043C\u0438\u0440\u043E\u0432\u0430\u043D: "+new Date().toLocaleDateString("ru-RU")+"</p><br>";
var hh="<!DOCTYPE html><html><head><meta charset='utf-8'><title>\u041E\u0442\u0447\u0451\u0442 \u041F\u0411 \u0437\u0430 "+periodLabel+"</title><style>body{font:14px Arial,sans-serif;padding:30px;color:#1A1A2E}h2{font-size:20px;margin-bottom:4px}h3{font-size:14px;color:#005BAA;margin:16px 0 4px;border-bottom:1px solid #ddd;padding-bottom:6px}.meta{font-size:12px;color:#1A1A2E;margin:2px 0 6px 0;background:#F0F4FF;padding:6px 10px;border-radius:4px}.desc{font-size:12px;color:#1A1A2E;margin:6px 0;padding:10px;background:#F0F4FF;border-radius:4px;border-left:4px solid #005BAA}.files{font-size:11px;margin:6px 0}.files .fg{margin:4px 0 8px 0;padding:4px 8px;background:#f9f9f9;border-radius:4px}.files .fgl{font-weight:600;color:#005BAA;font-size:11px}.files a{color:#005BAA;display:block;margin:2px 0 2px 8px}@media print{body{padding:10mm}}</style></head><body><h2>\u041F\u043B\u0430\u043D \u041F\u0411</h2><p>QAZAQtelecom HSE \u0437\u0430 "+periodLabel+"</p><p style='font-size:11px;color:#64748B'>\u041E\u0442\u0447\u0451\u0442 \u0441\u0444\u043E\u0440\u043C\u0438\u0440\u043E\u0432\u0430\u043D: "+new Date().toLocaleDateString("ru-RU")+"</p><br>";
for(var i=0;i<fl.length;i++){var e=fl[i];var sn=secs[e.sec].split(". ")[1]||secs[e.sec];
hh+="<h3>N"+e.id+". "+esc(e.t)+"</h3>";
hh+="<div class='meta'>\u0420\u0430\u0437\u0434\u0435\u043B | "+esc(sn)+" | \u0421\u0440\u043E\u043A: "+e.due+" | "+stn[e.s]+"</div>";
var rn="";var rq=0;for(var mi=0;mi<months.length;mi++){var nk="sn_"+e.id+"_m"+months[mi];var sv=localStorage.getItem(nk);if(sv){rn=sv;break}var qk="sq_"+e.id+"_m"+months[mi];var qv=localStorage.getItem(qk);if(qv)rq=parseInt(qv,10)||0}
if(!rn&&e.n)rn=e.n;if(!rq&&e.q)rq=e.q;
var rn="";for(var mi=0;mi<months.length;mi++){var nk="sn_"+e.id+"_m"+months[mi];var sv=localStorage.getItem(nk);if(sv){rn=sv;break}}
if(!rn&&e.n)rn=e.n;
if(rn)hh+="<div class='desc'><strong>\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435 \u0432\u044B\u043F\u043E\u043B\u043D\u0435\u043D\u0438\u044F:</strong><br>"+esc(rn)+"</div>";
if(rq)hh+="<div class='qty'>\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E: "+rq+"</div>";
var fhtml="";var hasAny=false;
for(var mi=0;mi<months.length;mi++){
var fg="";var mk="_m"+months[mi];
@ -1636,7 +1632,7 @@ function dlZip(){
for(var i=0;i<fl.length;i++){var e=fl[i];var sn=secs[e.sec].split(". ")[1]||secs[e.sec];
html+='<h3>N'+e.id+'. '+esc(e.t)+'</h3><div class="meta">Раздел | '+esc(sn)+' | Срок: '+e.due+' | '+stn[e.s]+'</div>';
if(e.n)html+='<div class="desc"><strong>Описание:</strong> '+esc(e.n)+'</div>';
if(e.q)html+='<div>Количество: '+e.q+'</div>'
}
html+='<p><em>Отчёт сформирован: '+new Date().toLocaleDateString("ru-RU")+'</em></p></body></html>';
addFile("report.html",html);
@ -2040,6 +2036,6 @@ function dlAnalyticsWord(){
var a=document.createElement("a");a.href=URL.createObjectURL(blob);a.download="analytics.doc";a.click()
}
</script></script></script></script></script></script>
</script></script></script></script></script></script></script>
</body>
</html>