@studio-west/employees 0.5.46 → 0.5.47

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"),de=require("file-saver"),se=require("exceljs"),c=require("./index-DxdyeKnm.cjs"),ce=require("vue-i18n"),i=require("element-plus"),L=require("@imengyu/vue3-context-menu");function ve(k){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(k){for(const C in k)if(C!=="default"){const f=Object.getOwnPropertyDescriptor(k,C);Object.defineProperty(r,C,f.get?f:{enumerable:!0,get:()=>k[C]})}}return r.default=k,Object.freeze(r)}const me=ve(se),ge={class:"work"},he={class:"nav"},fe={style:{height:"100px",width:"100%",display:"inline-block"}},pe=["innerHTML"],ye={key:0,class:"controls-container",style:{"margin-top":".5rem"}},we={key:0,style:{padding:"0.5em 1.5em"}},ke={key:1,style:{padding:"0.5em 1.5em"}},Ce={__name:"WorkTable",props:{checkEdit:{type:Boolean,default:()=>!0},odata:Object,workSchedule:Object,fullName:{type:String,default:"Вы"}},setup(k){const{t:r,d:C}=ce.useI18n(),f=k,A=e.ref(!1),n=e.ref([]),R=e.ref(new Date().getMonth()+1),G=e.ref(!1),b=e.ref([]),p=e.ref(new Date(new Date().getFullYear(),new Date().getMonth(),1)),u=e.ref([]),E=e.ref(0),x=e.ref(9),y=e.ref(8),I=e.ref(!1),J=e.ref(!0),D=e.ref(!1),j=e.ref("5"),$=e.ref(1),V=e.ref(""),q=e.ref([]),S=e.ref([]),z=e.ref([]),v=e.ref({name:"Имя",length:0,code:""}),F=e.ref(!1),O=e.ref({zIndex:30,minWidth:220,x:500,y:200}),Z=e.ref({}),B=e.ref("100%");e.watch(V,async(a,l)=>{a!==l&&(S.value=[],I.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}))}),P())}),e.watch(R,async a=>{let l=new Date().getMonth(),o=a===null?l:a-1;o=l-1<=o?o:o+12,p.value=new Date(new Date().getFullYear(),o,1),K()});const _=(a,l,o,d)=>{v.value.ids=a.ids,v.value.key=a.key,v.value.add=a.days.length>0&&a.days[a.days.length-1].cont,v.value.level=l.level,v.value.day=o.cellIndex,O.value.y=d.clientY,O.value.x=d.clientX,l.level===2&&l.no===0&&f.checkEdit&&(v.value.name=r("workSchedule.autocomplete"),F.value=!0),l.level===3&&o.cellIndex-l.no===1&&f.checkEdit&&(N(o.cellIndex,a.ids),v.value.name=r("workSchedule.modeSelection"),F.value=!0)},ee=({row:a,column:l,rowIndex:o,columnIndex:d})=>{if(!b.value||b.value.length===0)return"";const t=new Date(new Date(p.value).getFullYear(),new Date(p.value).getMonth(),d).getTime();for(let s of b.value){const{dateStart:h,dateEnd:m,code:w}=s;if(h&&m&&w===a.code){const U=new Date(c.parseDate(h)).getTime(),g=new Date(c.parseDate(m)).getTime();if(t>=U&&t<=g)return"vacation"}}return"test"},K=()=>{const a=Z.value,l=new Date(p.value),o=new Date(l.getFullYear(),l.getMonth()+1,0).getDate();let d=[],t=0;for(let s=1;s<=o;s++){const h=c.parseTime(l.setDate(s),"{Y}-{m}-{dd}");t+=a.nowork.includes(h)||a.holidays.includes(h)?0:a.preholidays.includes(h)?7:8;const m=a.nowork.includes(h)?"nowork":a.holidays.includes(h)?"holiday":a.preholidays.includes(h)?"preholiday":"";d.push({day:s,holidays:m,weekday:C(new Date(l.getFullYear(),l.getMonth(),s),"day")})}E.value=t,u.value=d,f.odata.getPersonal({}).then(s=>{var h;V.value.length===0&&(V.value=(h=s.find(m=>m.employeeName===f.fullName))==null?void 0:h.divisionName),s.forEach(m=>{q.value.some(w=>(w==null?void 0:w.value)===m.divisionName)||q.value.push({value:m.divisionName,label:m.divisionName,key:m.divisionName}),m.divisionName===V.value&&!S.value.some(w=>(w==null?void 0:w.activeText)===m.roleName)&&S.value.push({val:!0,activeText:m.roleName})}),P(),J.value=!1})},le=e.computed(()=>!n.value.some(a=>a.contHour!==E.value)),Q=(a,l)=>{var s,h,m;const o=new Date(p.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(w=>w.day===d);return l===-1||t===-1?"":((h=n.value[l].days[t])==null?void 0:h.tips)+"<br>"+((m=n.value[l].days[t])==null?void 0:m.time)},P=()=>{n.value=[],z.value=[],b.value=[],f.odata.personal.forEach(a=>{if(a.divisionName===V.value&&S.value.some(l=>l.val&&l.activeText===a.roleName)){let l=c.byInitials(a.employeeName);z.value.push(a.employeeKey),n.value.push({name:l+" ("+a.roleName+")",days:[],contHour:0,code:a.employeeKey,id:!1,ids:n.value.length})}}),f.workSchedule.getUsersYear({code:z.value,year:new Date(p.value).getFullYear()}).then(a=>{a.forEach(l=>{l.dateStart&&b.value.push({code:l.code,dateStart:l.dateStart,dateEnd:l.dateEnd})}),console.log(a),te(),D.value=!1})},te=()=>{f.workSchedule.getWorkSchedule({code:z.value,date:c.parseTime(new Date(p.value),"{Y}-{m}-{dd}")}).then(a=>{a.forEach((l,o)=>{l!==null&&(n.value[o].days=l.data.days,n.value[o].id=l.id)}),T()})},T=()=>{n.value.forEach(a=>{a.contHour=a.days.reduce((l,o)=>l+o.time,0)})},ae=a=>{n.value[a].days=[],T()},ne=a=>{switch(j.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"&&(y.value-=1,N(l,a,!0),y.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"?(y.value-=1,N(o,a,!0),y.value+=1):N(o,a,!0);break}},N=(a,l,o=!1)=>{const{date:d,ind:t}=Y(a,l);t===-1?(n.value[l].days.push({day:d,time:y.value,tips:`(${x.value}:00 - ${x.value+y.value+1}:00)`}),T()):o||(y.value=n.value[l].days[t].time,x.value=parseInt(n.value[l].days[t].tips.slice(1,-12)))},oe=(a,l)=>{const{ind:o}=Y(a,l);n.value[l].days.splice(o,1),T(),document.querySelector(".app-main").click()},X=(a,l)=>{const{date:o,ind:d}=Y(a,l);n.value[l].days[d]={day:o,time:y.value,tips:`(${x.value}:00 - ${x.value+y.value+1}:00)`},T()},Y=(a,l)=>{var t;const o=c.parseTime(new Date(p.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}},ue=async()=>{var U;A.value=!0;const a=new me.Workbook,l=a.addWorksheet(C(p.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:${c.cellsDynamically("A1",u.value.length+5)}1`),l.mergeCells(`A2:${c.cellsDynamically("A2",u.value.length+5)}2`),l.mergeCells("A3:A4"),l.mergeCells(`B3:${c.cellsDynamically("B3",u.value.length)}3`),l.mergeCells(`${c.cellsDynamically("B3",u.value.length+1)}3:${c.cellsDynamically("B3",u.value.length+2)}3`),l.mergeCells(`${c.cellsDynamically("B3",u.value.length+3)}3:${c.cellsDynamically("B4",u.value.length+3)}4`),l.mergeCells(`${c.cellsDynamically("B3",u.value.length+4)}3:${c.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(p.value,"month")+` ${new Date(p.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")} (${E.value})`;for(let g=2;g<=u.value.length+1;g++)l.getCell(4,g).value=u.value[g-2].weekday+`
2
- `+(g-1),l.getColumn(g).width=6,l.getColumn(g).alignment=t,l.getCell(4,g).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 g of n.value){let H=[g.name];for(let M=1;M<=u.value.length;M++){const{ind:W}=Y(M,s);W!==-1?H[M]=`${g.days[W].time} ${g.days[W].tips}`:H[M]=" "}H.push(((U=g.days)==null?void 0:U.length)||" ",g.contHour||0);const ie=l.addRow(H);ie.border=d,s++}let h="Щербина Е. В.";f.odata.personal.forEach(g=>{g.roleName==="Начальник отдела правовой и кадровой работы"&&(h=g.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=c.byInitials(f.fullName),l.getCell(`AD${n.value.length+8}`).value=c.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 m="export_"+c.parseTime(Date.now(),"{dd}.{m}.{Y}")+".xlsx",w=await a.xlsx.writeBuffer();de.saveAs(new Blob([w]),m),A.value=!1},re=async()=>{I.value||f.workSchedule.addWorkSchedule({data:n.value,date:c.parseTime(new Date(p.value),"{Y}-{m}-{dd}")}).then(a=>I.value=a)};return c.holidays().then(a=>{Z.value=a,K()}),(a,l)=>{const o=e.resolveComponent("el-date-picker"),d=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",ge,[e.createElementVNode("div",he,[k.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(q.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),k.checkEdit?(e.openBlock(),e.createBlock(e.unref(i.ElButton),{key:1,plain:"",onClick:l[1]||(l[1]=t=>D.value=!0)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.jobTitle")),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(o,{modelValue:R.value,"onUpdate:modelValue":l[2]||(l[2]=t=>R.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:B.value,"onUpdate:modelValue":l[3]||(l[3]=t=>B.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:G.value,"onUpdate:modelValue":l[4]||(l[4]=t=>G.value=t),"active-text":"Отпуска","active-value":!0,"inactive-value":!1},null,8,["modelValue"])]),e.createVNode(e.unref(i.ElSkeleton),{style:{width:"100%"},loading:J.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":B.value,size:"small",align:"center",onCellClick:_,"empty-text":e.unref(r)("workSchedule.emptyText"),"cell-class-name":ee},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(r)("workSchedule.title",{name:V.value})+e.unref(C)(p.value,"month")+` ${new Date(p.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",fixed:B.value!=="100%"},{default:e.withCtx(t=>[e.createElementVNode("div",fe,e.toDisplayString(n.value[t.$index].name),1)]),_:1},8,["label","fixed"]),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:"46","class-name":t.holidays,align:"center",label:t.weekday+`
3
- `+t.day.toString(),prop:"vacation"},{default:e.withCtx(s=>[e.createElementVNode("div",{style:{height:"100px",width:"100%",display:"inline-block"},innerHTML:Q(t.day,s.$index)||" "},null,8,pe)]),_:2},1032,["class-name","label"]))),128))]),_:1},8,["label"]),e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(r)("workSchedule.onSchedule"),align:"center",fixed:B.value!=="100%"?"right":!1},{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")} ( ${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","fixed"])]),_:1},8,["label"])]),_:1},8,["data","max-height","empty-text"])]),_:1},8,["loading"]),le.value&&k.checkEdit?(e.openBlock(),e.createElementBlock("div",ye,[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.chartsFilled"))+": ",1),I.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(i.ElButton),{key:0,type:"primary",onClick:re},{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(k.fullName),1)])):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(e.unref(i.ElButton),{disabled:A.value,plain:"",onClick:ue,style:{"margin-top":".5rem"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.exportExcel")),1)]),_:1},8,["disabled"])),[[d,A.value]]),e.createVNode(e.unref(i.ElDialog),{title:e.unref(r)("workSchedule.jobTitle"),modelValue:D.value,"onUpdate:modelValue":l[6]||(l[6]=t=>D.value=t),width:"400px"},{footer:e.withCtx(()=>[e.createVNode(e.unref(i.ElButton),{onClick:l[5]||(l[5]=t=>D.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:P},{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(L.ContextMenu),{show:F.value,"onUpdate:show":l[18]||(l[18]=t=>F.value=t),options:O.value},{default:e.withCtx(()=>[e.createVNode(e.unref(L.ContextMenuItem),{label:v.value.name,disabled:""},null,8,["label"]),e.createVNode(e.unref(L.ContextMenuSeparator)),v.value.level===2?(e.openBlock(),e.createElementBlock("div",we,[e.createVNode(e.unref(i.ElRadioGroup),{modelValue:j.value,"onUpdate:modelValue":l[7]||(l[7]=t=>j.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:y.value,"onUpdate:modelValue":l[10]||(l[10]=t=>y.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=>ne(v.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=>ae(v.value.ids))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.clearRow")),1)]),_:1})])):(e.openBlock(),e.createElementBlock("div",ke,[e.createElementVNode("div",null,e.toDisplayString(Q(v.value.day,v.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=>X(v.value.day,v.value.ids))},null,8,["modelValue"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(r)("workSchedule.duration"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:y.value,"onUpdate:modelValue":l[15]||(l[15]=t=>y.value=t),step:1,min:4,max:12,onChange:l[16]||(l[16]=t=>X(v.value.day,v.value.ids))},null,8,["modelValue"]),e.createVNode(e.unref(i.ElButton),{style:{"margin-top":".5rem"},size:"small",onClick:l[17]||(l[17]=t=>oe(v.value.day,v.value.ids))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.delete")),1)]),_:1})]))]),_:1},8,["show","options"])])}}};module.exports=Ce;
1
+ "use strict";const e=require("vue"),de=require("file-saver"),se=require("exceljs"),c=require("./index-DxdyeKnm.cjs"),ce=require("vue-i18n"),i=require("element-plus"),L=require("@imengyu/vue3-context-menu");function ve(k){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(k){for(const C in k)if(C!=="default"){const f=Object.getOwnPropertyDescriptor(k,C);Object.defineProperty(r,C,f.get?f:{enumerable:!0,get:()=>k[C]})}}return r.default=k,Object.freeze(r)}const me=ve(se),ge={class:"work"},he={class:"nav"},fe={style:{height:"100px",width:"100%",display:"inline-block"}},pe=["innerHTML"],ye={key:0,class:"controls-container",style:{"margin-top":".5rem"}},we={key:0,style:{padding:"0.5em 1.5em"}},ke={key:1,style:{padding:"0.5em 1.5em"}},Ce={__name:"WorkTable",props:{checkEdit:{type:Boolean,default:()=>!0},odata:Object,workSchedule:Object,fullName:{type:String,default:"Вы"}},setup(k){const{t:r,d:C}=ce.useI18n(),f=k,A=e.ref(!1),n=e.ref([]),H=e.ref(new Date().getMonth()+1),R=e.ref(!1),b=e.ref([]),p=e.ref(new Date(new Date().getFullYear(),new Date().getMonth(),1)),u=e.ref([]),E=e.ref(0),x=e.ref(9),y=e.ref(8),z=e.ref(!1),G=e.ref(!0),D=e.ref(!1),j=e.ref("5"),$=e.ref(1),V=e.ref(""),q=e.ref([]),S=e.ref([]),F=e.ref([]),v=e.ref({name:"Имя",length:0,code:""}),I=e.ref(!1),O=e.ref({zIndex:30,minWidth:220,x:500,y:200}),J=e.ref({}),B=e.ref("100%");e.watch(V,async(a,l)=>{a!==l&&(S.value=[],z.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}))}),P())}),e.watch(H,async a=>{let l=new Date().getMonth(),o=a===null?l:a-1;o=l-1<=o?o:o+12,p.value=new Date(new Date().getFullYear(),o,1),Z()});const _=(a,l,o,d)=>{v.value.ids=a.ids,v.value.key=a.key,v.value.add=a.days.length>0&&a.days[a.days.length-1].cont,v.value.level=l.level,v.value.day=o.cellIndex,O.value.y=d.clientY,O.value.x=d.clientX,l.level===2&&l.no===0&&f.checkEdit&&(v.value.name=r("workSchedule.autocomplete"),I.value=!0),l.level===3&&o.cellIndex-l.no===1&&f.checkEdit&&(N(o.cellIndex,a.ids),v.value.name=r("workSchedule.modeSelection"),I.value=!0)},ee=({row:a,columnIndex:l})=>{if(!b.value||b.value.length===0||!R)return"";const o=new Date(new Date(p.value).getFullYear(),new Date(p.value).getMonth(),l).getTime();for(let d of b.value){const{dateStart:t,dateEnd:s,code:g}=d;if(t&&s&&g===a.code&&l!==0){const m=new Date(c.parseDate(t)).getTime(),w=new Date(c.parseDate(s)).getTime();if(o>=m&&o<=w)return"vacation"}}return""},Z=()=>{const a=J.value,l=new Date(p.value),o=new Date(l.getFullYear(),l.getMonth()+1,0).getDate();let d=[],t=0;for(let s=1;s<=o;s++){const g=c.parseTime(l.setDate(s),"{Y}-{m}-{dd}");t+=a.nowork.includes(g)||a.holidays.includes(g)?0:a.preholidays.includes(g)?7:8;const m=a.nowork.includes(g)?"nowork":a.holidays.includes(g)?"holiday":a.preholidays.includes(g)?"preholiday":"";d.push({day:s,holidays:m,weekday:C(new Date(l.getFullYear(),l.getMonth(),s),"day")})}E.value=t,u.value=d,f.odata.getPersonal({}).then(s=>{var g;V.value.length===0&&(V.value=(g=s.find(m=>m.employeeName===f.fullName))==null?void 0:g.divisionName),s.forEach(m=>{q.value.some(w=>(w==null?void 0:w.value)===m.divisionName)||q.value.push({value:m.divisionName,label:m.divisionName,key:m.divisionName}),m.divisionName===V.value&&!S.value.some(w=>(w==null?void 0:w.activeText)===m.roleName)&&S.value.push({val:!0,activeText:m.roleName})}),P(),G.value=!1})},le=e.computed(()=>!n.value.some(a=>a.contHour!==E.value)),K=(a,l)=>{var s,g,m;const o=new Date(p.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(w=>w.day===d);return l===-1||t===-1?"":((g=n.value[l].days[t])==null?void 0:g.tips)+"<br>"+((m=n.value[l].days[t])==null?void 0:m.time)},P=()=>{n.value=[],F.value=[],b.value=[],f.odata.personal.forEach(a=>{if(a.divisionName===V.value&&S.value.some(l=>l.val&&l.activeText===a.roleName)){let l=c.byInitials(a.employeeName);F.value.push(a.employeeKey),n.value.push({name:l+" ("+a.roleName+")",days:[],contHour:0,code:a.employeeKey,id:!1,ids:n.value.length})}}),f.workSchedule.getUsersYear({code:F.value,year:new Date(p.value).getFullYear()}).then(a=>{a.forEach(l=>{l.dateStart&&b.value.push({code:l.code,dateStart:l.dateStart,dateEnd:l.dateEnd})}),console.log(a),te(),D.value=!1})},te=()=>{f.workSchedule.getWorkSchedule({code:F.value,date:c.parseTime(new Date(p.value),"{Y}-{m}-{dd}")}).then(a=>{a.forEach((l,o)=>{l!==null&&(n.value[o].days=l.data.days,n.value[o].id=l.id)}),T()})},T=()=>{n.value.forEach(a=>{a.contHour=a.days.reduce((l,o)=>l+o.time,0)})},ae=a=>{n.value[a].days=[],T()},ne=a=>{switch(j.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"&&(y.value-=1,N(l,a,!0),y.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"?(y.value-=1,N(o,a,!0),y.value+=1):N(o,a,!0);break}},N=(a,l,o=!1)=>{const{date:d,ind:t}=Y(a,l);t===-1?(n.value[l].days.push({day:d,time:y.value,tips:`(${x.value}:00 - ${x.value+y.value+1}:00)`}),T()):o||(y.value=n.value[l].days[t].time,x.value=parseInt(n.value[l].days[t].tips.slice(1,-12)))},oe=(a,l)=>{const{ind:o}=Y(a,l);n.value[l].days.splice(o,1),T(),document.querySelector(".app-main").click()},Q=(a,l)=>{const{date:o,ind:d}=Y(a,l);n.value[l].days[d]={day:o,time:y.value,tips:`(${x.value}:00 - ${x.value+y.value+1}:00)`},T()},Y=(a,l)=>{var t;const o=c.parseTime(new Date(p.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}},ue=async()=>{var X;A.value=!0;const a=new me.Workbook,l=a.addWorksheet(C(p.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:${c.cellsDynamically("A1",u.value.length+5)}1`),l.mergeCells(`A2:${c.cellsDynamically("A2",u.value.length+5)}2`),l.mergeCells("A3:A4"),l.mergeCells(`B3:${c.cellsDynamically("B3",u.value.length)}3`),l.mergeCells(`${c.cellsDynamically("B3",u.value.length+1)}3:${c.cellsDynamically("B3",u.value.length+2)}3`),l.mergeCells(`${c.cellsDynamically("B3",u.value.length+3)}3:${c.cellsDynamically("B4",u.value.length+3)}4`),l.mergeCells(`${c.cellsDynamically("B3",u.value.length+4)}3:${c.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(p.value,"month")+` ${new Date(p.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")} (${E.value})`;for(let h=2;h<=u.value.length+1;h++)l.getCell(4,h).value=u.value[h-2].weekday+`
2
+ `+(h-1),l.getColumn(h).width=6,l.getColumn(h).alignment=t,l.getCell(4,h).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 h of n.value){let U=[h.name];for(let M=1;M<=u.value.length;M++){const{ind:W}=Y(M,s);W!==-1?U[M]=`${h.days[W].time} ${h.days[W].tips}`:U[M]=" "}U.push(((X=h.days)==null?void 0:X.length)||" ",h.contHour||0);const ie=l.addRow(U);ie.border=d,s++}let g="Щербина Е. В.";f.odata.personal.forEach(h=>{h.roleName==="Начальник отдела правовой и кадровой работы"&&(g=h.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=c.byInitials(f.fullName),l.getCell(`AD${n.value.length+8}`).value=c.byInitials(g),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 m="export_"+c.parseTime(Date.now(),"{dd}.{m}.{Y}")+".xlsx",w=await a.xlsx.writeBuffer();de.saveAs(new Blob([w]),m),A.value=!1},re=async()=>{z.value||f.workSchedule.addWorkSchedule({data:n.value,date:c.parseTime(new Date(p.value),"{Y}-{m}-{dd}")}).then(a=>z.value=a)};return c.holidays().then(a=>{J.value=a,Z()}),(a,l)=>{const o=e.resolveComponent("el-date-picker"),d=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",ge,[e.createElementVNode("div",he,[k.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(q.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),k.checkEdit?(e.openBlock(),e.createBlock(e.unref(i.ElButton),{key:1,plain:"",onClick:l[1]||(l[1]=t=>D.value=!0)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.jobTitle")),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(o,{modelValue:H.value,"onUpdate:modelValue":l[2]||(l[2]=t=>H.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:B.value,"onUpdate:modelValue":l[3]||(l[3]=t=>B.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:R.value,"onUpdate:modelValue":l[4]||(l[4]=t=>R.value=t),"active-text":"Отпуска","active-value":!0,"inactive-value":!1},null,8,["modelValue"])]),e.createVNode(e.unref(i.ElSkeleton),{style:{width:"100%"},loading:G.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":B.value,size:"small",align:"center",onCellClick:_,"empty-text":e.unref(r)("workSchedule.emptyText"),"cell-class-name":ee},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(r)("workSchedule.title",{name:V.value})+e.unref(C)(p.value,"month")+` ${new Date(p.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",fixed:B.value!=="100%"},{default:e.withCtx(t=>[e.createElementVNode("div",fe,e.toDisplayString(n.value[t.$index].name),1)]),_:1},8,["label","fixed"]),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:"46","class-name":t.holidays,align:"center",label:t.weekday+`
3
+ `+t.day.toString(),prop:"vacation"},{default:e.withCtx(s=>[e.createElementVNode("div",{style:{height:"100px",width:"100%",display:"inline-block"},innerHTML:K(t.day,s.$index)||" "},null,8,pe)]),_:2},1032,["class-name","label"]))),128))]),_:1},8,["label"]),e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(r)("workSchedule.onSchedule"),align:"center",fixed:B.value!=="100%"?"right":!1},{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")} ( ${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","fixed"])]),_:1},8,["label"])]),_:1},8,["data","max-height","empty-text"])]),_:1},8,["loading"]),le.value&&k.checkEdit?(e.openBlock(),e.createElementBlock("div",ye,[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.chartsFilled"))+": ",1),z.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(i.ElButton),{key:0,type:"primary",onClick:re},{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(k.fullName),1)])):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(e.unref(i.ElButton),{disabled:A.value,plain:"",onClick:ue,style:{"margin-top":".5rem"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.exportExcel")),1)]),_:1},8,["disabled"])),[[d,A.value]]),e.createVNode(e.unref(i.ElDialog),{title:e.unref(r)("workSchedule.jobTitle"),modelValue:D.value,"onUpdate:modelValue":l[6]||(l[6]=t=>D.value=t),width:"400px"},{footer:e.withCtx(()=>[e.createVNode(e.unref(i.ElButton),{onClick:l[5]||(l[5]=t=>D.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:P},{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(L.ContextMenu),{show:I.value,"onUpdate:show":l[18]||(l[18]=t=>I.value=t),options:O.value},{default:e.withCtx(()=>[e.createVNode(e.unref(L.ContextMenuItem),{label:v.value.name,disabled:""},null,8,["label"]),e.createVNode(e.unref(L.ContextMenuSeparator)),v.value.level===2?(e.openBlock(),e.createElementBlock("div",we,[e.createVNode(e.unref(i.ElRadioGroup),{modelValue:j.value,"onUpdate:modelValue":l[7]||(l[7]=t=>j.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:y.value,"onUpdate:modelValue":l[10]||(l[10]=t=>y.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=>ne(v.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=>ae(v.value.ids))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.clearRow")),1)]),_:1})])):(e.openBlock(),e.createElementBlock("div",ke,[e.createElementVNode("div",null,e.toDisplayString(K(v.value.day,v.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=>Q(v.value.day,v.value.ids))},null,8,["modelValue"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(r)("workSchedule.duration"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:y.value,"onUpdate:modelValue":l[15]||(l[15]=t=>y.value=t),step:1,min:4,max:12,onChange:l[16]||(l[16]=t=>Q(v.value.day,v.value.ids))},null,8,["modelValue"]),e.createVNode(e.unref(i.ElButton),{style:{"margin-top":".5rem"},size:"small",onClick:l[17]||(l[17]=t=>oe(v.value.day,v.value.ids))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.delete")),1)]),_:1})]))]),_:1},8,["show","options"])])}}};module.exports=Ce;
package/dist/WorkTable.js CHANGED
@@ -1,9 +1,9 @@
1
- import { ref as s, watch as ye, computed as Me, resolveComponent as Ne, resolveDirective as Ae, createElementBlock as A, openBlock as w, createElementVNode as k, createVNode as i, createCommentVNode as _, withDirectives as Te, createBlock as T, unref as a, withCtx as v, Fragment as ue, renderList as de, createTextVNode as $, toDisplayString as p, normalizeStyle as Be } from "vue";
1
+ import { ref as s, watch as ye, computed as Me, resolveComponent as Ne, resolveDirective as Ae, createElementBlock as A, openBlock as w, createElementVNode as k, createVNode as i, createCommentVNode as X, withDirectives as Te, createBlock as T, unref as a, withCtx as v, Fragment as ue, renderList as de, createTextVNode as $, toDisplayString as h, normalizeStyle as Be } from "vue";
2
2
  import { saveAs as ze } from "file-saver";
3
3
  import * as Fe from "exceljs";
4
4
  import { p as P, b as ie, h as Ye, a as fe, c as D } from "./index-D4ZMBdCa.js";
5
- import { useI18n as Ie } from "vue-i18n";
6
- import { ElSelect as Ue, ElOption as He, ElButton as M, ElSwitch as re, ElSkeleton as Re, ElTable as We, ElTableColumn as B, ElSkeletonItem as j, ElDialog as Pe, ElForm as je, ElFormItem as Le, ElRadioGroup as Oe, ElRadioButton as ve, ElSlider as L } from "element-plus";
5
+ import { useI18n as Ue } from "vue-i18n";
6
+ import { ElSelect as He, ElOption as Ie, ElButton as M, ElSwitch as re, ElSkeleton as Re, ElTable as We, ElTableColumn as B, ElSkeletonItem as j, ElDialog as Pe, ElForm as je, ElFormItem as Le, ElRadioGroup as Oe, ElRadioButton as ve, ElSlider as L } from "element-plus";
7
7
  import { ContextMenu as Ge, ContextMenuItem as Ze, ContextMenuSeparator as qe } from "@imengyu/vue3-context-menu";
8
8
  const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "100px", width: "100%", display: "inline-block" } }, Xe = ["innerHTML"], _e = {
9
9
  key: 0,
@@ -24,7 +24,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
24
24
  fullName: { type: String, default: "Вы" }
25
25
  },
26
26
  setup(z) {
27
- const { t: d, d: O } = Ie(), S = z, G = s(!1), n = s([
27
+ const { t: d, d: O } = Ue(), S = z, G = 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,52 +37,52 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
37
37
  // code: '0000-00052'
38
38
  // ids: 1
39
39
  // }
40
- ]), ee = s((/* @__PURE__ */ new Date()).getMonth() + 1), se = s(!1), F = s([]), f = s(new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth(), 1)), u = s([]), Y = s(0), b = s(9), C = s(8), Z = s(!1), ge = s(!0), I = s(!1), le = s("5"), U = s(1), V = s(""), te = s([]), E = s([]), q = s([]), m = s({ name: "Имя", length: 0, code: "" }), J = s(!1), ae = s({
40
+ ]), _ = s((/* @__PURE__ */ new Date()).getMonth() + 1), ee = s(!1), F = s([]), f = s(new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth(), 1)), u = s([]), Y = s(0), b = s(9), C = s(8), Z = s(!1), se = s(!0), U = s(!1), le = s("5"), H = s(1), V = s(""), te = s([]), E = s([]), q = s([]), m = s({ name: "Имя", length: 0, code: "" }), J = s(!1), ae = s({
41
41
  zIndex: 30,
42
42
  minWidth: 220,
43
43
  x: 500,
44
44
  y: 200
45
- }), me = s({}), H = s("100%");
45
+ }), ge = s({}), I = s("100%");
46
46
  ye(V, async (t, e) => {
47
47
  t !== e && (E.value = [], Z.value = !1, S.odata.personal.forEach((o) => {
48
48
  o.divisionName === t && (E.value.some((r) => (r == null ? void 0 : r.activeText) === o.roleName) || E.value.push({ val: !0, activeText: o.roleName }));
49
49
  }), ne());
50
- }), ye(ee, async (t) => {
50
+ }), ye(_, async (t) => {
51
51
  let e = (/* @__PURE__ */ new Date()).getMonth(), o = t === null ? e : t - 1;
52
- o = e - 1 <= o ? o : o + 12, f.value = new Date((/* @__PURE__ */ new Date()).getFullYear(), o, 1), he();
52
+ o = e - 1 <= o ? o : o + 12, f.value = new Date((/* @__PURE__ */ new Date()).getFullYear(), o, 1), me();
53
53
  });
54
54
  const we = (t, e, o, r) => {
55
55
  m.value.ids = t.ids, m.value.key = t.key, m.value.add = t.days.length > 0 && t.days[t.days.length - 1].cont, m.value.level = e.level, m.value.day = o.cellIndex, ae.value.y = r.clientY, ae.value.x = r.clientX, e.level === 2 && e.no === 0 && S.checkEdit && (m.value.name = d("workSchedule.autocomplete"), J.value = !0), e.level === 3 && o.cellIndex - e.no === 1 && S.checkEdit && (N(o.cellIndex, t.ids), m.value.name = d("workSchedule.modeSelection"), J.value = !0);
56
- }, ke = ({ row: t, column: e, rowIndex: o, columnIndex: r }) => {
57
- if (!F.value || F.value.length === 0) return "";
58
- const l = new Date(new Date(f.value).getFullYear(), new Date(f.value).getMonth(), r).getTime();
59
- for (let g of F.value) {
60
- const { dateStart: y, dateEnd: h, code: x } = g;
61
- if (y && h && x === t.code) {
62
- const Q = new Date(fe(y)).getTime(), c = new Date(fe(h)).getTime();
63
- if (l >= Q && l <= c) return "vacation";
56
+ }, ke = ({ row: t, columnIndex: e }) => {
57
+ if (!F.value || F.value.length === 0 || !ee) return "";
58
+ const o = new Date(new Date(f.value).getFullYear(), new Date(f.value).getMonth(), e).getTime();
59
+ for (let r of F.value) {
60
+ const { dateStart: l, dateEnd: g, code: p } = r;
61
+ if (l && g && p === t.code && e !== 0) {
62
+ const c = new Date(fe(l)).getTime(), x = new Date(fe(g)).getTime();
63
+ if (o >= c && o <= x) return "vacation";
64
64
  }
65
65
  }
66
- return "test";
67
- }, he = () => {
68
- const t = me.value, e = new Date(f.value), o = new Date(e.getFullYear(), e.getMonth() + 1, 0).getDate();
66
+ return "";
67
+ }, me = () => {
68
+ const t = ge.value, e = new Date(f.value), o = new Date(e.getFullYear(), e.getMonth() + 1, 0).getDate();
69
69
  let r = [], l = 0;
70
70
  for (let g = 1; g <= o; g++) {
71
- const y = P(e.setDate(g), "{Y}-{m}-{dd}");
72
- l += t.nowork.includes(y) || t.holidays.includes(y) ? 0 : t.preholidays.includes(y) ? 7 : 8;
73
- const h = t.nowork.includes(y) ? "nowork" : t.holidays.includes(y) ? "holiday" : t.preholidays.includes(y) ? "preholiday" : "";
74
- r.push({ day: g, holidays: h, weekday: O(new Date(e.getFullYear(), e.getMonth(), g), "day") });
71
+ const p = P(e.setDate(g), "{Y}-{m}-{dd}");
72
+ l += t.nowork.includes(p) || t.holidays.includes(p) ? 0 : t.preholidays.includes(p) ? 7 : 8;
73
+ const c = t.nowork.includes(p) ? "nowork" : t.holidays.includes(p) ? "holiday" : t.preholidays.includes(p) ? "preholiday" : "";
74
+ r.push({ day: g, holidays: c, weekday: O(new Date(e.getFullYear(), e.getMonth(), g), "day") });
75
75
  }
76
76
  Y.value = l, u.value = r, S.odata.getPersonal({}).then((g) => {
77
- var y;
78
- V.value.length === 0 && (V.value = (y = g.find((h) => h.employeeName === S.fullName)) == null ? void 0 : y.divisionName), g.forEach((h) => {
79
- te.value.some((x) => (x == null ? void 0 : x.value) === h.divisionName) || te.value.push({ value: h.divisionName, label: h.divisionName, key: h.divisionName }), h.divisionName === V.value && !E.value.some((x) => (x == null ? void 0 : x.activeText) === h.roleName) && E.value.push({ val: !0, activeText: h.roleName });
80
- }), ne(), ge.value = !1;
77
+ var p;
78
+ V.value.length === 0 && (V.value = (p = g.find((c) => c.employeeName === S.fullName)) == null ? void 0 : p.divisionName), g.forEach((c) => {
79
+ te.value.some((x) => (x == null ? void 0 : x.value) === c.divisionName) || te.value.push({ value: c.divisionName, label: c.divisionName, key: c.divisionName }), c.divisionName === V.value && !E.value.some((x) => (x == null ? void 0 : x.activeText) === c.roleName) && E.value.push({ val: !0, activeText: c.roleName });
80
+ }), ne(), se.value = !1;
81
81
  });
82
- }, Ce = Me(() => !n.value.some((t) => t.contHour !== Y.value)), ce = (t, e) => {
83
- var g, y, h;
82
+ }, Ce = Me(() => !n.value.some((t) => t.contHour !== Y.value)), he = (t, e) => {
83
+ var g, p, c;
84
84
  const o = new Date(f.value), r = `${o.getFullYear()}-${(o.getMonth() + 1).toString().padStart(2, "0")}-${t.toString().padStart(2, "0")}`, l = (g = n.value[e]) == null ? void 0 : g.days.findIndex((x) => x.day === r);
85
- return e === -1 || l === -1 ? "" : ((y = n.value[e].days[l]) == null ? void 0 : y.tips) + "<br>" + ((h = n.value[e].days[l]) == null ? void 0 : h.time);
85
+ return e === -1 || l === -1 ? "" : ((p = n.value[e].days[l]) == null ? void 0 : p.tips) + "<br>" + ((c = n.value[e].days[l]) == null ? void 0 : c.time);
86
86
  }, ne = () => {
87
87
  n.value = [], q.value = [], F.value = [], S.odata.personal.forEach((t) => {
88
88
  if (t.divisionName === V.value && E.value.some((e) => e.val && e.activeText === t.roleName)) {
@@ -92,7 +92,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
92
92
  }), S.workSchedule.getUsersYear({ code: q.value, year: new Date(f.value).getFullYear() }).then((t) => {
93
93
  t.forEach((e) => {
94
94
  e.dateStart && F.value.push({ code: e.code, dateStart: e.dateStart, dateEnd: e.dateEnd });
95
- }), console.log(t), xe(), I.value = !1;
95
+ }), console.log(t), xe(), U.value = !1;
96
96
  });
97
97
  }, xe = () => {
98
98
  S.workSchedule.getWorkSchedule({ code: q.value, date: P(new Date(f.value), "{Y}-{m}-{dd}") }).then(
@@ -111,15 +111,15 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
111
111
  }, $e = (t) => {
112
112
  switch (le.value) {
113
113
  case "5":
114
- for (let e = U.value; e <= u.value.length; e++)
114
+ for (let e = H.value; e <= u.value.length; e++)
115
115
  u.value[e - 1].holidays === "" && N(e, t, !0), u.value[e - 1].holidays === "preholiday" && (C.value -= 1, N(e, t, !0), C.value += 1);
116
116
  break;
117
117
  case "2x2":
118
- for (let e = U.value; e <= u.value.length; e += 4)
118
+ for (let e = H.value; e <= u.value.length; e += 4)
119
119
  N(e, t, !0), e + 1 <= u.value.length && N(e + 1, t, !0);
120
120
  break;
121
121
  case "2x5":
122
- for (let e = U.value; e <= u.value.length; e += 7)
122
+ for (let e = H.value; e <= u.value.length; e += 7)
123
123
  for (let o = e; o < e + 5 && o <= u.value.length; o++)
124
124
  u.value[o - 1].holidays === "preholiday" ? (C.value -= 1, N(o, t, !0), C.value += 1) : N(o, t, !0);
125
125
  break;
@@ -134,7 +134,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
134
134
  }, be = (t, e) => {
135
135
  const { ind: o } = K(t, e);
136
136
  n.value[e].days.splice(o, 1), R(), document.querySelector(".app-main").click();
137
- }, pe = (t, e) => {
137
+ }, ce = (t, e) => {
138
138
  const { date: o, ind: r } = K(t, e);
139
139
  n.value[e].days[r] = {
140
140
  day: o,
@@ -146,41 +146,41 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
146
146
  const o = P(new Date(f.value).setDate(t), "{Y}-{m}-{dd}"), r = (l = n.value[e]) == null ? void 0 : l.days.findIndex((g) => g.day === o);
147
147
  return { date: o, ind: r };
148
148
  }, Ve = async () => {
149
- var Q;
149
+ var pe;
150
150
  G.value = !0;
151
151
  const t = new Fe.Workbook(), e = t.addWorksheet(O(f.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 };
152
152
  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 }) + O(f.value, "month") + ` ${new Date(f.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")} (${Y.value})`;
153
- for (let c = 2; c <= u.value.length + 1; c++)
154
- e.getCell(4, c).value = u.value[c - 2].weekday + `
155
- ` + (c - 1), e.getColumn(c).width = 6, e.getColumn(c).alignment = l, e.getCell(4, c).border = r;
153
+ for (let y = 2; y <= u.value.length + 1; y++)
154
+ e.getCell(4, y).value = u.value[y - 2].weekday + `
155
+ ` + (y - 1), e.getColumn(y).width = 6, e.getColumn(y).alignment = l, e.getCell(4, y).border = r;
156
156
  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;
157
157
  let g = 0;
158
- for (const c of n.value) {
159
- let X = [c.name];
158
+ for (const y of n.value) {
159
+ let Q = [y.name];
160
160
  for (let W = 1; W <= u.value.length; W++) {
161
161
  const { ind: oe } = K(W, g);
162
- oe !== -1 ? X[W] = `${c.days[oe].time} ${c.days[oe].tips}` : X[W] = " ";
162
+ oe !== -1 ? Q[W] = `${y.days[oe].time} ${y.days[oe].tips}` : Q[W] = " ";
163
163
  }
164
- X.push(((Q = c.days) == null ? void 0 : Q.length) || " ", c.contHour || 0);
165
- const Ee = e.addRow(X);
164
+ Q.push(((pe = y.days) == null ? void 0 : pe.length) || " ", y.contHour || 0);
165
+ const Ee = e.addRow(Q);
166
166
  Ee.border = r, g++;
167
167
  }
168
- let y = "Щербина Е. В.";
169
- S.odata.personal.forEach((c) => {
170
- c.roleName === "Начальник отдела правовой и кадровой работы" && (y = c.employeeName);
171
- }), 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 = ie(S.fullName), e.getCell(`AD${n.value.length + 8}`).value = ie(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" } };
172
- const h = "export_" + P(Date.now(), "{dd}.{m}.{Y}") + ".xlsx", x = await t.xlsx.writeBuffer();
173
- ze(new Blob([x]), h), G.value = !1;
168
+ let p = "Щербина Е. В.";
169
+ S.odata.personal.forEach((y) => {
170
+ y.roleName === "Начальник отдела правовой и кадровой работы" && (p = y.employeeName);
171
+ }), 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 = ie(S.fullName), e.getCell(`AD${n.value.length + 8}`).value = ie(p), 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" } };
172
+ const c = "export_" + P(Date.now(), "{dd}.{m}.{Y}") + ".xlsx", x = await t.xlsx.writeBuffer();
173
+ ze(new Blob([x]), c), G.value = !1;
174
174
  }, De = async () => {
175
175
  Z.value || S.workSchedule.addWorkSchedule({ data: n.value, date: P(new Date(f.value), "{Y}-{m}-{dd}") }).then((t) => Z.value = t);
176
176
  };
177
177
  return Ye().then((t) => {
178
- me.value = t, he();
178
+ ge.value = t, me();
179
179
  }), (t, e) => {
180
180
  const o = Ne("el-date-picker"), r = Ae("loading");
181
181
  return w(), A("div", Je, [
182
182
  k("div", Ke, [
183
- z.checkEdit ? (w(), T(a(Ue), {
183
+ z.checkEdit ? (w(), T(a(He), {
184
184
  key: 0,
185
185
  modelValue: V.value,
186
186
  "onUpdate:modelValue": e[0] || (e[0] = (l) => V.value = l),
@@ -188,27 +188,27 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
188
188
  style: { width: "240px" }
189
189
  }, {
190
190
  default: v(() => [
191
- (w(!0), A(ue, null, de(te.value, (l) => (w(), T(a(He), {
191
+ (w(!0), A(ue, null, de(te.value, (l) => (w(), T(a(Ie), {
192
192
  key: l.value,
193
193
  label: l.label,
194
194
  value: l.value
195
195
  }, null, 8, ["label", "value"]))), 128))
196
196
  ]),
197
197
  _: 1
198
- }, 8, ["modelValue"])) : _("", !0),
198
+ }, 8, ["modelValue"])) : X("", !0),
199
199
  z.checkEdit ? (w(), T(a(M), {
200
200
  key: 1,
201
201
  plain: "",
202
- onClick: e[1] || (e[1] = (l) => I.value = !0)
202
+ onClick: e[1] || (e[1] = (l) => U.value = !0)
203
203
  }, {
204
204
  default: v(() => [
205
- $(p(a(d)("workSchedule.jobTitle")), 1)
205
+ $(h(a(d)("workSchedule.jobTitle")), 1)
206
206
  ]),
207
207
  _: 1
208
- })) : _("", !0),
208
+ })) : X("", !0),
209
209
  i(o, {
210
- modelValue: ee.value,
211
- "onUpdate:modelValue": e[2] || (e[2] = (l) => ee.value = l),
210
+ modelValue: _.value,
211
+ "onUpdate:modelValue": e[2] || (e[2] = (l) => _.value = l),
212
212
  type: "month",
213
213
  placeholder: "Выберите месяц",
214
214
  format: "MMM",
@@ -216,15 +216,15 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
216
216
  }, null, 8, ["modelValue"]),
217
217
  e[19] || (e[19] = k("div", { class: "expander" }, null, -1)),
218
218
  i(a(re), {
219
- modelValue: H.value,
220
- "onUpdate:modelValue": e[3] || (e[3] = (l) => H.value = l),
219
+ modelValue: I.value,
220
+ "onUpdate:modelValue": e[3] || (e[3] = (l) => I.value = l),
221
221
  "active-text": t.$t("bids.currentHeight"),
222
222
  "active-value": "100%",
223
223
  "inactive-value": "calc(100vh - var(--el-component-size)*4 - var(--el-main-padding)*2 - var(--header-height))"
224
224
  }, null, 8, ["modelValue", "active-text"]),
225
225
  i(a(re), {
226
- modelValue: se.value,
227
- "onUpdate:modelValue": e[4] || (e[4] = (l) => se.value = l),
226
+ modelValue: ee.value,
227
+ "onUpdate:modelValue": e[4] || (e[4] = (l) => ee.value = l),
228
228
  "active-text": "Отпуска",
229
229
  "active-value": !0,
230
230
  "inactive-value": !1
@@ -232,7 +232,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
232
232
  ]),
233
233
  i(a(Re), {
234
234
  style: { width: "100%" },
235
- loading: ge.value,
235
+ loading: se.value,
236
236
  animated: ""
237
237
  }, {
238
238
  template: v(() => [
@@ -262,7 +262,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
262
262
  id: "printTable",
263
263
  data: n.value,
264
264
  style: { width: "100%" },
265
- "max-height": H.value,
265
+ "max-height": I.value,
266
266
  size: "small",
267
267
  align: "center",
268
268
  onCellClick: we,
@@ -280,10 +280,10 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
280
280
  label: a(d)("workSchedule.month"),
281
281
  width: "180",
282
282
  align: "center",
283
- fixed: H.value !== "100%"
283
+ fixed: I.value !== "100%"
284
284
  }, {
285
285
  default: v((l) => [
286
- k("div", Qe, p(n.value[l.$index].name), 1)
286
+ k("div", Qe, h(n.value[l.$index].name), 1)
287
287
  ]),
288
288
  _: 1
289
289
  }, 8, ["label", "fixed"]),
@@ -304,7 +304,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
304
304
  default: v((g) => [
305
305
  k("div", {
306
306
  style: { height: "100px", width: "100%", display: "inline-block" },
307
- innerHTML: ce(l.day, g.$index) || " "
307
+ innerHTML: he(l.day, g.$index) || " "
308
308
  }, null, 8, Xe)
309
309
  ]),
310
310
  _: 2
@@ -315,7 +315,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
315
315
  i(a(B), {
316
316
  label: a(d)("workSchedule.onSchedule"),
317
317
  align: "center",
318
- fixed: H.value !== "100%" ? "right" : !1
318
+ fixed: I.value !== "100%" ? "right" : !1
319
319
  }, {
320
320
  default: v(() => [
321
321
  i(a(B), {
@@ -323,7 +323,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
323
323
  align: "center"
324
324
  }, {
325
325
  default: v((l) => [
326
- $(p(n.value[l.$index].days.length || 0), 1)
326
+ $(h(n.value[l.$index].days.length || 0), 1)
327
327
  ]),
328
328
  _: 1
329
329
  }, 8, ["label"]),
@@ -334,7 +334,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
334
334
  default: v((l) => [
335
335
  k("div", {
336
336
  style: Be(`color: ${Y.value === l.row.contHour ? "green" : "red"};`)
337
- }, p(l.row.contHour), 5)
337
+ }, h(l.row.contHour), 5)
338
338
  ]),
339
339
  _: 1
340
340
  }, 8, ["label"])
@@ -351,20 +351,20 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
351
351
  _: 1
352
352
  }, 8, ["loading"]),
353
353
  Ce.value && z.checkEdit ? (w(), A("div", _e, [
354
- $(p(a(d)("workSchedule.chartsFilled")) + ": ", 1),
355
- Z.value ? _("", !0) : (w(), T(a(M), {
354
+ $(h(a(d)("workSchedule.chartsFilled")) + ": ", 1),
355
+ Z.value ? X("", !0) : (w(), T(a(M), {
356
356
  key: 0,
357
357
  type: "primary",
358
358
  onClick: De
359
359
  }, {
360
360
  default: v(() => [
361
- $(p(a(d)("workSchedule.confirm")), 1)
361
+ $(h(a(d)("workSchedule.confirm")), 1)
362
362
  ]),
363
363
  _: 1
364
364
  })),
365
365
  e[20] || (e[20] = $()),
366
- k("span", null, p(z.fullName), 1)
367
- ])) : _("", !0),
366
+ k("span", null, h(z.fullName), 1)
367
+ ])) : X("", !0),
368
368
  Te((w(), T(a(M), {
369
369
  disabled: G.value,
370
370
  plain: "",
@@ -372,7 +372,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
372
372
  style: { "margin-top": ".5rem" }
373
373
  }, {
374
374
  default: v(() => [
375
- $(p(a(d)("workSchedule.exportExcel")), 1)
375
+ $(h(a(d)("workSchedule.exportExcel")), 1)
376
376
  ]),
377
377
  _: 1
378
378
  }, 8, ["disabled"])), [
@@ -380,17 +380,17 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
380
380
  ]),
381
381
  i(a(Pe), {
382
382
  title: a(d)("workSchedule.jobTitle"),
383
- modelValue: I.value,
384
- "onUpdate:modelValue": e[6] || (e[6] = (l) => I.value = l),
383
+ modelValue: U.value,
384
+ "onUpdate:modelValue": e[6] || (e[6] = (l) => U.value = l),
385
385
  width: "400px"
386
386
  }, {
387
387
  footer: v(() => [
388
388
  i(a(M), {
389
- onClick: e[5] || (e[5] = (l) => I.value = !1),
389
+ onClick: e[5] || (e[5] = (l) => U.value = !1),
390
390
  size: "default"
391
391
  }, {
392
392
  default: v(() => [
393
- $(p(t.$t("workSchedule.cancel")), 1)
393
+ $(h(t.$t("workSchedule.cancel")), 1)
394
394
  ]),
395
395
  _: 1
396
396
  }),
@@ -400,7 +400,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
400
400
  onClick: ne
401
401
  }, {
402
402
  default: v(() => [
403
- $(p(t.$t("workSchedule.select")), 1)
403
+ $(h(t.$t("workSchedule.select")), 1)
404
404
  ]),
405
405
  _: 1
406
406
  })
@@ -462,15 +462,15 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
462
462
  _: 1
463
463
  }, 8, ["modelValue"]),
464
464
  e[21] || (e[21] = k("br", null, null, -1)),
465
- k("span", null, p(a(d)("workSchedule.fromDate")) + ":", 1),
465
+ k("span", null, h(a(d)("workSchedule.fromDate")) + ":", 1),
466
466
  i(a(L), {
467
- modelValue: U.value,
468
- "onUpdate:modelValue": e[8] || (e[8] = (l) => U.value = l),
467
+ modelValue: H.value,
468
+ "onUpdate:modelValue": e[8] || (e[8] = (l) => H.value = l),
469
469
  step: 1,
470
470
  min: 1,
471
471
  max: u.value.length
472
472
  }, null, 8, ["modelValue", "max"]),
473
- k("span", null, p(a(d)("workSchedule.with")) + ":", 1),
473
+ k("span", null, h(a(d)("workSchedule.with")) + ":", 1),
474
474
  i(a(L), {
475
475
  modelValue: b.value,
476
476
  "onUpdate:modelValue": e[9] || (e[9] = (l) => b.value = l),
@@ -478,7 +478,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
478
478
  min: 8,
479
479
  max: 11
480
480
  }, null, 8, ["modelValue"]),
481
- k("span", null, p(a(d)("workSchedule.duration")) + ":", 1),
481
+ k("span", null, h(a(d)("workSchedule.duration")) + ":", 1),
482
482
  i(a(L), {
483
483
  modelValue: C.value,
484
484
  "onUpdate:modelValue": e[10] || (e[10] = (l) => C.value = l),
@@ -492,7 +492,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
492
492
  onClick: e[11] || (e[11] = (l) => $e(m.value.ids))
493
493
  }, {
494
494
  default: v(() => [
495
- $(p(a(d)("workSchedule.fillOut")), 1)
495
+ $(h(a(d)("workSchedule.fillOut")), 1)
496
496
  ]),
497
497
  _: 1
498
498
  }),
@@ -502,30 +502,30 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
502
502
  onClick: e[12] || (e[12] = (l) => Se(m.value.ids))
503
503
  }, {
504
504
  default: v(() => [
505
- $(p(a(d)("workSchedule.clearRow")), 1)
505
+ $(h(a(d)("workSchedule.clearRow")), 1)
506
506
  ]),
507
507
  _: 1
508
508
  })
509
509
  ])) : (w(), A("div", ll, [
510
- k("div", null, p(ce(m.value.day, m.value.ids)), 1),
510
+ k("div", null, h(he(m.value.day, m.value.ids)), 1),
511
511
  e[22] || (e[22] = k("br", null, null, -1)),
512
- k("span", null, p(a(d)("workSchedule.with")) + ":", 1),
512
+ k("span", null, h(a(d)("workSchedule.with")) + ":", 1),
513
513
  i(a(L), {
514
514
  modelValue: b.value,
515
515
  "onUpdate:modelValue": e[13] || (e[13] = (l) => b.value = l),
516
516
  step: 1,
517
517
  min: 8,
518
518
  max: 11,
519
- onChange: e[14] || (e[14] = (l) => pe(m.value.day, m.value.ids))
519
+ onChange: e[14] || (e[14] = (l) => ce(m.value.day, m.value.ids))
520
520
  }, null, 8, ["modelValue"]),
521
- k("span", null, p(a(d)("workSchedule.duration")) + ":", 1),
521
+ k("span", null, h(a(d)("workSchedule.duration")) + ":", 1),
522
522
  i(a(L), {
523
523
  modelValue: C.value,
524
524
  "onUpdate:modelValue": e[15] || (e[15] = (l) => C.value = l),
525
525
  step: 1,
526
526
  min: 4,
527
527
  max: 12,
528
- onChange: e[16] || (e[16] = (l) => pe(m.value.day, m.value.ids))
528
+ onChange: e[16] || (e[16] = (l) => ce(m.value.day, m.value.ids))
529
529
  }, null, 8, ["modelValue"]),
530
530
  i(a(M), {
531
531
  style: { "margin-top": ".5rem" },
@@ -533,7 +533,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
533
533
  onClick: e[17] || (e[17] = (l) => be(m.value.day, m.value.ids))
534
534
  }, {
535
535
  default: v(() => [
536
- $(p(a(d)("workSchedule.delete")), 1)
536
+ $(h(a(d)("workSchedule.delete")), 1)
537
537
  ]),
538
538
  _: 1
539
539
  })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@studio-west/employees",
3
- "version": "0.5.46",
3
+ "version": "0.5.47",
4
4
  "files": [
5
5
  "dist"
6
6
  ],