@studio-west/employees 0.5.17 → 0.5.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,3 @@
1
- "use strict";const e=require("vue"),ue=require("file-saver"),re=require("exceljs"),v=require("./index-CmFQ6bqG.cjs"),ie=require("vue-i18n"),i=require("element-plus"),O=require("@imengyu/vue3-context-menu");function de(y){const u=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(y){for(const C in y)if(C!=="default"){const f=Object.getOwnPropertyDescriptor(y,C);Object.defineProperty(u,C,f.get?f:{enumerable:!0,get:()=>y[C]})}}return u.default=y,Object.freeze(u)}const se=de(re),ce={class:"work"},ve={class:"nav"},me={style:{height:"100px",width:"100%",display:"inline-block"}},ge={style:{height:"100px",width:"100%",display:"inline-block"}},he={key:0,class:"controls-container",style:{"margin-top":".5rem"}},fe={key:0,style:{padding:"0.5em 1.5em"}},pe={key:1,style:{padding:"0.5em 1.5em"}},ye={__name:"WorkTable",props:{checkEdit:{type:Boolean,default:()=>!0},odata:Object,workSchedule:Object,fullName:{type:String,default:"Вы"}},setup(y){const{t:u,d:C}=ie.useI18n(),f=y,M=e.ref(!1),n=e.ref([]),b=e.ref("1"),P=e.ref(0),w=e.ref(new Date(new Date().getFullYear(),new Date().getMonth(),1).setMonth(new Date().getMonth()+Number(b.value))),r=e.ref([]),E=e.ref(0),x=e.ref(9),p=e.ref(8),A=e.ref(!1),W=e.ref(!0),$=e.ref(!1),U=e.ref("5"),D=e.ref(1),V=e.ref(""),Y=e.ref([]),S=e.ref([]),c=e.ref({name:"Имя",length:0,code:""}),I=e.ref(!1),H=e.ref({zIndex:30,minWidth:220,x:500,y:200}),L=e.ref({}),R=e.ref("100%");e.watch(V,async(a,l)=>{a!==l&&(S.value=[],A.value=!1,f.odata.personal.forEach(o=>{o.divisionName===a&&(S.value.some(d=>(d==null?void 0:d.activeText)===o.roleName)||S.value.push({val:!0,activeText:o.roleName}))}),j())}),e.watch(b,async a=>{console.log(a),w.value=new Date(new Date().getFullYear(),new Date().getMonth(),1).setMonth(new Date().getMonth()+Number(a)),G()});const Q=(a,l,o,d)=>{c.value.ids=a.ids,c.value.key=a.key,c.value.add=a.days.length>0&&a.days[a.days.length-1].cont,c.value.level=l.level,c.value.day=o.cellIndex,H.value.y=d.clientY,H.value.x=d.clientX,l.level===2&&l.no===0&&f.checkEdit&&(c.value.name=u("workSchedule.autocomplete"),I.value=!0),l.level===3&&o.cellIndex-l.no===1&&f.checkEdit&&(N(o.cellIndex,a.ids),c.value.name=u("workSchedule.modeSelection"),I.value=!0)},G=()=>{const a=L.value,l=new Date(w.value),o=new Date(l.getFullYear(),l.getMonth()+1,0).getDate();let d=[],t=0;for(let s=1;s<=o;s++){const h=v.parseTime(l.setDate(s),"{Y}-{m}-{dd}");t+=a.nowork.includes(h)||a.holidays.includes(h)?0:a.preholidays.includes(h)?7:8;const g=a.nowork.includes(h)?"nowork":a.holidays.includes(h)?"holiday":a.preholidays.includes(h)?"preholiday":"";d.push({day:s,holidays:g,weekday:C(new Date(l.getFullYear(),l.getMonth(),s),"day")})}E.value=t,r.value=d,f.odata.getPersonal({}).then(s=>{var h;V.value.length===0&&(V.value=(h=s.find(g=>g.employeeName===f.fullName))==null?void 0:h.divisionName),s.forEach(g=>{Y.value.some(k=>(k==null?void 0:k.value)===g.divisionName)||Y.value.push({value:g.divisionName,label:g.divisionName,key:g.divisionName}),g.divisionName===V.value&&!S.value.some(k=>(k==null?void 0:k.activeText)===g.roleName)&&S.value.push({val:!0,activeText:g.roleName})}),j(),W.value=!1})},X=e.computed(()=>!n.value.some(a=>a.contHour!==E.value)),J=(a,l)=>{var s,h,g;const o=new Date(w.value),d=`${o.getFullYear()}-${(o.getMonth()+1).toString().padStart(2,"0")}-${a.toString().padStart(2,"0")}`,t=(s=n.value[l])==null?void 0:s.days.findIndex(k=>k.day===d);return l===-1||t===-1?"":((h=n.value[l].days[t])==null?void 0:h.tips)+"<br>"+((g=n.value[l].days[t])==null?void 0:g.time)},j=()=>{n.value=[];let a=[];f.odata.personal.forEach(l=>{if(l.divisionName===V.value&&S.value.some(o=>o.val&&o.activeText===l.roleName)){let o=v.byInitials(l.employeeName);a.push(l.employeeKey),n.value.push({name:o+" ("+l.roleName+")",days:[],contHour:0,code:l.employeeKey,id:!1,ids:n.value.length})}}),_(a),$.value=!1},_=a=>{f.workSchedule.getWorkSchedule({code:a,date:v.parseTime(new Date(w.value),"{Y}-{m}-{dd}")}).then(l=>{l.forEach((o,d)=>{o!==null&&(n.value[d].days=o.data.days,n.value[d].id=o.id)}),B()})},B=()=>{n.value.forEach(a=>{a.contHour=a.days.reduce((l,o)=>l+o.time,0)})},ee=a=>{n.value[a].days=[],B()},le=a=>{switch(U.value){case"5":for(let l=D.value;l<=r.value.length;l++)r.value[l-1].holidays===""&&N(l,a,!0),r.value[l-1].holidays==="preholiday"&&(p.value-=1,N(l,a,!0),p.value+=1);break;case"2x2":for(let l=D.value;l<=r.value.length;l+=4)N(l,a,!0),l+1<=r.value.length&&N(l+1,a,!0);break;case"2x5":for(let l=D.value;l<=r.value.length;l+=7)for(let o=l;o<l+5&&o<=r.value.length;o++)r.value[o-1].holidays==="preholiday"?(p.value-=1,N(o,a,!0),p.value+=1):N(o,a,!0);break}},N=(a,l,o=!1)=>{const{date:d,ind:t}=z(a,l);t===-1?(n.value[l].days.push({day:d,time:p.value,tips:`(${x.value}:00 - ${x.value+p.value+1}:00)`}),B()):o||(p.value=n.value[l].days[t].time,x.value=parseInt(n.value[l].days[t].tips.slice(1,-12)))},te=(a,l)=>{const{ind:o}=z(a,l);n.value[l].days.splice(o,1),B(),document.querySelector(".app-main").click()},Z=(a,l)=>{const{date:o,ind:d}=z(a,l);n.value[l].days[d]={day:o,time:p.value,tips:`(${x.value}:00 - ${x.value+p.value+1}:00)`},B()},z=(a,l)=>{var t;const o=v.parseTime(new Date(w.value).setDate(a),"{Y}-{m}-{dd}"),d=(t=n.value[l])==null?void 0:t.days.findIndex(s=>s.day===o);return{date:o,ind:d}},ae=async()=>{var K;M.value=!0;const a=new se.Workbook,l=a.addWorksheet(C(w.value,"month"),{pageSetup:{paperSize:9,orientation:"landscape",fitToPage:!0}}),o={vertical:"middle",horizontal:"center"},d={top:{style:"thin"},left:{style:"thin"},bottom:{style:"thin"},right:{style:"thin"}},t={vertical:"middle",horizontal:"center",wrapText:!0};l.mergeCells(`A1:${v.cellsDynamically("A1",r.value.length+5)}1`),l.mergeCells(`A2:${v.cellsDynamically("A2",r.value.length+5)}2`),l.mergeCells("A3:A4"),l.mergeCells(`B3:${v.cellsDynamically("B3",r.value.length)}3`),l.mergeCells(`${v.cellsDynamically("B3",r.value.length+1)}3:${v.cellsDynamically("B3",r.value.length+2)}3`),l.mergeCells(`${v.cellsDynamically("B3",r.value.length+3)}3:${v.cellsDynamically("B4",r.value.length+3)}4`),l.mergeCells(`${v.cellsDynamically("B3",r.value.length+4)}3:${v.cellsDynamically("B4",r.value.length+4)}4`),l.getCell("A1").value=u("workSchedule.firm"),l.getCell("A2").value=u("workSchedule.title",{name:V.value})+C(w.value,"month")+` ${new Date(w.value).getFullYear()}`,l.getCell("A3").value=u("workSchedule.month"),l.getCell("B3").value=u("workSchedule.numbersMonth"),l.getCell(3,r.value.length+2).value=u("workSchedule.onSchedule"),l.getCell(3,r.value.length+4).value=u("workSchedule.acquainted"),l.getCell(3,r.value.length+5).value=u("workSchedule.date"),l.getCell(4,r.value.length+2).value=u("workSchedule.days"),l.getCell(4,r.value.length+3).value=`${u("workSchedule.hours")} (${E.value})`;for(let m=2;m<=r.value.length+1;m++)l.getCell(4,m).value=r.value[m-2].weekday+`
2
- `+(m-1),l.getColumn(m).width=6,l.getColumn(m).alignment=t,l.getCell(4,m).border=d;l.getRow(1).height=40,l.getRow(2).height=30,l.getRow(3).height=20,l.getColumn(1).width=15,l.getColumn(r.value.length+2).width=5,l.getColumn(r.value.length+3).width=6,l.getColumn(r.value.length+4).width=13,l.getColumn(r.value.length+5).width=13,l.getColumn(1).alignment=t,l.getCell("A2").alignment=o,l.getCell("A3").alignment=o,l.getCell("B3").alignment=o,l.getCell(3,r.value.length+2).alignment=o,l.getColumn(r.value.length+2).alignment=t,l.getColumn(r.value.length+3).alignment=t,l.getColumn(r.value.length+4).alignment=o,l.getColumn(r.value.length+5).alignment=o,l.getCell("A3").border=d,l.getCell("B3").border=d,l.getCell(3,r.value.length+2).border=d,l.getCell(4,r.value.length+2).border=d,l.getCell(3,r.value.length+4).border=d,l.getCell(3,r.value.length+5).border=d,l.getCell(4,r.value.length+3).border=d;let s=0;for(const m of n.value){let F=[m.name];for(let T=1;T<=r.value.length;T++){const{ind:q}=z(T,s);q!==-1?F[T]=`${m.days[q].time} ${m.days[q].tips}`:F[T]=" "}F.push(((K=m.days)==null?void 0:K.length)||" ",m.contHour||0);const oe=l.addRow(F);oe.border=d,s++}let h="Щербина Е. В.";f.odata.personal.forEach(m=>{m.roleName==="Начальник отдела правовой и кадровой работы"&&(h=m.employeeName)}),l.mergeCells(`A${n.value.length+6}:P${n.value.length+6}`),l.mergeCells(`Q${n.value.length+6}:AG${n.value.length+6}`),l.mergeCells(`B${n.value.length+8}:E${n.value.length+8}`),l.mergeCells(`F${n.value.length+8}:L${n.value.length+8}`),l.mergeCells(`M${n.value.length+8}:P${n.value.length+8}`),l.mergeCells(`S${n.value.length+8}:V${n.value.length+8}`),l.mergeCells(`W${n.value.length+8}:AC${n.value.length+8}`),l.mergeCells(`AD${n.value.length+8}:AG${n.value.length+8}`),l.mergeCells(`Z${n.value.length+9}:AA${n.value.length+9}`),l.getCell(`A${n.value.length+6}`).value=u("workSchedule.byInitials"),l.getCell(`Q${n.value.length+6}`).value=u("workSchedule.supervisorHR"),l.getCell(`B${n.value.length+8}`).value=u("workSchedule.compiled")+":",l.getCell(`S${n.value.length+8}`).value=u("workSchedule.approved")+":",l.getCell(`M${n.value.length+8}`).value=v.byInitials(f.fullName),l.getCell(`AD${n.value.length+8}`).value=v.byInitials(h),l.getCell(`Z${n.value.length+9}`).value=u("workSchedule.printPlace"),l.getCell(`A${n.value.length+6}`).alignment={vertical:"middle",horizontal:"right"},l.getCell(`Q${n.value.length+6}`).alignment={vertical:"middle",horizontal:"right"},l.getCell(`B${n.value.length+8}`).alignment={vertical:"middle",horizontal:"right"},l.getCell(`F${n.value.length+8}`).alignment={vertical:"middle",horizontal:"right"},l.getCell(`M${n.value.length+8}`).alignment={vertical:"middle",horizontal:"left"},l.getCell(`AD${n.value.length+8}`).alignment={vertical:"middle",horizontal:"left"},l.getCell(`Z${n.value.length+9}`).alignment=o,l.getCell(`F${n.value.length+8}`).border={bottom:{style:"thin"}},l.getCell(`W${n.value.length+8}`).border={bottom:{style:"thin"}};const g="export_"+v.parseTime(Date.now(),"{dd}.{m}.{Y}")+".xlsx",k=await a.xlsx.writeBuffer();ue.saveAs(new Blob([k]),g),M.value=!1},ne=async()=>{A.value||f.workSchedule.addWorkSchedule({data:n.value,date:v.parseTime(new Date(w.value),"{Y}-{m}-{dd}")}).then(a=>A.value=a)};return v.holidays().then(a=>{L.value=a,G()}),(a,l)=>{const o=e.resolveComponent("el-date-picker"),d=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",ce,[e.createElementVNode("div",ve,[y.checkEdit?(e.openBlock(),e.createBlock(e.unref(i.ElSelect),{key:0,modelValue:V.value,"onUpdate:modelValue":l[0]||(l[0]=t=>V.value=t),placeholder:"Select",style:{width:"240px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Y.value,t=>(e.openBlock(),e.createBlock(e.unref(i.ElOption),{key:t.value,label:t.label,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])):e.createCommentVNode("",!0),y.checkEdit?(e.openBlock(),e.createBlock(e.unref(i.ElButton),{key:1,plain:"",onClick:l[1]||(l[1]=t=>$.value=!0)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("workSchedule.jobTitle")),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(o,{modelValue:b.value,"onUpdate:modelValue":l[2]||(l[2]=t=>b.value=t),type:"month",placeholder:"Выберите месяц",format:"MMM","value-format":"M"},null,8,["modelValue"]),y.checkEdit?(e.openBlock(),e.createBlock(e.unref(i.ElSwitch),{key:2,modelValue:b.value,"onUpdate:modelValue":l[3]||(l[3]=t=>b.value=t),"active-text":e.unref(u)("workSchedule.currentMonth"),"active-value":"0","inactive-value":"1"},null,8,["modelValue","active-text"])):e.createCommentVNode("",!0),l[20]||(l[20]=e.createElementVNode("div",{class:"expander"},null,-1)),e.createVNode(e.unref(i.ElSwitch),{modelValue:R.value,"onUpdate:modelValue":l[4]||(l[4]=t=>R.value=t),"active-text":a.$t("bids.currentHeight"),"active-value":"100%","inactive-value":"calc(100vh - var(--el-component-size)*4 - var(--el-main-padding)*2 - var(--header-height))"},null,8,["modelValue","active-text"]),e.createVNode(e.unref(i.ElSwitch),{modelValue:P.value,"onUpdate:modelValue":l[5]||(l[5]=t=>P.value=t),"active-text":"Отпуска","active-value":"1","inactive-value":"0"},null,8,["modelValue"])]),e.createVNode(e.unref(i.ElSkeleton),{style:{width:"100%"},loading:W.value,animated:""},{template:e.withCtx(()=>[e.createVNode(e.unref(i.ElSkeletonItem),{variant:"text",style:{width:"100%",height:"2rem"}}),e.createVNode(e.unref(i.ElSkeletonItem),{variant:"text",style:{width:"180px",height:"4rem","margin-right":"4px"}}),e.createVNode(e.unref(i.ElSkeletonItem),{variant:"text",style:{width:"calc( 100% - 184px)",height:"4rem"}}),e.createVNode(e.unref(i.ElSkeletonItem),{variant:"text",style:{width:"180px",height:"8rem","margin-right":"4px"}}),e.createVNode(e.unref(i.ElSkeletonItem),{variant:"text",style:{width:"calc( 100% - 184px)",height:"8rem"}})]),default:e.withCtx(()=>[e.createVNode(e.unref(i.ElTable),{id:"printTable",data:n.value,style:{width:"100%"},"max-height":R.value,size:"small",align:"center",onCellClick:Q,"empty-text":e.unref(u)("workSchedule.emptyText")},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(u)("workSchedule.title",{name:V.value})+e.unref(C)(w.value,"month")+` ${new Date(w.value).getFullYear()}`,align:"center",height:"34"},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(u)("workSchedule.month"),width:"180",align:"center"},{default:e.withCtx(t=>[e.createElementVNode("div",me,e.toDisplayString(n.value[t.$index].name),1)]),_:1},8,["label"]),e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(u)("workSchedule.numbersMonth"),align:"center"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,t=>(e.openBlock(),e.createBlock(e.unref(i.ElTableColumn),{key:t.day,width:"45","class-name":t.holidays,align:"center",label:t.weekday+`
3
- `+t.day.toString()},{default:e.withCtx(s=>[e.createElementVNode("div",ge,e.toDisplayString(J(t.day,s.$index)||" "),1)]),_:2},1032,["class-name","label"]))),128))]),_:1},8,["label"]),e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(u)("workSchedule.onSchedule"),align:"center"},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(u)("workSchedule.days"),align:"center"},{default:e.withCtx(t=>[e.createTextVNode(e.toDisplayString(n.value[t.$index].days.length||0),1)]),_:1},8,["label"]),e.createVNode(e.unref(i.ElTableColumn),{label:`${e.unref(u)("workSchedule.hours")} ( ${E.value} )`,align:"center"},{default:e.withCtx(t=>[e.createElementVNode("div",{style:e.normalizeStyle(`color: ${E.value===t.row.contHour?"green":"red"};`)},e.toDisplayString(t.row.contHour),5)]),_:1},8,["label"])]),_:1},8,["label"])]),_:1},8,["label"])]),_:1},8,["data","max-height","empty-text"])]),_:1},8,["loading"]),X.value&&y.checkEdit?(e.openBlock(),e.createElementBlock("div",he,[e.createTextVNode(e.toDisplayString(e.unref(u)("workSchedule.chartsFilled"))+": ",1),A.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(i.ElButton),{key:0,type:"primary",onClick:ne},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("workSchedule.confirm")),1)]),_:1})),l[21]||(l[21]=e.createTextVNode()),e.createElementVNode("span",null,e.toDisplayString(y.fullName),1)])):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(e.unref(i.ElButton),{disabled:M.value,plain:"",onClick:ae,style:{"margin-top":".5rem"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("workSchedule.exportExcel")),1)]),_:1},8,["disabled"])),[[d,M.value]]),e.createVNode(e.unref(i.ElDialog),{title:e.unref(u)("workSchedule.jobTitle"),modelValue:$.value,"onUpdate:modelValue":l[7]||(l[7]=t=>$.value=t),width:"400px"},{footer:e.withCtx(()=>[e.createVNode(e.unref(i.ElButton),{onClick:l[6]||(l[6]=t=>$.value=!1),size:"default"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.$t("workSchedule.cancel")),1)]),_:1}),e.createVNode(e.unref(i.ElButton),{size:"default",type:"primary",onClick:j},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.$t("workSchedule.select")),1)]),_:1})]),default:e.withCtx(()=>[e.createVNode(e.unref(i.ElForm),{ref:"dialogForm",model:S.value,autocomplete:"on"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,t=>(e.openBlock(),e.createBlock(e.unref(i.ElFormItem),null,{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElSwitch),{modelValue:t.val,"onUpdate:modelValue":s=>t.val=s,"active-text":t.activeText},null,8,["modelValue","onUpdate:modelValue","active-text"])]),_:2},1024))),256))]),_:1},8,["model"])]),_:1},8,["title","modelValue"]),e.createVNode(e.unref(O.ContextMenu),{show:I.value,"onUpdate:show":l[19]||(l[19]=t=>I.value=t),options:H.value},{default:e.withCtx(()=>[e.createVNode(e.unref(O.ContextMenuItem),{label:c.value.name,disabled:""},null,8,["label"]),e.createVNode(e.unref(O.ContextMenuSeparator)),c.value.level===2?(e.openBlock(),e.createElementBlock("div",fe,[e.createVNode(e.unref(i.ElRadioGroup),{modelValue:U.value,"onUpdate:modelValue":l[8]||(l[8]=t=>U.value=t),size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElRadioButton),{label:e.unref(u)("workSchedule.Days5"),value:"5"},null,8,["label"]),e.createVNode(e.unref(i.ElRadioButton),{label:"2 Х 2",value:"2x2"}),e.createVNode(e.unref(i.ElRadioButton),{label:"2 Х 5",value:"2x5"})]),_:1},8,["modelValue"]),l[22]||(l[22]=e.createElementVNode("br",null,null,-1)),e.createElementVNode("span",null,e.toDisplayString(e.unref(u)("workSchedule.fromDate"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:D.value,"onUpdate:modelValue":l[9]||(l[9]=t=>D.value=t),step:1,min:1,max:r.value.length},null,8,["modelValue","max"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(u)("workSchedule.with"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:x.value,"onUpdate:modelValue":l[10]||(l[10]=t=>x.value=t),step:1,min:8,max:11},null,8,["modelValue"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(u)("workSchedule.duration"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:p.value,"onUpdate:modelValue":l[11]||(l[11]=t=>p.value=t),step:1,min:4,max:12},null,8,["modelValue"]),e.createVNode(e.unref(i.ElButton),{style:{"margin-top":".5rem"},size:"small",onClick:l[12]||(l[12]=t=>le(c.value.ids))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("workSchedule.fillOut")),1)]),_:1}),e.createVNode(e.unref(i.ElButton),{style:{"margin-top":".5rem"},size:"small",onClick:l[13]||(l[13]=t=>ee(c.value.ids))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("workSchedule.clearRow")),1)]),_:1})])):(e.openBlock(),e.createElementBlock("div",pe,[e.createElementVNode("div",null,e.toDisplayString(J(c.value.day,c.value.ids)),1),l[23]||(l[23]=e.createElementVNode("br",null,null,-1)),e.createElementVNode("span",null,e.toDisplayString(e.unref(u)("workSchedule.with"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:x.value,"onUpdate:modelValue":l[14]||(l[14]=t=>x.value=t),step:1,min:8,max:11,onChange:l[15]||(l[15]=t=>Z(c.value.day,c.value.ids))},null,8,["modelValue"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(u)("workSchedule.duration"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:p.value,"onUpdate:modelValue":l[16]||(l[16]=t=>p.value=t),step:1,min:4,max:12,onChange:l[17]||(l[17]=t=>Z(c.value.day,c.value.ids))},null,8,["modelValue"]),e.createVNode(e.unref(i.ElButton),{style:{"margin-top":".5rem"},size:"small",onClick:l[18]||(l[18]=t=>te(c.value.day,c.value.ids))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("workSchedule.delete")),1)]),_:1})]))]),_:1},8,["show","options"])])}}};module.exports=ye;
1
+ "use strict";const e=require("vue"),ue=require("file-saver"),re=require("exceljs"),v=require("./index-CmFQ6bqG.cjs"),ie=require("vue-i18n"),i=require("element-plus"),O=require("@imengyu/vue3-context-menu");function de(y){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(y){for(const C in y)if(C!=="default"){const f=Object.getOwnPropertyDescriptor(y,C);Object.defineProperty(r,C,f.get?f:{enumerable:!0,get:()=>y[C]})}}return r.default=y,Object.freeze(r)}const se=de(re),ce={class:"work"},ve={class:"nav"},me={style:{height:"100px",width:"100%",display:"inline-block"}},ge={style:{height:"100px",width:"100%",display:"inline-block"}},he={key:0,class:"controls-container",style:{"margin-top":".5rem"}},fe={key:0,style:{padding:"0.5em 1.5em"}},pe={key:1,style:{padding:"0.5em 1.5em"}},ye={__name:"WorkTable",props:{checkEdit:{type:Boolean,default:()=>!0},odata:Object,workSchedule:Object,fullName:{type:String,default:"Вы"}},setup(y){const{t:r,d:C}=ie.useI18n(),f=y,T=e.ref(!1),n=e.ref([]),F=e.ref(new Date().getMonth()+1),P=e.ref(0),w=e.ref(new Date(new Date().getFullYear(),new Date().getMonth(),1)),u=e.ref([]),b=e.ref(0),x=e.ref(9),p=e.ref(8),M=e.ref(!1),W=e.ref(!0),E=e.ref(!1),U=e.ref("5"),$=e.ref(1),V=e.ref(""),Y=e.ref([]),S=e.ref([]),c=e.ref({name:"Имя",length:0,code:""}),A=e.ref(!1),H=e.ref({zIndex:30,minWidth:220,x:500,y:200}),L=e.ref({}),R=e.ref("100%");e.watch(V,async(a,l)=>{a!==l&&(S.value=[],M.value=!1,f.odata.personal.forEach(o=>{o.divisionName===a&&(S.value.some(d=>(d==null?void 0:d.activeText)===o.roleName)||S.value.push({val:!0,activeText:o.roleName}))}),j())}),e.watch(F,async a=>{let l=new Date().getMonth(),o=a===null?l:a-1;o=l-1<=o?o:o+l,w.value=new Date(new Date().getFullYear(),o,1),G()});const Q=(a,l,o,d)=>{c.value.ids=a.ids,c.value.key=a.key,c.value.add=a.days.length>0&&a.days[a.days.length-1].cont,c.value.level=l.level,c.value.day=o.cellIndex,H.value.y=d.clientY,H.value.x=d.clientX,l.level===2&&l.no===0&&f.checkEdit&&(c.value.name=r("workSchedule.autocomplete"),A.value=!0),l.level===3&&o.cellIndex-l.no===1&&f.checkEdit&&(N(o.cellIndex,a.ids),c.value.name=r("workSchedule.modeSelection"),A.value=!0)},G=()=>{const a=L.value,l=new Date(w.value),o=new Date(l.getFullYear(),l.getMonth()+1,0).getDate();let d=[],t=0;for(let s=1;s<=o;s++){const h=v.parseTime(l.setDate(s),"{Y}-{m}-{dd}");t+=a.nowork.includes(h)||a.holidays.includes(h)?0:a.preholidays.includes(h)?7:8;const g=a.nowork.includes(h)?"nowork":a.holidays.includes(h)?"holiday":a.preholidays.includes(h)?"preholiday":"";d.push({day:s,holidays:g,weekday:C(new Date(l.getFullYear(),l.getMonth(),s),"day")})}b.value=t,u.value=d,f.odata.getPersonal({}).then(s=>{var h;V.value.length===0&&(V.value=(h=s.find(g=>g.employeeName===f.fullName))==null?void 0:h.divisionName),s.forEach(g=>{Y.value.some(k=>(k==null?void 0:k.value)===g.divisionName)||Y.value.push({value:g.divisionName,label:g.divisionName,key:g.divisionName}),g.divisionName===V.value&&!S.value.some(k=>(k==null?void 0:k.activeText)===g.roleName)&&S.value.push({val:!0,activeText:g.roleName})}),j(),W.value=!1})},X=e.computed(()=>!n.value.some(a=>a.contHour!==b.value)),J=(a,l)=>{var s,h,g;const o=new Date(w.value),d=`${o.getFullYear()}-${(o.getMonth()+1).toString().padStart(2,"0")}-${a.toString().padStart(2,"0")}`,t=(s=n.value[l])==null?void 0:s.days.findIndex(k=>k.day===d);return l===-1||t===-1?"":((h=n.value[l].days[t])==null?void 0:h.tips)+"<br>"+((g=n.value[l].days[t])==null?void 0:g.time)},j=()=>{n.value=[];let a=[];f.odata.personal.forEach(l=>{if(l.divisionName===V.value&&S.value.some(o=>o.val&&o.activeText===l.roleName)){let o=v.byInitials(l.employeeName);a.push(l.employeeKey),n.value.push({name:o+" ("+l.roleName+")",days:[],contHour:0,code:l.employeeKey,id:!1,ids:n.value.length})}}),_(a),E.value=!1},_=a=>{f.workSchedule.getWorkSchedule({code:a,date:v.parseTime(new Date(w.value),"{Y}-{m}-{dd}")}).then(l=>{l.forEach((o,d)=>{o!==null&&(n.value[d].days=o.data.days,n.value[d].id=o.id)}),D()})},D=()=>{n.value.forEach(a=>{a.contHour=a.days.reduce((l,o)=>l+o.time,0)})},ee=a=>{n.value[a].days=[],D()},le=a=>{switch(U.value){case"5":for(let l=$.value;l<=u.value.length;l++)u.value[l-1].holidays===""&&N(l,a,!0),u.value[l-1].holidays==="preholiday"&&(p.value-=1,N(l,a,!0),p.value+=1);break;case"2x2":for(let l=$.value;l<=u.value.length;l+=4)N(l,a,!0),l+1<=u.value.length&&N(l+1,a,!0);break;case"2x5":for(let l=$.value;l<=u.value.length;l+=7)for(let o=l;o<l+5&&o<=u.value.length;o++)u.value[o-1].holidays==="preholiday"?(p.value-=1,N(o,a,!0),p.value+=1):N(o,a,!0);break}},N=(a,l,o=!1)=>{const{date:d,ind:t}=I(a,l);t===-1?(n.value[l].days.push({day:d,time:p.value,tips:`(${x.value}:00 - ${x.value+p.value+1}:00)`}),D()):o||(p.value=n.value[l].days[t].time,x.value=parseInt(n.value[l].days[t].tips.slice(1,-12)))},te=(a,l)=>{const{ind:o}=I(a,l);n.value[l].days.splice(o,1),D(),document.querySelector(".app-main").click()},Z=(a,l)=>{const{date:o,ind:d}=I(a,l);n.value[l].days[d]={day:o,time:p.value,tips:`(${x.value}:00 - ${x.value+p.value+1}:00)`},D()},I=(a,l)=>{var t;const o=v.parseTime(new Date(w.value).setDate(a),"{Y}-{m}-{dd}"),d=(t=n.value[l])==null?void 0:t.days.findIndex(s=>s.day===o);return{date:o,ind:d}},ae=async()=>{var K;T.value=!0;const a=new se.Workbook,l=a.addWorksheet(C(w.value,"month"),{pageSetup:{paperSize:9,orientation:"landscape",fitToPage:!0}}),o={vertical:"middle",horizontal:"center"},d={top:{style:"thin"},left:{style:"thin"},bottom:{style:"thin"},right:{style:"thin"}},t={vertical:"middle",horizontal:"center",wrapText:!0};l.mergeCells(`A1:${v.cellsDynamically("A1",u.value.length+5)}1`),l.mergeCells(`A2:${v.cellsDynamically("A2",u.value.length+5)}2`),l.mergeCells("A3:A4"),l.mergeCells(`B3:${v.cellsDynamically("B3",u.value.length)}3`),l.mergeCells(`${v.cellsDynamically("B3",u.value.length+1)}3:${v.cellsDynamically("B3",u.value.length+2)}3`),l.mergeCells(`${v.cellsDynamically("B3",u.value.length+3)}3:${v.cellsDynamically("B4",u.value.length+3)}4`),l.mergeCells(`${v.cellsDynamically("B3",u.value.length+4)}3:${v.cellsDynamically("B4",u.value.length+4)}4`),l.getCell("A1").value=r("workSchedule.firm"),l.getCell("A2").value=r("workSchedule.title",{name:V.value})+C(w.value,"month")+` ${new Date(w.value).getFullYear()}`,l.getCell("A3").value=r("workSchedule.month"),l.getCell("B3").value=r("workSchedule.numbersMonth"),l.getCell(3,u.value.length+2).value=r("workSchedule.onSchedule"),l.getCell(3,u.value.length+4).value=r("workSchedule.acquainted"),l.getCell(3,u.value.length+5).value=r("workSchedule.date"),l.getCell(4,u.value.length+2).value=r("workSchedule.days"),l.getCell(4,u.value.length+3).value=`${r("workSchedule.hours")} (${b.value})`;for(let m=2;m<=u.value.length+1;m++)l.getCell(4,m).value=u.value[m-2].weekday+`
2
+ `+(m-1),l.getColumn(m).width=6,l.getColumn(m).alignment=t,l.getCell(4,m).border=d;l.getRow(1).height=40,l.getRow(2).height=30,l.getRow(3).height=20,l.getColumn(1).width=15,l.getColumn(u.value.length+2).width=5,l.getColumn(u.value.length+3).width=6,l.getColumn(u.value.length+4).width=13,l.getColumn(u.value.length+5).width=13,l.getColumn(1).alignment=t,l.getCell("A2").alignment=o,l.getCell("A3").alignment=o,l.getCell("B3").alignment=o,l.getCell(3,u.value.length+2).alignment=o,l.getColumn(u.value.length+2).alignment=t,l.getColumn(u.value.length+3).alignment=t,l.getColumn(u.value.length+4).alignment=o,l.getColumn(u.value.length+5).alignment=o,l.getCell("A3").border=d,l.getCell("B3").border=d,l.getCell(3,u.value.length+2).border=d,l.getCell(4,u.value.length+2).border=d,l.getCell(3,u.value.length+4).border=d,l.getCell(3,u.value.length+5).border=d,l.getCell(4,u.value.length+3).border=d;let s=0;for(const m of n.value){let z=[m.name];for(let B=1;B<=u.value.length;B++){const{ind:q}=I(B,s);q!==-1?z[B]=`${m.days[q].time} ${m.days[q].tips}`:z[B]=" "}z.push(((K=m.days)==null?void 0:K.length)||" ",m.contHour||0);const oe=l.addRow(z);oe.border=d,s++}let h="Щербина Е. В.";f.odata.personal.forEach(m=>{m.roleName==="Начальник отдела правовой и кадровой работы"&&(h=m.employeeName)}),l.mergeCells(`A${n.value.length+6}:P${n.value.length+6}`),l.mergeCells(`Q${n.value.length+6}:AG${n.value.length+6}`),l.mergeCells(`B${n.value.length+8}:E${n.value.length+8}`),l.mergeCells(`F${n.value.length+8}:L${n.value.length+8}`),l.mergeCells(`M${n.value.length+8}:P${n.value.length+8}`),l.mergeCells(`S${n.value.length+8}:V${n.value.length+8}`),l.mergeCells(`W${n.value.length+8}:AC${n.value.length+8}`),l.mergeCells(`AD${n.value.length+8}:AG${n.value.length+8}`),l.mergeCells(`Z${n.value.length+9}:AA${n.value.length+9}`),l.getCell(`A${n.value.length+6}`).value=r("workSchedule.byInitials"),l.getCell(`Q${n.value.length+6}`).value=r("workSchedule.supervisorHR"),l.getCell(`B${n.value.length+8}`).value=r("workSchedule.compiled")+":",l.getCell(`S${n.value.length+8}`).value=r("workSchedule.approved")+":",l.getCell(`M${n.value.length+8}`).value=v.byInitials(f.fullName),l.getCell(`AD${n.value.length+8}`).value=v.byInitials(h),l.getCell(`Z${n.value.length+9}`).value=r("workSchedule.printPlace"),l.getCell(`A${n.value.length+6}`).alignment={vertical:"middle",horizontal:"right"},l.getCell(`Q${n.value.length+6}`).alignment={vertical:"middle",horizontal:"right"},l.getCell(`B${n.value.length+8}`).alignment={vertical:"middle",horizontal:"right"},l.getCell(`F${n.value.length+8}`).alignment={vertical:"middle",horizontal:"right"},l.getCell(`M${n.value.length+8}`).alignment={vertical:"middle",horizontal:"left"},l.getCell(`AD${n.value.length+8}`).alignment={vertical:"middle",horizontal:"left"},l.getCell(`Z${n.value.length+9}`).alignment=o,l.getCell(`F${n.value.length+8}`).border={bottom:{style:"thin"}},l.getCell(`W${n.value.length+8}`).border={bottom:{style:"thin"}};const g="export_"+v.parseTime(Date.now(),"{dd}.{m}.{Y}")+".xlsx",k=await a.xlsx.writeBuffer();ue.saveAs(new Blob([k]),g),T.value=!1},ne=async()=>{M.value||f.workSchedule.addWorkSchedule({data:n.value,date:v.parseTime(new Date(w.value),"{Y}-{m}-{dd}")}).then(a=>M.value=a)};return v.holidays().then(a=>{L.value=a,G()}),(a,l)=>{const o=e.resolveComponent("el-date-picker"),d=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",ce,[e.createElementVNode("div",ve,[y.checkEdit?(e.openBlock(),e.createBlock(e.unref(i.ElSelect),{key:0,modelValue:V.value,"onUpdate:modelValue":l[0]||(l[0]=t=>V.value=t),placeholder:"Select",style:{width:"240px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Y.value,t=>(e.openBlock(),e.createBlock(e.unref(i.ElOption),{key:t.value,label:t.label,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])):e.createCommentVNode("",!0),y.checkEdit?(e.openBlock(),e.createBlock(e.unref(i.ElButton),{key:1,plain:"",onClick:l[1]||(l[1]=t=>E.value=!0)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.jobTitle")),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(o,{modelValue:F.value,"onUpdate:modelValue":l[2]||(l[2]=t=>F.value=t),type:"month",placeholder:"Выберите месяц",format:"MMM","value-format":"M"},null,8,["modelValue"]),l[19]||(l[19]=e.createElementVNode("div",{class:"expander"},null,-1)),e.createVNode(e.unref(i.ElSwitch),{modelValue:R.value,"onUpdate:modelValue":l[3]||(l[3]=t=>R.value=t),"active-text":a.$t("bids.currentHeight"),"active-value":"100%","inactive-value":"calc(100vh - var(--el-component-size)*4 - var(--el-main-padding)*2 - var(--header-height))"},null,8,["modelValue","active-text"]),e.createVNode(e.unref(i.ElSwitch),{modelValue:P.value,"onUpdate:modelValue":l[4]||(l[4]=t=>P.value=t),"active-text":"Отпуска","active-value":"1","inactive-value":"0"},null,8,["modelValue"])]),e.createVNode(e.unref(i.ElSkeleton),{style:{width:"100%"},loading:W.value,animated:""},{template:e.withCtx(()=>[e.createVNode(e.unref(i.ElSkeletonItem),{variant:"text",style:{width:"100%",height:"2rem"}}),e.createVNode(e.unref(i.ElSkeletonItem),{variant:"text",style:{width:"180px",height:"4rem","margin-right":"4px"}}),e.createVNode(e.unref(i.ElSkeletonItem),{variant:"text",style:{width:"calc( 100% - 184px)",height:"4rem"}}),e.createVNode(e.unref(i.ElSkeletonItem),{variant:"text",style:{width:"180px",height:"8rem","margin-right":"4px"}}),e.createVNode(e.unref(i.ElSkeletonItem),{variant:"text",style:{width:"calc( 100% - 184px)",height:"8rem"}})]),default:e.withCtx(()=>[e.createVNode(e.unref(i.ElTable),{id:"printTable",data:n.value,style:{width:"100%"},"max-height":R.value,size:"small",align:"center",onCellClick:Q,"empty-text":e.unref(r)("workSchedule.emptyText")},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(r)("workSchedule.title",{name:V.value})+e.unref(C)(w.value,"month")+` ${new Date(w.value).getFullYear()}`,align:"center",height:"34"},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(r)("workSchedule.month"),width:"180",align:"center"},{default:e.withCtx(t=>[e.createElementVNode("div",me,e.toDisplayString(n.value[t.$index].name),1)]),_:1},8,["label"]),e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(r)("workSchedule.numbersMonth"),align:"center"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,t=>(e.openBlock(),e.createBlock(e.unref(i.ElTableColumn),{key:t.day,width:"45","class-name":t.holidays,align:"center",label:t.weekday+`
3
+ `+t.day.toString()},{default:e.withCtx(s=>[e.createElementVNode("div",ge,e.toDisplayString(J(t.day,s.$index)||" "),1)]),_:2},1032,["class-name","label"]))),128))]),_:1},8,["label"]),e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(r)("workSchedule.onSchedule"),align:"center"},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(r)("workSchedule.days"),align:"center"},{default:e.withCtx(t=>[e.createTextVNode(e.toDisplayString(n.value[t.$index].days.length||0),1)]),_:1},8,["label"]),e.createVNode(e.unref(i.ElTableColumn),{label:`${e.unref(r)("workSchedule.hours")} ( ${b.value} )`,align:"center"},{default:e.withCtx(t=>[e.createElementVNode("div",{style:e.normalizeStyle(`color: ${b.value===t.row.contHour?"green":"red"};`)},e.toDisplayString(t.row.contHour),5)]),_:1},8,["label"])]),_:1},8,["label"])]),_:1},8,["label"])]),_:1},8,["data","max-height","empty-text"])]),_:1},8,["loading"]),X.value&&y.checkEdit?(e.openBlock(),e.createElementBlock("div",he,[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.chartsFilled"))+": ",1),M.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(i.ElButton),{key:0,type:"primary",onClick:ne},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.confirm")),1)]),_:1})),l[20]||(l[20]=e.createTextVNode()),e.createElementVNode("span",null,e.toDisplayString(y.fullName),1)])):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(e.unref(i.ElButton),{disabled:T.value,plain:"",onClick:ae,style:{"margin-top":".5rem"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.exportExcel")),1)]),_:1},8,["disabled"])),[[d,T.value]]),e.createVNode(e.unref(i.ElDialog),{title:e.unref(r)("workSchedule.jobTitle"),modelValue:E.value,"onUpdate:modelValue":l[6]||(l[6]=t=>E.value=t),width:"400px"},{footer:e.withCtx(()=>[e.createVNode(e.unref(i.ElButton),{onClick:l[5]||(l[5]=t=>E.value=!1),size:"default"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.$t("workSchedule.cancel")),1)]),_:1}),e.createVNode(e.unref(i.ElButton),{size:"default",type:"primary",onClick:j},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.$t("workSchedule.select")),1)]),_:1})]),default:e.withCtx(()=>[e.createVNode(e.unref(i.ElForm),{ref:"dialogForm",model:S.value,autocomplete:"on"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,t=>(e.openBlock(),e.createBlock(e.unref(i.ElFormItem),null,{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElSwitch),{modelValue:t.val,"onUpdate:modelValue":s=>t.val=s,"active-text":t.activeText},null,8,["modelValue","onUpdate:modelValue","active-text"])]),_:2},1024))),256))]),_:1},8,["model"])]),_:1},8,["title","modelValue"]),e.createVNode(e.unref(O.ContextMenu),{show:A.value,"onUpdate:show":l[18]||(l[18]=t=>A.value=t),options:H.value},{default:e.withCtx(()=>[e.createVNode(e.unref(O.ContextMenuItem),{label:c.value.name,disabled:""},null,8,["label"]),e.createVNode(e.unref(O.ContextMenuSeparator)),c.value.level===2?(e.openBlock(),e.createElementBlock("div",fe,[e.createVNode(e.unref(i.ElRadioGroup),{modelValue:U.value,"onUpdate:modelValue":l[7]||(l[7]=t=>U.value=t),size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElRadioButton),{label:e.unref(r)("workSchedule.Days5"),value:"5"},null,8,["label"]),e.createVNode(e.unref(i.ElRadioButton),{label:"2 Х 2",value:"2x2"}),e.createVNode(e.unref(i.ElRadioButton),{label:"2 Х 5",value:"2x5"})]),_:1},8,["modelValue"]),l[21]||(l[21]=e.createElementVNode("br",null,null,-1)),e.createElementVNode("span",null,e.toDisplayString(e.unref(r)("workSchedule.fromDate"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:$.value,"onUpdate:modelValue":l[8]||(l[8]=t=>$.value=t),step:1,min:1,max:u.value.length},null,8,["modelValue","max"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(r)("workSchedule.with"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:x.value,"onUpdate:modelValue":l[9]||(l[9]=t=>x.value=t),step:1,min:8,max:11},null,8,["modelValue"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(r)("workSchedule.duration"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:p.value,"onUpdate:modelValue":l[10]||(l[10]=t=>p.value=t),step:1,min:4,max:12},null,8,["modelValue"]),e.createVNode(e.unref(i.ElButton),{style:{"margin-top":".5rem"},size:"small",onClick:l[11]||(l[11]=t=>le(c.value.ids))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.fillOut")),1)]),_:1}),e.createVNode(e.unref(i.ElButton),{style:{"margin-top":".5rem"},size:"small",onClick:l[12]||(l[12]=t=>ee(c.value.ids))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.clearRow")),1)]),_:1})])):(e.openBlock(),e.createElementBlock("div",pe,[e.createElementVNode("div",null,e.toDisplayString(J(c.value.day,c.value.ids)),1),l[22]||(l[22]=e.createElementVNode("br",null,null,-1)),e.createElementVNode("span",null,e.toDisplayString(e.unref(r)("workSchedule.with"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:x.value,"onUpdate:modelValue":l[13]||(l[13]=t=>x.value=t),step:1,min:8,max:11,onChange:l[14]||(l[14]=t=>Z(c.value.day,c.value.ids))},null,8,["modelValue"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(r)("workSchedule.duration"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:p.value,"onUpdate:modelValue":l[15]||(l[15]=t=>p.value=t),step:1,min:4,max:12,onChange:l[16]||(l[16]=t=>Z(c.value.day,c.value.ids))},null,8,["modelValue"]),e.createVNode(e.unref(i.ElButton),{style:{"margin-top":".5rem"},size:"small",onClick:l[17]||(l[17]=t=>te(c.value.day,c.value.ids))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.delete")),1)]),_:1})]))]),_:1},8,["show","options"])])}}};module.exports=ye;
package/dist/WorkTable.js CHANGED
@@ -1,9 +1,9 @@
1
- import { ref as s, watch as ce, computed as Se, resolveComponent as Ve, resolveDirective as De, createElementBlock as B, openBlock as f, createElementVNode as w, createVNode as i, createCommentVNode as W, withDirectives as Ee, createBlock as N, unref as t, withCtx as v, Fragment as ne, renderList as oe, createTextVNode as x, toDisplayString as g, normalizeStyle as Ne } from "vue";
2
- import { saveAs as Me } from "file-saver";
3
- import * as Ae from "exceljs";
4
- import { p as P, b as ue, h as Be, c as D } from "./index-DIjJDdmP.js";
1
+ import { ref as s, watch as ce, computed as Se, resolveComponent as Ve, resolveDirective as De, createElementBlock as M, openBlock as f, createElementVNode as w, createVNode as i, createCommentVNode as J, withDirectives as Ee, createBlock as B, unref as t, withCtx as v, Fragment as ae, renderList as ne, createTextVNode as b, toDisplayString as g, normalizeStyle as Ne } from "vue";
2
+ import { saveAs as Ae } from "file-saver";
3
+ import * as Me from "exceljs";
4
+ import { p as R, b as oe, h as Be, c as D } from "./index-DIjJDdmP.js";
5
5
  import { useI18n as ze } from "vue-i18n";
6
- import { ElSelect as Te, ElOption as Fe, ElButton as M, ElSwitch as Q, ElSkeleton as Ue, ElTable as Ie, ElTableColumn as z, ElSkeletonItem as j, ElDialog as Ye, ElForm as He, ElFormItem as Re, ElRadioGroup as We, ElRadioButton as de, ElSlider as O } from "element-plus";
6
+ import { ElSelect as Te, ElOption as Fe, ElButton as N, ElSwitch as ue, ElSkeleton as Ie, ElTable as Ue, ElTableColumn as z, ElSkeletonItem as W, ElDialog as Ye, ElForm as He, ElFormItem as Re, ElRadioGroup as We, ElRadioButton as de, ElSlider as P } from "element-plus";
7
7
  import { ContextMenu as Pe, ContextMenuItem as je, ContextMenuSeparator as Oe } from "@imengyu/vue3-context-menu";
8
8
  const Ge = { class: "work" }, Le = { class: "nav" }, Ze = { style: { height: "100px", width: "100%", display: "inline-block" } }, qe = { style: { height: "100px", width: "100%", display: "inline-block" } }, Je = {
9
9
  key: 0,
@@ -24,7 +24,7 @@ const Ge = { class: "work" }, Le = { class: "nav" }, Ze = { style: { height: "10
24
24
  fullName: { type: String, default: "Вы" }
25
25
  },
26
26
  setup(T) {
27
- const { t: d, d: G } = ze(), $ = T, L = s(!1), n = s([
27
+ const { t: d, d: j } = ze(), x = T, O = s(!1), n = s([
28
28
  // { name: 'Иванов П.М. (Ведущий работник месяца)',
29
29
  // days: [], // {day: "2024-11-01", tips: '(9:00 - 18:00)', time: 8 }
30
30
  // contHour: 0,
@@ -37,136 +37,137 @@ const Ge = { class: "work" }, Le = { class: "nav" }, Ze = { style: { height: "10
37
37
  // code: '0000-00052'
38
38
  // ids: 1
39
39
  // }
40
- ]), F = s("1"), ie = s(0), C = s(new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth(), 1).setMonth((/* @__PURE__ */ new Date()).getMonth() + Number(F.value))), u = s([]), U = s(0), S = s(9), k = s(8), Z = s(!1), re = s(!0), I = s(!1), X = s("5"), Y = s(1), V = s(""), _ = s([]), E = s([]), h = s({ name: "Имя", length: 0, code: "" }), q = s(!1), ee = s({
40
+ ]), K = s((/* @__PURE__ */ new Date()).getMonth() + 1), ie = s(0), C = s(new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth(), 1)), u = s([]), F = s(0), S = s(9), k = s(8), G = s(!1), re = s(!0), I = s(!1), Q = s("5"), U = s(1), V = s(""), X = s([]), E = s([]), h = s({ name: "Имя", length: 0, code: "" }), L = s(!1), _ = s({
41
41
  zIndex: 30,
42
42
  minWidth: 220,
43
43
  x: 500,
44
44
  y: 200
45
- }), ve = s({}), le = s("100%");
45
+ }), ve = s({}), ee = s("100%");
46
46
  ce(V, async (a, e) => {
47
- a !== e && (E.value = [], Z.value = !1, $.odata.personal.forEach((o) => {
47
+ a !== e && (E.value = [], G.value = !1, x.odata.personal.forEach((o) => {
48
48
  o.divisionName === a && (E.value.some((r) => (r == null ? void 0 : r.activeText) === o.roleName) || E.value.push({ val: !0, activeText: o.roleName }));
49
- }), te());
50
- }), ce(F, async (a) => {
51
- console.log(a), C.value = new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth(), 1).setMonth((/* @__PURE__ */ new Date()).getMonth() + Number(a)), se();
49
+ }), le());
50
+ }), ce(K, async (a) => {
51
+ let e = (/* @__PURE__ */ new Date()).getMonth(), o = a === null ? e : a - 1;
52
+ o = e - 1 <= o ? o : o + e, C.value = new Date((/* @__PURE__ */ new Date()).getFullYear(), o, 1), se();
52
53
  });
53
54
  const pe = (a, e, o, r) => {
54
- h.value.ids = a.ids, h.value.key = a.key, h.value.add = a.days.length > 0 && a.days[a.days.length - 1].cont, h.value.level = e.level, h.value.day = o.cellIndex, ee.value.y = r.clientY, ee.value.x = r.clientX, e.level === 2 && e.no === 0 && $.checkEdit && (h.value.name = d("workSchedule.autocomplete"), q.value = !0), e.level === 3 && o.cellIndex - e.no === 1 && $.checkEdit && (A(o.cellIndex, a.ids), h.value.name = d("workSchedule.modeSelection"), q.value = !0);
55
+ h.value.ids = a.ids, h.value.key = a.key, h.value.add = a.days.length > 0 && a.days[a.days.length - 1].cont, h.value.level = e.level, h.value.day = o.cellIndex, _.value.y = r.clientY, _.value.x = r.clientX, e.level === 2 && e.no === 0 && x.checkEdit && (h.value.name = d("workSchedule.autocomplete"), L.value = !0), e.level === 3 && o.cellIndex - e.no === 1 && x.checkEdit && (A(o.cellIndex, a.ids), h.value.name = d("workSchedule.modeSelection"), L.value = !0);
55
56
  }, se = () => {
56
57
  const a = ve.value, e = new Date(C.value), o = new Date(e.getFullYear(), e.getMonth() + 1, 0).getDate();
57
58
  let r = [], l = 0;
58
59
  for (let m = 1; m <= o; m++) {
59
- const y = P(e.setDate(m), "{Y}-{m}-{dd}");
60
+ const y = R(e.setDate(m), "{Y}-{m}-{dd}");
60
61
  l += a.nowork.includes(y) || a.holidays.includes(y) ? 0 : a.preholidays.includes(y) ? 7 : 8;
61
62
  const p = a.nowork.includes(y) ? "nowork" : a.holidays.includes(y) ? "holiday" : a.preholidays.includes(y) ? "preholiday" : "";
62
- r.push({ day: m, holidays: p, weekday: G(new Date(e.getFullYear(), e.getMonth(), m), "day") });
63
+ r.push({ day: m, holidays: p, weekday: j(new Date(e.getFullYear(), e.getMonth(), m), "day") });
63
64
  }
64
- U.value = l, u.value = r, $.odata.getPersonal({}).then((m) => {
65
+ F.value = l, u.value = r, x.odata.getPersonal({}).then((m) => {
65
66
  var y;
66
- V.value.length === 0 && (V.value = (y = m.find((p) => p.employeeName === $.fullName)) == null ? void 0 : y.divisionName), m.forEach((p) => {
67
- _.value.some((b) => (b == null ? void 0 : b.value) === p.divisionName) || _.value.push({ value: p.divisionName, label: p.divisionName, key: p.divisionName }), p.divisionName === V.value && !E.value.some((b) => (b == null ? void 0 : b.activeText) === p.roleName) && E.value.push({ val: !0, activeText: p.roleName });
68
- }), te(), re.value = !1;
67
+ V.value.length === 0 && (V.value = (y = m.find((p) => p.employeeName === x.fullName)) == null ? void 0 : y.divisionName), m.forEach((p) => {
68
+ X.value.some(($) => ($ == null ? void 0 : $.value) === p.divisionName) || X.value.push({ value: p.divisionName, label: p.divisionName, key: p.divisionName }), p.divisionName === V.value && !E.value.some(($) => ($ == null ? void 0 : $.activeText) === p.roleName) && E.value.push({ val: !0, activeText: p.roleName });
69
+ }), le(), re.value = !1;
69
70
  });
70
- }, ye = Se(() => !n.value.some((a) => a.contHour !== U.value)), me = (a, e) => {
71
+ }, ye = Se(() => !n.value.some((a) => a.contHour !== F.value)), me = (a, e) => {
71
72
  var m, y, p;
72
- const o = new Date(C.value), r = `${o.getFullYear()}-${(o.getMonth() + 1).toString().padStart(2, "0")}-${a.toString().padStart(2, "0")}`, l = (m = n.value[e]) == null ? void 0 : m.days.findIndex((b) => b.day === r);
73
+ const o = new Date(C.value), r = `${o.getFullYear()}-${(o.getMonth() + 1).toString().padStart(2, "0")}-${a.toString().padStart(2, "0")}`, l = (m = n.value[e]) == null ? void 0 : m.days.findIndex(($) => $.day === r);
73
74
  return e === -1 || l === -1 ? "" : ((y = n.value[e].days[l]) == null ? void 0 : y.tips) + "<br>" + ((p = n.value[e].days[l]) == null ? void 0 : p.time);
74
- }, te = () => {
75
+ }, le = () => {
75
76
  n.value = [];
76
77
  let a = [];
77
- $.odata.personal.forEach((e) => {
78
+ x.odata.personal.forEach((e) => {
78
79
  if (e.divisionName === V.value && E.value.some((o) => o.val && o.activeText === e.roleName)) {
79
- let o = ue(e.employeeName);
80
+ let o = oe(e.employeeName);
80
81
  a.push(e.employeeKey), n.value.push({ name: o + " (" + e.roleName + ")", days: [], contHour: 0, code: e.employeeKey, id: !1, ids: n.value.length });
81
82
  }
82
83
  }), fe(a), I.value = !1;
83
84
  }, fe = (a) => {
84
- $.workSchedule.getWorkSchedule({ code: a, date: P(new Date(C.value), "{Y}-{m}-{dd}") }).then(
85
+ x.workSchedule.getWorkSchedule({ code: a, date: R(new Date(C.value), "{Y}-{m}-{dd}") }).then(
85
86
  (e) => {
86
87
  e.forEach((o, r) => {
87
88
  o !== null && (n.value[r].days = o.data.days, n.value[r].id = o.id);
88
- }), H();
89
+ }), Y();
89
90
  }
90
91
  );
91
- }, H = () => {
92
+ }, Y = () => {
92
93
  n.value.forEach((a) => {
93
94
  a.contHour = a.days.reduce((e, o) => e + o.time, 0);
94
95
  });
95
96
  }, we = (a) => {
96
- n.value[a].days = [], H();
97
+ n.value[a].days = [], Y();
97
98
  }, ke = (a) => {
98
- switch (X.value) {
99
+ switch (Q.value) {
99
100
  case "5":
100
- for (let e = Y.value; e <= u.value.length; e++)
101
+ for (let e = U.value; e <= u.value.length; e++)
101
102
  u.value[e - 1].holidays === "" && A(e, a, !0), u.value[e - 1].holidays === "preholiday" && (k.value -= 1, A(e, a, !0), k.value += 1);
102
103
  break;
103
104
  case "2x2":
104
- for (let e = Y.value; e <= u.value.length; e += 4)
105
+ for (let e = U.value; e <= u.value.length; e += 4)
105
106
  A(e, a, !0), e + 1 <= u.value.length && A(e + 1, a, !0);
106
107
  break;
107
108
  case "2x5":
108
- for (let e = Y.value; e <= u.value.length; e += 7)
109
+ for (let e = U.value; e <= u.value.length; e += 7)
109
110
  for (let o = e; o < e + 5 && o <= u.value.length; o++)
110
111
  u.value[o - 1].holidays === "preholiday" ? (k.value -= 1, A(o, a, !0), k.value += 1) : A(o, a, !0);
111
112
  break;
112
113
  }
113
114
  }, A = (a, e, o = !1) => {
114
- const { date: r, ind: l } = J(a, e);
115
+ const { date: r, ind: l } = Z(a, e);
115
116
  l === -1 ? (n.value[e].days.push({
116
117
  day: r,
117
118
  time: k.value,
118
119
  tips: `(${S.value}:00 - ${S.value + k.value + 1}:00)`
119
- }), H()) : o || (k.value = n.value[e].days[l].time, S.value = parseInt(n.value[e].days[l].tips.slice(1, -12)));
120
+ }), Y()) : o || (k.value = n.value[e].days[l].time, S.value = parseInt(n.value[e].days[l].tips.slice(1, -12)));
120
121
  }, Ce = (a, e) => {
121
- const { ind: o } = J(a, e);
122
- n.value[e].days.splice(o, 1), H(), document.querySelector(".app-main").click();
122
+ const { ind: o } = Z(a, e);
123
+ n.value[e].days.splice(o, 1), Y(), document.querySelector(".app-main").click();
123
124
  }, ge = (a, e) => {
124
- const { date: o, ind: r } = J(a, e);
125
+ const { date: o, ind: r } = Z(a, e);
125
126
  n.value[e].days[r] = {
126
127
  day: o,
127
128
  time: k.value,
128
129
  tips: `(${S.value}:00 - ${S.value + k.value + 1}:00)`
129
- }, H();
130
- }, J = (a, e) => {
130
+ }, Y();
131
+ }, Z = (a, e) => {
131
132
  var l;
132
- const o = P(new Date(C.value).setDate(a), "{Y}-{m}-{dd}"), r = (l = n.value[e]) == null ? void 0 : l.days.findIndex((m) => m.day === o);
133
+ const o = R(new Date(C.value).setDate(a), "{Y}-{m}-{dd}"), r = (l = n.value[e]) == null ? void 0 : l.days.findIndex((m) => m.day === o);
133
134
  return { date: o, ind: r };
134
- }, be = async () => {
135
+ }, $e = async () => {
135
136
  var he;
136
- L.value = !0;
137
- const a = new Ae.Workbook(), e = a.addWorksheet(G(C.value, "month"), { pageSetup: { paperSize: 9, orientation: "landscape", fitToPage: !0 } }), o = { vertical: "middle", horizontal: "center" }, r = { top: { style: "thin" }, left: { style: "thin" }, bottom: { style: "thin" }, right: { style: "thin" } }, l = { vertical: "middle", horizontal: "center", wrapText: !0 };
138
- e.mergeCells(`A1:${D("A1", u.value.length + 5)}1`), e.mergeCells(`A2:${D("A2", u.value.length + 5)}2`), e.mergeCells("A3:A4"), e.mergeCells(`B3:${D("B3", u.value.length)}3`), e.mergeCells(`${D("B3", u.value.length + 1)}3:${D("B3", u.value.length + 2)}3`), e.mergeCells(`${D("B3", u.value.length + 3)}3:${D("B4", u.value.length + 3)}4`), e.mergeCells(`${D("B3", u.value.length + 4)}3:${D("B4", u.value.length + 4)}4`), e.getCell("A1").value = d("workSchedule.firm"), e.getCell("A2").value = d("workSchedule.title", { name: V.value }) + G(C.value, "month") + ` ${new Date(C.value).getFullYear()}`, e.getCell("A3").value = d("workSchedule.month"), e.getCell("B3").value = d("workSchedule.numbersMonth"), e.getCell(3, u.value.length + 2).value = d("workSchedule.onSchedule"), e.getCell(3, u.value.length + 4).value = d("workSchedule.acquainted"), e.getCell(3, u.value.length + 5).value = d("workSchedule.date"), e.getCell(4, u.value.length + 2).value = d("workSchedule.days"), e.getCell(4, u.value.length + 3).value = `${d("workSchedule.hours")} (${U.value})`;
137
+ O.value = !0;
138
+ const a = new Me.Workbook(), e = a.addWorksheet(j(C.value, "month"), { pageSetup: { paperSize: 9, orientation: "landscape", fitToPage: !0 } }), o = { vertical: "middle", horizontal: "center" }, r = { top: { style: "thin" }, left: { style: "thin" }, bottom: { style: "thin" }, right: { style: "thin" } }, l = { vertical: "middle", horizontal: "center", wrapText: !0 };
139
+ e.mergeCells(`A1:${D("A1", u.value.length + 5)}1`), e.mergeCells(`A2:${D("A2", u.value.length + 5)}2`), e.mergeCells("A3:A4"), e.mergeCells(`B3:${D("B3", u.value.length)}3`), e.mergeCells(`${D("B3", u.value.length + 1)}3:${D("B3", u.value.length + 2)}3`), e.mergeCells(`${D("B3", u.value.length + 3)}3:${D("B4", u.value.length + 3)}4`), e.mergeCells(`${D("B3", u.value.length + 4)}3:${D("B4", u.value.length + 4)}4`), e.getCell("A1").value = d("workSchedule.firm"), e.getCell("A2").value = d("workSchedule.title", { name: V.value }) + j(C.value, "month") + ` ${new Date(C.value).getFullYear()}`, e.getCell("A3").value = d("workSchedule.month"), e.getCell("B3").value = d("workSchedule.numbersMonth"), e.getCell(3, u.value.length + 2).value = d("workSchedule.onSchedule"), e.getCell(3, u.value.length + 4).value = d("workSchedule.acquainted"), e.getCell(3, u.value.length + 5).value = d("workSchedule.date"), e.getCell(4, u.value.length + 2).value = d("workSchedule.days"), e.getCell(4, u.value.length + 3).value = `${d("workSchedule.hours")} (${F.value})`;
139
140
  for (let c = 2; c <= u.value.length + 1; c++)
140
141
  e.getCell(4, c).value = u.value[c - 2].weekday + `
141
142
  ` + (c - 1), e.getColumn(c).width = 6, e.getColumn(c).alignment = l, e.getCell(4, c).border = r;
142
143
  e.getRow(1).height = 40, e.getRow(2).height = 30, e.getRow(3).height = 20, e.getColumn(1).width = 15, e.getColumn(u.value.length + 2).width = 5, e.getColumn(u.value.length + 3).width = 6, e.getColumn(u.value.length + 4).width = 13, e.getColumn(u.value.length + 5).width = 13, e.getColumn(1).alignment = l, e.getCell("A2").alignment = o, e.getCell("A3").alignment = o, e.getCell("B3").alignment = o, e.getCell(3, u.value.length + 2).alignment = o, e.getColumn(u.value.length + 2).alignment = l, e.getColumn(u.value.length + 3).alignment = l, e.getColumn(u.value.length + 4).alignment = o, e.getColumn(u.value.length + 5).alignment = o, e.getCell("A3").border = r, e.getCell("B3").border = r, e.getCell(3, u.value.length + 2).border = r, e.getCell(4, u.value.length + 2).border = r, e.getCell(3, u.value.length + 4).border = r, e.getCell(3, u.value.length + 5).border = r, e.getCell(4, u.value.length + 3).border = r;
143
144
  let m = 0;
144
145
  for (const c of n.value) {
145
- let K = [c.name];
146
- for (let R = 1; R <= u.value.length; R++) {
147
- const { ind: ae } = J(R, m);
148
- ae !== -1 ? K[R] = `${c.days[ae].time} ${c.days[ae].tips}` : K[R] = " ";
146
+ let q = [c.name];
147
+ for (let H = 1; H <= u.value.length; H++) {
148
+ const { ind: te } = Z(H, m);
149
+ te !== -1 ? q[H] = `${c.days[te].time} ${c.days[te].tips}` : q[H] = " ";
149
150
  }
150
- K.push(((he = c.days) == null ? void 0 : he.length) || " ", c.contHour || 0);
151
- const $e = e.addRow(K);
152
- $e.border = r, m++;
151
+ q.push(((he = c.days) == null ? void 0 : he.length) || " ", c.contHour || 0);
152
+ const xe = e.addRow(q);
153
+ xe.border = r, m++;
153
154
  }
154
155
  let y = "Щербина Е. В.";
155
- $.odata.personal.forEach((c) => {
156
+ x.odata.personal.forEach((c) => {
156
157
  c.roleName === "Начальник отдела правовой и кадровой работы" && (y = c.employeeName);
157
- }), e.mergeCells(`A${n.value.length + 6}:P${n.value.length + 6}`), e.mergeCells(`Q${n.value.length + 6}:AG${n.value.length + 6}`), e.mergeCells(`B${n.value.length + 8}:E${n.value.length + 8}`), e.mergeCells(`F${n.value.length + 8}:L${n.value.length + 8}`), e.mergeCells(`M${n.value.length + 8}:P${n.value.length + 8}`), e.mergeCells(`S${n.value.length + 8}:V${n.value.length + 8}`), e.mergeCells(`W${n.value.length + 8}:AC${n.value.length + 8}`), e.mergeCells(`AD${n.value.length + 8}:AG${n.value.length + 8}`), e.mergeCells(`Z${n.value.length + 9}:AA${n.value.length + 9}`), e.getCell(`A${n.value.length + 6}`).value = d("workSchedule.byInitials"), e.getCell(`Q${n.value.length + 6}`).value = d("workSchedule.supervisorHR"), e.getCell(`B${n.value.length + 8}`).value = d("workSchedule.compiled") + ":", e.getCell(`S${n.value.length + 8}`).value = d("workSchedule.approved") + ":", e.getCell(`M${n.value.length + 8}`).value = ue($.fullName), e.getCell(`AD${n.value.length + 8}`).value = ue(y), e.getCell(`Z${n.value.length + 9}`).value = d("workSchedule.printPlace"), e.getCell(`A${n.value.length + 6}`).alignment = { vertical: "middle", horizontal: "right" }, e.getCell(`Q${n.value.length + 6}`).alignment = { vertical: "middle", horizontal: "right" }, e.getCell(`B${n.value.length + 8}`).alignment = { vertical: "middle", horizontal: "right" }, e.getCell(`F${n.value.length + 8}`).alignment = { vertical: "middle", horizontal: "right" }, e.getCell(`M${n.value.length + 8}`).alignment = { vertical: "middle", horizontal: "left" }, e.getCell(`AD${n.value.length + 8}`).alignment = { vertical: "middle", horizontal: "left" }, e.getCell(`Z${n.value.length + 9}`).alignment = o, e.getCell(`F${n.value.length + 8}`).border = { bottom: { style: "thin" } }, e.getCell(`W${n.value.length + 8}`).border = { bottom: { style: "thin" } };
158
- const p = "export_" + P(Date.now(), "{dd}.{m}.{Y}") + ".xlsx", b = await a.xlsx.writeBuffer();
159
- Me(new Blob([b]), p), L.value = !1;
160
- }, xe = async () => {
161
- Z.value || $.workSchedule.addWorkSchedule({ data: n.value, date: P(new Date(C.value), "{Y}-{m}-{dd}") }).then((a) => Z.value = a);
158
+ }), e.mergeCells(`A${n.value.length + 6}:P${n.value.length + 6}`), e.mergeCells(`Q${n.value.length + 6}:AG${n.value.length + 6}`), e.mergeCells(`B${n.value.length + 8}:E${n.value.length + 8}`), e.mergeCells(`F${n.value.length + 8}:L${n.value.length + 8}`), e.mergeCells(`M${n.value.length + 8}:P${n.value.length + 8}`), e.mergeCells(`S${n.value.length + 8}:V${n.value.length + 8}`), e.mergeCells(`W${n.value.length + 8}:AC${n.value.length + 8}`), e.mergeCells(`AD${n.value.length + 8}:AG${n.value.length + 8}`), e.mergeCells(`Z${n.value.length + 9}:AA${n.value.length + 9}`), e.getCell(`A${n.value.length + 6}`).value = d("workSchedule.byInitials"), e.getCell(`Q${n.value.length + 6}`).value = d("workSchedule.supervisorHR"), e.getCell(`B${n.value.length + 8}`).value = d("workSchedule.compiled") + ":", e.getCell(`S${n.value.length + 8}`).value = d("workSchedule.approved") + ":", e.getCell(`M${n.value.length + 8}`).value = oe(x.fullName), e.getCell(`AD${n.value.length + 8}`).value = oe(y), e.getCell(`Z${n.value.length + 9}`).value = d("workSchedule.printPlace"), e.getCell(`A${n.value.length + 6}`).alignment = { vertical: "middle", horizontal: "right" }, e.getCell(`Q${n.value.length + 6}`).alignment = { vertical: "middle", horizontal: "right" }, e.getCell(`B${n.value.length + 8}`).alignment = { vertical: "middle", horizontal: "right" }, e.getCell(`F${n.value.length + 8}`).alignment = { vertical: "middle", horizontal: "right" }, e.getCell(`M${n.value.length + 8}`).alignment = { vertical: "middle", horizontal: "left" }, e.getCell(`AD${n.value.length + 8}`).alignment = { vertical: "middle", horizontal: "left" }, e.getCell(`Z${n.value.length + 9}`).alignment = o, e.getCell(`F${n.value.length + 8}`).border = { bottom: { style: "thin" } }, e.getCell(`W${n.value.length + 8}`).border = { bottom: { style: "thin" } };
159
+ const p = "export_" + R(Date.now(), "{dd}.{m}.{Y}") + ".xlsx", $ = await a.xlsx.writeBuffer();
160
+ Ae(new Blob([$]), p), O.value = !1;
161
+ }, be = async () => {
162
+ G.value || x.workSchedule.addWorkSchedule({ data: n.value, date: R(new Date(C.value), "{Y}-{m}-{dd}") }).then((a) => G.value = a);
162
163
  };
163
164
  return Be().then((a) => {
164
165
  ve.value = a, se();
165
166
  }), (a, e) => {
166
167
  const o = Ve("el-date-picker"), r = De("loading");
167
- return f(), B("div", Ge, [
168
+ return f(), M("div", Ge, [
168
169
  w("div", Le, [
169
- T.checkEdit ? (f(), N(t(Te), {
170
+ T.checkEdit ? (f(), B(t(Te), {
170
171
  key: 0,
171
172
  modelValue: V.value,
172
173
  "onUpdate:modelValue": e[0] || (e[0] = (l) => V.value = l),
@@ -174,89 +175,81 @@ const Ge = { class: "work" }, Le = { class: "nav" }, Ze = { style: { height: "10
174
175
  style: { width: "240px" }
175
176
  }, {
176
177
  default: v(() => [
177
- (f(!0), B(ne, null, oe(_.value, (l) => (f(), N(t(Fe), {
178
+ (f(!0), M(ae, null, ne(X.value, (l) => (f(), B(t(Fe), {
178
179
  key: l.value,
179
180
  label: l.label,
180
181
  value: l.value
181
182
  }, null, 8, ["label", "value"]))), 128))
182
183
  ]),
183
184
  _: 1
184
- }, 8, ["modelValue"])) : W("", !0),
185
- T.checkEdit ? (f(), N(t(M), {
185
+ }, 8, ["modelValue"])) : J("", !0),
186
+ T.checkEdit ? (f(), B(t(N), {
186
187
  key: 1,
187
188
  plain: "",
188
189
  onClick: e[1] || (e[1] = (l) => I.value = !0)
189
190
  }, {
190
191
  default: v(() => [
191
- x(g(t(d)("workSchedule.jobTitle")), 1)
192
+ b(g(t(d)("workSchedule.jobTitle")), 1)
192
193
  ]),
193
194
  _: 1
194
- })) : W("", !0),
195
+ })) : J("", !0),
195
196
  i(o, {
196
- modelValue: F.value,
197
- "onUpdate:modelValue": e[2] || (e[2] = (l) => F.value = l),
197
+ modelValue: K.value,
198
+ "onUpdate:modelValue": e[2] || (e[2] = (l) => K.value = l),
198
199
  type: "month",
199
200
  placeholder: "Выберите месяц",
200
201
  format: "MMM",
201
202
  "value-format": "M"
202
203
  }, null, 8, ["modelValue"]),
203
- T.checkEdit ? (f(), N(t(Q), {
204
- key: 2,
205
- modelValue: F.value,
206
- "onUpdate:modelValue": e[3] || (e[3] = (l) => F.value = l),
207
- "active-text": t(d)("workSchedule.currentMonth"),
208
- "active-value": "0",
209
- "inactive-value": "1"
210
- }, null, 8, ["modelValue", "active-text"])) : W("", !0),
211
- e[20] || (e[20] = w("div", { class: "expander" }, null, -1)),
212
- i(t(Q), {
213
- modelValue: le.value,
214
- "onUpdate:modelValue": e[4] || (e[4] = (l) => le.value = l),
204
+ e[19] || (e[19] = w("div", { class: "expander" }, null, -1)),
205
+ i(t(ue), {
206
+ modelValue: ee.value,
207
+ "onUpdate:modelValue": e[3] || (e[3] = (l) => ee.value = l),
215
208
  "active-text": a.$t("bids.currentHeight"),
216
209
  "active-value": "100%",
217
210
  "inactive-value": "calc(100vh - var(--el-component-size)*4 - var(--el-main-padding)*2 - var(--header-height))"
218
211
  }, null, 8, ["modelValue", "active-text"]),
219
- i(t(Q), {
212
+ i(t(ue), {
220
213
  modelValue: ie.value,
221
- "onUpdate:modelValue": e[5] || (e[5] = (l) => ie.value = l),
214
+ "onUpdate:modelValue": e[4] || (e[4] = (l) => ie.value = l),
222
215
  "active-text": "Отпуска",
223
216
  "active-value": "1",
224
217
  "inactive-value": "0"
225
218
  }, null, 8, ["modelValue"])
226
219
  ]),
227
- i(t(Ue), {
220
+ i(t(Ie), {
228
221
  style: { width: "100%" },
229
222
  loading: re.value,
230
223
  animated: ""
231
224
  }, {
232
225
  template: v(() => [
233
- i(t(j), {
226
+ i(t(W), {
234
227
  variant: "text",
235
228
  style: { width: "100%", height: "2rem" }
236
229
  }),
237
- i(t(j), {
230
+ i(t(W), {
238
231
  variant: "text",
239
232
  style: { width: "180px", height: "4rem", "margin-right": "4px" }
240
233
  }),
241
- i(t(j), {
234
+ i(t(W), {
242
235
  variant: "text",
243
236
  style: { width: "calc( 100% - 184px)", height: "4rem" }
244
237
  }),
245
- i(t(j), {
238
+ i(t(W), {
246
239
  variant: "text",
247
240
  style: { width: "180px", height: "8rem", "margin-right": "4px" }
248
241
  }),
249
- i(t(j), {
242
+ i(t(W), {
250
243
  variant: "text",
251
244
  style: { width: "calc( 100% - 184px)", height: "8rem" }
252
245
  })
253
246
  ]),
254
247
  default: v(() => [
255
- i(t(Ie), {
248
+ i(t(Ue), {
256
249
  id: "printTable",
257
250
  data: n.value,
258
251
  style: { width: "100%" },
259
- "max-height": le.value,
252
+ "max-height": ee.value,
260
253
  size: "small",
261
254
  align: "center",
262
255
  onCellClick: pe,
@@ -264,7 +257,7 @@ const Ge = { class: "work" }, Le = { class: "nav" }, Ze = { style: { height: "10
264
257
  }, {
265
258
  default: v(() => [
266
259
  i(t(z), {
267
- label: t(d)("workSchedule.title", { name: V.value }) + t(G)(C.value, "month") + ` ${new Date(C.value).getFullYear()}`,
260
+ label: t(d)("workSchedule.title", { name: V.value }) + t(j)(C.value, "month") + ` ${new Date(C.value).getFullYear()}`,
268
261
  align: "center",
269
262
  height: "34"
270
263
  }, {
@@ -284,7 +277,7 @@ const Ge = { class: "work" }, Le = { class: "nav" }, Ze = { style: { height: "10
284
277
  align: "center"
285
278
  }, {
286
279
  default: v(() => [
287
- (f(!0), B(ne, null, oe(u.value, (l) => (f(), N(t(z), {
280
+ (f(!0), M(ae, null, ne(u.value, (l) => (f(), B(t(z), {
288
281
  key: l.day,
289
282
  width: "45",
290
283
  "class-name": l.holidays,
@@ -310,17 +303,17 @@ const Ge = { class: "work" }, Le = { class: "nav" }, Ze = { style: { height: "10
310
303
  align: "center"
311
304
  }, {
312
305
  default: v((l) => [
313
- x(g(n.value[l.$index].days.length || 0), 1)
306
+ b(g(n.value[l.$index].days.length || 0), 1)
314
307
  ]),
315
308
  _: 1
316
309
  }, 8, ["label"]),
317
310
  i(t(z), {
318
- label: `${t(d)("workSchedule.hours")} ( ${U.value} )`,
311
+ label: `${t(d)("workSchedule.hours")} ( ${F.value} )`,
319
312
  align: "center"
320
313
  }, {
321
314
  default: v((l) => [
322
315
  w("div", {
323
- style: Ne(`color: ${U.value === l.row.contHour ? "green" : "red"};`)
316
+ style: Ne(`color: ${F.value === l.row.contHour ? "green" : "red"};`)
324
317
  }, g(l.row.contHour), 5)
325
318
  ]),
326
319
  _: 1
@@ -337,57 +330,57 @@ const Ge = { class: "work" }, Le = { class: "nav" }, Ze = { style: { height: "10
337
330
  ]),
338
331
  _: 1
339
332
  }, 8, ["loading"]),
340
- ye.value && T.checkEdit ? (f(), B("div", Je, [
341
- x(g(t(d)("workSchedule.chartsFilled")) + ": ", 1),
342
- Z.value ? W("", !0) : (f(), N(t(M), {
333
+ ye.value && T.checkEdit ? (f(), M("div", Je, [
334
+ b(g(t(d)("workSchedule.chartsFilled")) + ": ", 1),
335
+ G.value ? J("", !0) : (f(), B(t(N), {
343
336
  key: 0,
344
337
  type: "primary",
345
- onClick: xe
338
+ onClick: be
346
339
  }, {
347
340
  default: v(() => [
348
- x(g(t(d)("workSchedule.confirm")), 1)
341
+ b(g(t(d)("workSchedule.confirm")), 1)
349
342
  ]),
350
343
  _: 1
351
344
  })),
352
- e[21] || (e[21] = x()),
345
+ e[20] || (e[20] = b()),
353
346
  w("span", null, g(T.fullName), 1)
354
- ])) : W("", !0),
355
- Ee((f(), N(t(M), {
356
- disabled: L.value,
347
+ ])) : J("", !0),
348
+ Ee((f(), B(t(N), {
349
+ disabled: O.value,
357
350
  plain: "",
358
- onClick: be,
351
+ onClick: $e,
359
352
  style: { "margin-top": ".5rem" }
360
353
  }, {
361
354
  default: v(() => [
362
- x(g(t(d)("workSchedule.exportExcel")), 1)
355
+ b(g(t(d)("workSchedule.exportExcel")), 1)
363
356
  ]),
364
357
  _: 1
365
358
  }, 8, ["disabled"])), [
366
- [r, L.value]
359
+ [r, O.value]
367
360
  ]),
368
361
  i(t(Ye), {
369
362
  title: t(d)("workSchedule.jobTitle"),
370
363
  modelValue: I.value,
371
- "onUpdate:modelValue": e[7] || (e[7] = (l) => I.value = l),
364
+ "onUpdate:modelValue": e[6] || (e[6] = (l) => I.value = l),
372
365
  width: "400px"
373
366
  }, {
374
367
  footer: v(() => [
375
- i(t(M), {
376
- onClick: e[6] || (e[6] = (l) => I.value = !1),
368
+ i(t(N), {
369
+ onClick: e[5] || (e[5] = (l) => I.value = !1),
377
370
  size: "default"
378
371
  }, {
379
372
  default: v(() => [
380
- x(g(a.$t("workSchedule.cancel")), 1)
373
+ b(g(a.$t("workSchedule.cancel")), 1)
381
374
  ]),
382
375
  _: 1
383
376
  }),
384
- i(t(M), {
377
+ i(t(N), {
385
378
  size: "default",
386
379
  type: "primary",
387
- onClick: te
380
+ onClick: le
388
381
  }, {
389
382
  default: v(() => [
390
- x(g(a.$t("workSchedule.select")), 1)
383
+ b(g(a.$t("workSchedule.select")), 1)
391
384
  ]),
392
385
  _: 1
393
386
  })
@@ -399,9 +392,9 @@ const Ge = { class: "work" }, Le = { class: "nav" }, Ze = { style: { height: "10
399
392
  autocomplete: "on"
400
393
  }, {
401
394
  default: v(() => [
402
- (f(!0), B(ne, null, oe(E.value, (l) => (f(), N(t(Re), null, {
395
+ (f(!0), M(ae, null, ne(E.value, (l) => (f(), B(t(Re), null, {
403
396
  default: v(() => [
404
- i(t(Q), {
397
+ i(t(ue), {
405
398
  modelValue: l.val,
406
399
  "onUpdate:modelValue": (m) => l.val = m,
407
400
  "active-text": l.activeText
@@ -416,9 +409,9 @@ const Ge = { class: "work" }, Le = { class: "nav" }, Ze = { style: { height: "10
416
409
  _: 1
417
410
  }, 8, ["title", "modelValue"]),
418
411
  i(t(Pe), {
419
- show: q.value,
420
- "onUpdate:show": e[19] || (e[19] = (l) => q.value = l),
421
- options: ee.value
412
+ show: L.value,
413
+ "onUpdate:show": e[18] || (e[18] = (l) => L.value = l),
414
+ options: _.value
422
415
  }, {
423
416
  default: v(() => [
424
417
  i(t(je), {
@@ -426,10 +419,10 @@ const Ge = { class: "work" }, Le = { class: "nav" }, Ze = { style: { height: "10
426
419
  disabled: ""
427
420
  }, null, 8, ["label"]),
428
421
  i(t(Oe)),
429
- h.value.level === 2 ? (f(), B("div", Ke, [
422
+ h.value.level === 2 ? (f(), M("div", Ke, [
430
423
  i(t(We), {
431
- modelValue: X.value,
432
- "onUpdate:modelValue": e[8] || (e[8] = (l) => X.value = l),
424
+ modelValue: Q.value,
425
+ "onUpdate:modelValue": e[7] || (e[7] = (l) => Q.value = l),
433
426
  size: "small"
434
427
  }, {
435
428
  default: v(() => [
@@ -448,79 +441,79 @@ const Ge = { class: "work" }, Le = { class: "nav" }, Ze = { style: { height: "10
448
441
  ]),
449
442
  _: 1
450
443
  }, 8, ["modelValue"]),
451
- e[22] || (e[22] = w("br", null, null, -1)),
444
+ e[21] || (e[21] = w("br", null, null, -1)),
452
445
  w("span", null, g(t(d)("workSchedule.fromDate")) + ":", 1),
453
- i(t(O), {
454
- modelValue: Y.value,
455
- "onUpdate:modelValue": e[9] || (e[9] = (l) => Y.value = l),
446
+ i(t(P), {
447
+ modelValue: U.value,
448
+ "onUpdate:modelValue": e[8] || (e[8] = (l) => U.value = l),
456
449
  step: 1,
457
450
  min: 1,
458
451
  max: u.value.length
459
452
  }, null, 8, ["modelValue", "max"]),
460
453
  w("span", null, g(t(d)("workSchedule.with")) + ":", 1),
461
- i(t(O), {
454
+ i(t(P), {
462
455
  modelValue: S.value,
463
- "onUpdate:modelValue": e[10] || (e[10] = (l) => S.value = l),
456
+ "onUpdate:modelValue": e[9] || (e[9] = (l) => S.value = l),
464
457
  step: 1,
465
458
  min: 8,
466
459
  max: 11
467
460
  }, null, 8, ["modelValue"]),
468
461
  w("span", null, g(t(d)("workSchedule.duration")) + ":", 1),
469
- i(t(O), {
462
+ i(t(P), {
470
463
  modelValue: k.value,
471
- "onUpdate:modelValue": e[11] || (e[11] = (l) => k.value = l),
464
+ "onUpdate:modelValue": e[10] || (e[10] = (l) => k.value = l),
472
465
  step: 1,
473
466
  min: 4,
474
467
  max: 12
475
468
  }, null, 8, ["modelValue"]),
476
- i(t(M), {
469
+ i(t(N), {
477
470
  style: { "margin-top": ".5rem" },
478
471
  size: "small",
479
- onClick: e[12] || (e[12] = (l) => ke(h.value.ids))
472
+ onClick: e[11] || (e[11] = (l) => ke(h.value.ids))
480
473
  }, {
481
474
  default: v(() => [
482
- x(g(t(d)("workSchedule.fillOut")), 1)
475
+ b(g(t(d)("workSchedule.fillOut")), 1)
483
476
  ]),
484
477
  _: 1
485
478
  }),
486
- i(t(M), {
479
+ i(t(N), {
487
480
  style: { "margin-top": ".5rem" },
488
481
  size: "small",
489
- onClick: e[13] || (e[13] = (l) => we(h.value.ids))
482
+ onClick: e[12] || (e[12] = (l) => we(h.value.ids))
490
483
  }, {
491
484
  default: v(() => [
492
- x(g(t(d)("workSchedule.clearRow")), 1)
485
+ b(g(t(d)("workSchedule.clearRow")), 1)
493
486
  ]),
494
487
  _: 1
495
488
  })
496
- ])) : (f(), B("div", Qe, [
489
+ ])) : (f(), M("div", Qe, [
497
490
  w("div", null, g(me(h.value.day, h.value.ids)), 1),
498
- e[23] || (e[23] = w("br", null, null, -1)),
491
+ e[22] || (e[22] = w("br", null, null, -1)),
499
492
  w("span", null, g(t(d)("workSchedule.with")) + ":", 1),
500
- i(t(O), {
493
+ i(t(P), {
501
494
  modelValue: S.value,
502
- "onUpdate:modelValue": e[14] || (e[14] = (l) => S.value = l),
495
+ "onUpdate:modelValue": e[13] || (e[13] = (l) => S.value = l),
503
496
  step: 1,
504
497
  min: 8,
505
498
  max: 11,
506
- onChange: e[15] || (e[15] = (l) => ge(h.value.day, h.value.ids))
499
+ onChange: e[14] || (e[14] = (l) => ge(h.value.day, h.value.ids))
507
500
  }, null, 8, ["modelValue"]),
508
501
  w("span", null, g(t(d)("workSchedule.duration")) + ":", 1),
509
- i(t(O), {
502
+ i(t(P), {
510
503
  modelValue: k.value,
511
- "onUpdate:modelValue": e[16] || (e[16] = (l) => k.value = l),
504
+ "onUpdate:modelValue": e[15] || (e[15] = (l) => k.value = l),
512
505
  step: 1,
513
506
  min: 4,
514
507
  max: 12,
515
- onChange: e[17] || (e[17] = (l) => ge(h.value.day, h.value.ids))
508
+ onChange: e[16] || (e[16] = (l) => ge(h.value.day, h.value.ids))
516
509
  }, null, 8, ["modelValue"]),
517
- i(t(M), {
510
+ i(t(N), {
518
511
  style: { "margin-top": ".5rem" },
519
512
  size: "small",
520
- onClick: e[18] || (e[18] = (l) => Ce(h.value.day, h.value.ids))
513
+ onClick: e[17] || (e[17] = (l) => Ce(h.value.day, h.value.ids))
521
514
  }, {
522
515
  default: v(() => [
523
- x(g(t(d)("workSchedule.delete")), 1)
516
+ b(g(t(d)("workSchedule.delete")), 1)
524
517
  ]),
525
518
  _: 1
526
519
  })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@studio-west/employees",
3
- "version": "0.5.17",
3
+ "version": "0.5.19",
4
4
  "files": [
5
5
  "dist"
6
6
  ],