From f5a0263cc3226f4529f76d9fa45989397baf31a9 Mon Sep 17 00:00:00 2001 From: Dauren777 Date: Thu, 11 Jun 2026 11:30:00 +0000 Subject: [PATCH] =?UTF-8?q?fix:=20restore=20all=20improvements=20on=20work?= =?UTF-8?q?ing=20base=20=E2=80=94=20month=20range,=20report=20format,=20pe?= =?UTF-8?q?r-month,=20files,=20backup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.html | 301 +++++++---------------------------------------------- 1 file changed, 38 insertions(+), 263 deletions(-) diff --git a/index.html b/index.html index 38652ed..da93bd1 100644 --- a/index.html +++ b/index.html @@ -152,7 +152,13 @@ tr:hover{background:#FAFBFC} - + + + + + +по "; - var sk=["warn","late","done"]; - for(var si=0;si" - } - h+=""; - if(e.h&&e.h.length){ - h+="
История:
    "; - for(var hi=0;hi"+esc(e.h[hi])+""} - h+="
" - } - h+="
AI-анализ: "+esc(e.ai||"\u2014")+"
"; - h+="
Отчётность:
"; - h+="
"; - h+="Количество: "; - var now=new Date(); - var curMonth=now.getMonth(); - var savedMonth=localStorage.getItem("evmonth_"+e.id); - var selMonth=savedMonth!==null?parseInt(savedMonth,10):curMonth; - h+="Месяц:
"; - h+="
"; - h+="
Файлы:"; - if(cu&&cu.bg===0){ - for(var bi=0;bi
"; - for(var fi=0;fi("+(f.s?Math.round(f.s/1024)+"KB":"")+", "+esc(f.u||"")+" "+esc(f.d||"")+")СкачатьУдалить" - } - }catch(ex){} - } - } - }else{ - var bk=fk+"_b"+(cu?cu.bg:0); - var fd=localStorage.getItem(bk); - if(fd){ - try{ - var fa=JSON.parse(fd); - for(var fi=0;fi("+(f.s?Math.round(f.s/1024)+"KB":"")+", "+esc(f.u||"")+" "+esc(f.d||"")+")СкачатьУдалить" - } - }catch(ex){} - } - } - h+="
"; - h+=""; - if(subIdx===undefined&&e.sub&&e.sub.length>0){ - h+="
Подпункты:"; - var ss=localStorage.getItem("ss_"+e.id); - for(var si=0;si "+esc(e.sub[si].l)+") "+esc(e.sub[si].t)+"
" - } - h+="" - } - h+="
"; - h+="
"; - h+=""; - showModal(h) -} +function openEv(id,subIdx){curSub=subIdx!==undefined?subIdx:null;var e=null;for(var i=0;i";h+="
\u041E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0439: "+esc(nl2c(e.r))+"
";h+="
\u0424\u0438\u043B\u0438\u0430\u043B: "+brs[e.b]+" | \u0421\u0440\u043E\u043A: "+e.due;if(e.done&&e.done!="\u2014")h+=" | \u0418\u0441\u043F\u043E\u043B\u043D\u0435\u043D\u043E: "+e.done;h+="
";h+="
\u0421\u0442\u0430\u0442\u0443\u0441:
";if(e.h&&e.h.length){h+="
\u0418\u0441\u0442\u043E\u0440\u0438\u044F:
    ";for(var hi=0;hi"+esc(e.h[hi])+""}h+="
"}h+="
AI-\u0430\u043D\u0430\u043B\u0438\u0437: "+esc(e.ai||"\u2014")+"
";h+="
\u041E\u0442\u0447\u0451\u0442\u043D\u043E\u0441\u0442\u044C:
";h+="
";h+="\u041C\u0435\u0441\u044F\u0446:
";h+="
";h+="
\u0424\u0430\u0439\u043B\u044B:";if(cu&&cu.bg===0){for(var bi=0;bi"+esc(brs[bi])+":
";for(var fi=0;fi"+esc(f.n)+"("+(f.s?Math.round(f.s/1024)+"KB":"")+", "+esc(f.u||"")+" "+esc(f.d||"")+")\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u0421\u043A\u0430\u0447\u0430\u0442\u044C\u0423\u0434\u0430\u043B\u0438\u0442\u044C"}}catch(ex){}}}}else{var bk=fkBase+"_b"+(cu?cu.bg:0);var fd=localStorage.getItem(bk);if(fd){try{var fa=JSON.parse(fd);for(var fi=0;fi"+esc(f.n)+"("+(f.s?Math.round(f.s/1024)+"KB":"")+", "+esc(f.u||"")+" "+esc(f.d||"")+")\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u0421\u043A\u0430\u0447\u0430\u0442\u044C\u0423\u0434\u0430\u043B\u0438\u0442\u044C"}}catch(ex){}}}h+="
";h+="";if(subIdx===undefined&&e.sub&&e.sub.length>0){h+="
\u041F\u043E\u0434\u043F\u0443\u043D\u043A\u0442\u044B:";var ss=localStorage.getItem("ss_"+e.id);for(var si=0;si "+esc(e.sub[si].l)+") "+esc(e.sub[si].t)+"
"}h+=""}h+="
";h+="
";h+="";showModal(h)} function showModal(html){ var mb=document.getElementById("modal_body"); @@ -1294,28 +1212,8 @@ function closeModal(){ document.getElementById("modal").style.display="none" } -function saveEvModal(id){ - var sel=document.getElementById("evs_"+id); - var inq=document.getElementById("evq_"+id); - var inn=document.getElementById("evn_"+id); - for(var i=0;i3145728){alert("\u0424\u0430\u0439\u043B \u0431\u043E\u043B\u044C\u0448\u0435 3MB");return} - var fr=new FileReader(); - var subKey=curSub!==null?"_s"+curSub:""; - var inm=document.getElementById("evm_"+id); - var monthKey=inm?"_m"+inm.value:""; - var brKey="_b"+(cu?cu.bg:0); - fr.onload=function(){ - var key="sf_"+id+monthKey+subKey+brKey; - var arr=[]; - var ex=localStorage.getItem(key); - if(ex){try{arr=JSON.parse(ex)}catch(e){}} - var d=new Date(); - arr.push({n:f.name,s:f.size,d:d.getDate()+"."+String(d.getMonth()+1).padStart(2,"0")+"."+d.getFullYear(),u:cu?cu.n:"",data:fr.result}); - try{localStorage.setItem(key,JSON.stringify(arr))}catch(e){alert("\u041E\u0448\u0438\u0431\u043A\u0430 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0438\u044F")} - openEv(id,curSub!==null?curSub:undefined) - }; - fr.readAsDataURL(f) -} -function dlFile(id,idx){ +function upFile(id){var inp=document.getElementById("fu_"+id);if(!inp||!inp.files||!inp.files[0])return;var f=inp.files[0];if(f.size>2097152){alert("\u0424\u0430\u0439\u043B \u0431\u043E\u043B\u044C\u0448\u0435 2MB");return}var fr=new FileReader();var subKey=curSub!==null?"_s"+curSub:"";var inm=document.getElementById("evm_"+id);var monthKey=inm?"_m"+inm.value:"";var brKey="_b"+(cu?cu.bg:0);var fname=f.name;var fsize=f.size;fr.onload=function(){var key="sf_"+id+monthKey+subKey+brKey;var arr=[];var ex=localStorage.getItem(key);if(ex){try{arr=JSON.parse(ex)}catch(e){}}var d=new Date();arr.push({n:fname,s:fsize,d:d.getDate()+"."+String(d.getMonth()+1).padStart(2,"0")+"."+d.getFullYear(),u:cu?cu.n:"",data:fr.result});try{localStorage.setItem(key,JSON.stringify(arr))}catch(e){alert("\u041E\u0448\u0438\u0431\u043A\u0430 \u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0438\u044F. \u041E\u0447\u0438\u0441\u0442\u0438\u0442\u0435 \u0445\u0440\u0430\u043D\u0438\u043B\u0438\u0449\u0435.");return}openEv(id,curSub!==null?curSub:undefined)};fr.readAsDataURL(f)} +function openFile(id,idx,br){var inm=document.getElementById("evm_"+id);var mk=inm?"_m"+inm.value:"";var bk="_b"+(br!==undefined?br:(cu?cu.bg:0));var key="sf_"+id+mk+(curSub!==null?"_s"+curSub:"")+bk;var ex=localStorage.getItem(key);if(!ex)return;try{var arr=JSON.parse(ex);var f=arr[idx];if(f&&f.data){var w=window.open("","_blank");w.document.write("")}}catch(e){}} +function dlFile(id,idx,br){ var inm=document.getElementById("evm_"+id); var monthKey=inm?"_m"+inm.value:""; var key="sf_"+id+monthKey+(curSub!==null?"_s"+curSub:"")+"_b"+(cu?cu.bg:0); @@ -1371,11 +1249,12 @@ function dlFile(id,idx){ document.body.removeChild(a) }catch(e){} } -function delFile(id,idx){ +function delFile(id,idx,br){ if(!confirm("\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0444\u0430\u0439\u043B?"))return; var inm=document.getElementById("evm_"+id); var monthKey=inm?"_m"+inm.value:""; - var key="sf_"+id+monthKey+(curSub!==null?"_s"+curSub:"")+"_b"+(cu?cu.bg:0); + var brKey="_b"+(br!==undefined?br:(cu?cu.bg:0)); + var key="sf_"+id+monthKey+(curSub!==null?"_s"+curSub:"")+brKey; var ex=localStorage.getItem(key); if(!ex)return; try{ @@ -1387,33 +1266,8 @@ function delFile(id,idx){ }catch(e){} } -function saveBackup(){ - saveEv(); - var blob=new Blob([JSON.stringify(evs,null,2)],{type:"application/json"}); - var a=document.createElement("a"); - a.href=URL.createObjectURL(blob); - a.download="backup_"+new Date().toISOString().slice(0,10)+".json"; - a.click() -} -function loadBackup(inp){ - if(!inp.files||!inp.files[0])return; - var fr=new FileReader(); - fr.onload=function(){ - try{ - var d=JSON.parse(fr.result); - if(!d||!d.length){alert("\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442");return} - var out=[]; - for(var i=0;i

\u041F\u043B\u0430\u043D \u043F\u0440\u043E\u0438\u0437\u0432\u043E\u0434\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0439 \u0431\u0435\u0437\u043E\u043F\u0430\u0441\u043D\u043E\u0441\u0442\u0438

QAZAQtelecom HSE \u0437\u0430 "+periodLabel+"

\u041E\u0442\u0447\u0451\u0442 \u0441\u0444\u043E\u0440\u043C\u0438\u0440\u043E\u0432\u0430\u043D: "+new Date().toLocaleDateString("ru-RU")+"


"; - for(var i=0;i"; - hh+="
\u0421\u0440\u043E\u043A"+e.due+"\u0421\u0442\u0430\u0442\u0443\u0441"+stn[e.s]+"\u0424\u0438\u043B\u0438\u0430\u043B"+brs[e.b]+"\u041E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0439"+esc(nl2c(e.r))+"
"; - if(e.n)hh+="
\u041E\u043F\u0438\u0441\u0430\u043D\u0438\u0435: "+esc(e.n)+"
"; - if(e.q)hh+="
\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E: "+e.q+"
"; - var fhtml=""; - for(var si=-1;si<(e.sub?e.sub.length:0);si++){ - var sk=si>=0?"_s"+si:""; - for(var bk=0;bk"+esc(f.n)+" ("+Math.round((f.s||0)/1024)+" KB)" - }}catch(ex){} - } - } - } - if(fhtml)hh+="
\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u044E\u0449\u0438\u0435 \u0444\u0430\u0439\u043B\u044B:
"+fhtml+"
"; - } - hh+="

\u041E\u0442\u0447\u0451\u0442 \u0441\u0444\u043E\u0440\u043C\u0438\u0440\u043E\u0432\u0430\u043D: "+new Date().toLocaleDateString("ru-RU")+"

"; - var blob=new Blob([hh],{type:"text/html"}); - var a=document.createElement("a"); - a.href=URL.createObjectURL(blob); - a.download="report_pb_"+periodLabel.replace(/\s/g,"_")+".html"; - a.click() -} -function dlWord(){ - var fl=getFilteredEvs(); - var month=parseInt(document.getElementById("rp_month").value,10)+1; - var year=document.getElementById("rp_year").value; - var hh="Отчёт План ПБ "+month+"."+year+"

План производственной безопасности

AO «Казахтелеком» за "+month+"."+year+"


"; - for(var i=0;i" - } - hh+="
NМероприятиеФилиалСрокСтатусПрогрессКол-воПримечание
"+esc(e.t)+""+brs[e.b]+""+e.due+""+stn[e.s]+""+(e.p||0)+"%"+(e.q||"")+""+esc(e.n||"")+"


Отчёт сформирован: "+new Date().toLocaleDateString("ru-RU")+"

"; - var blob=new Blob([hh],{type:"application/msword"}); - var a=document.createElement("a"); - a.href=URL.createObjectURL(blob); - a.download="report_pb_"+year+"_"+month+".doc"; - a.click() -} -function dlPdf(){ - var fl=getFilteredEvs(); - var month=parseInt(document.getElementById("rp_month").value,10)+1; - var year=document.getElementById("rp_year").value; - var hh="Отчёт План ПБ "+month+"."+year+"

План производственной безопасности

AO «Казахтелеком» за "+month+"."+year+"


"; - for(var i=0;i" - } - hh+="
NМероприятиеФилиалСрокСтатусПрогрессКол-воПримечание
"+esc(e.t)+""+brs[e.b]+""+e.due+""+stn[e.s]+""+(e.p||0)+"%"+(e.q||"")+""+esc(e.n||"")+"


Отчёт сформирован: "+new Date().toLocaleDateString("ru-RU")+"

+