@studio-west/employees 0.6.2 → 0.6.3

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"),G=require("@imengyu/vue3-context-menu");function ve(w){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(w){for(const S in w)if(S!=="default"){const f=Object.getOwnPropertyDescriptor(w,S);Object.defineProperty(r,S,f.get?f:{enumerable:!0,get:()=>w[S]})}}return r.default=w,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:"Вы"},group:String},setup(w){const{t:r,d:S}=ce.useI18n(),f=w,z=e.ref(!1),n=e.ref([]),R=e.ref(new Date().getMonth()+1),j=e.ref(!1),E=e.ref([]),p=e.ref(new Date(new Date().getFullYear(),new Date().getMonth(),1)),u=e.ref([]),D=e.ref(0),C=e.ref(9),y=e.ref(8),F=e.ref(!1),J=e.ref(!0),$=e.ref(!1),q=e.ref("5"),B=e.ref(1),k=e.ref(""),O=e.ref([]),V=e.ref([]),I=e.ref([]),v=e.ref({name:"Имя",length:0,code:""}),Y=e.ref(!1),P=e.ref({zIndex:30,minWidth:220,x:500,y:200}),Z=e.ref({}),T=e.ref("100%");e.watch(k,async(a,l)=>{a!==l&&(V.value=[],F.value=!1,f.odata.personal.forEach(o=>{o.divisionName===a&&(V.value.some(d=>(d==null?void 0:d.activeText)===o.roleName)||V.value.push({val:!0,activeText:o.roleName}))}),W())}),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,P.value.y=d.clientY,P.value.x=d.clientX,l.level===2&&l.no===0&&f.checkEdit&&(v.value.name=r("workSchedule.autocomplete"),Y.value=!0),l.level===3&&o.cellIndex-l.no===1&&f.checkEdit&&(N(o.cellIndex,a.ids),v.value.name=r("workSchedule.modeSelection"),Y.value=!0)},ee=({row:a,columnIndex:l})=>{if(!E.value||E.value.length===0||!j.value)return"";const o=new Date(new Date(p.value).getFullYear(),new Date(p.value).getMonth(),l).getTime()+1e3;for(let d of E.value){const{dateStart:t,dateEnd:s,code:m}=d;if(t&&s&&m===a.code&&l!==0&&l<=u.value.length){const g=new Date(c.parseDate(t)).getTime(),b=new Date(c.parseDate(s)).getTime();if(o>=g&&o<=b)return"vacation"}}return""},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 m=c.parseTime(l.setDate(s),"{Y}-{m}-{dd}");t+=a.nowork.includes(m)||a.holidays.includes(m)?0:a.preholidays.includes(m)?7:8;const g=a.nowork.includes(m)?"nowork":a.holidays.includes(m)?"holiday":a.preholidays.includes(m)?"preholiday":"";d.push({day:s,holidays:g,weekday:S(new Date(l.getFullYear(),l.getMonth(),s),"day")})}D.value=t,u.value=d,f.odata.getPersonal({}).then(s=>{var m;k.value.length===0&&(k.value=(m=s.find(g=>g.employeeName===f.fullName))==null?void 0:m.divisionName),s.forEach((g,b)=>{O.value.some(x=>(x==null?void 0:x.value)===g.divisionName)||O.value.push({value:g.divisionName,label:g.divisionName,key:b}),g.divisionName===k.value&&!V.value.some(x=>(x==null?void 0:x.activeText)===g.roleName)&&V.value.push({val:!0,activeText:g.roleName})}),W(),J.value=!1})},le=e.computed(()=>!n.value.some(a=>a.contHour!==D.value)),Q=(a,l)=>{var s,m,g;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(b=>b.day===d);return l===-1||t===-1?"":((m=n.value[l].days[t])==null?void 0:m.tips)+"<br>"+((g=n.value[l].days[t])==null?void 0:g.time)},W=()=>{n.value=[],I.value=[],E.value=[],f.odata.personal.forEach(a=>{if(a.divisionName===k.value&&V.value.some(l=>l.val&&l.activeText===a.roleName)){let l=c.byInitials(a.employeeName);I.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:I.value,year:new Date(p.value).getFullYear()}).then(a=>{a.forEach(l=>{l.dateStart&&E.value.push({code:l.code,dateStart:l.dateStart,dateEnd:l.dateEnd})}),console.log(a),te(),$.value=!1})},te=()=>{f.workSchedule.getWorkSchedule({code:I.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)}),M()})},M=()=>{n.value.forEach(a=>{a.contHour=a.days.reduce((l,o)=>l+o.time,0)})},ae=a=>{n.value[a].days=[],M()},ne=a=>{switch(q.value){case"5":for(let l=B.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=B.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=B.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}=U(a,l);t===-1?(n.value[l].days.push({day:d,time:y.value,tips:`(${C.value}:00 - ${C.value+y.value+1}:00)`}),M()):o||(y.value=n.value[l].days[t].time,C.value=parseInt(n.value[l].days[t].tips.slice(1,-12)))},oe=(a,l)=>{const{ind:o}=U(a,l);n.value[l].days.splice(o,1),M(),document.querySelector(".app-main").click()},X=(a,l)=>{const{date:o,ind:d}=U(a,l);n.value[l].days[d]={day:o,time:y.value,tips:`(${C.value}:00 - ${C.value+y.value+1}:00)`},M()},U=(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;z.value=!0;const a=new me.Workbook,l=a.addWorksheet(S(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:k.value})+S(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")} (${D.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 H=[h.name];for(let A=1;A<=u.value.length;A++){const{ind:L}=U(A,s);L!==-1?H[A]=`${h.days[L].time} ${h.days[L].tips}`:H[A]=" "}H.push(((x=h.days)==null?void 0:x.length)||" ",h.contHour||0);const ie=l.addRow(H);ie.border=d,s++}let m="Щербина Е. В.";f.odata.personal.forEach(h=>{h.roleName==="Начальник отдела правовой и кадровой работы"&&(m=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(m),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_"+c.parseTime(Date.now(),"{dd}.{m}.{Y}")+".xlsx",b=await a.xlsx.writeBuffer();de.saveAs(new Blob([b]),g),z.value=!1},re=async()=>{F.value||f.workSchedule.addWorkSchedule({data:n.value,date:c.parseTime(new Date(p.value),"{Y}-{m}-{dd}"),group:k.value}).then(a=>F.value=a)};return f.group&&(k.value=f.group),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,[w.checkEdit?(e.openBlock(),e.createBlock(e.unref(i.ElSelect),{key:0,modelValue:k.value,"onUpdate:modelValue":l[0]||(l[0]=t=>k.value=t),placeholder:"Select",style:{width:"240px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(O.value,t=>(e.openBlock(),e.createBlock(e.unref(i.ElOption),{key:t.key,label:t.label,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])):e.createCommentVNode("",!0),w.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(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:T.value,"onUpdate:modelValue":l[3]||(l[3]=t=>T.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:j.value,"onUpdate:modelValue":l[4]||(l[4]=t=>j.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":T.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:k.value})+e.unref(S)(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:T.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:T.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")} ( ${D.value} )`,align:"center"},{default:e.withCtx(t=>[e.createElementVNode("div",{style:e.normalizeStyle(`color: ${D.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&&w.checkEdit?(e.openBlock(),e.createElementBlock("div",ye,[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.chartsFilled"))+": ",1),F.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(w.fullName),1)])):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(e.unref(i.ElButton),{disabled:z.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,z.value]]),e.createVNode(e.unref(i.ElDialog),{title:e.unref(r)("workSchedule.jobTitle"),modelValue:$.value,"onUpdate:modelValue":l[6]||(l[6]=t=>$.value=t),width:"400px"},{footer:e.withCtx(()=>[e.createVNode(e.unref(i.ElButton),{onClick:l[5]||(l[5]=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:W},{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:V.value,autocomplete:"on"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.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(G.ContextMenu),{show:Y.value,"onUpdate:show":l[18]||(l[18]=t=>Y.value=t),options:P.value},{default:e.withCtx(()=>[e.createVNode(e.unref(G.ContextMenuItem),{label:v.value.name,disabled:""},null,8,["label"]),e.createVNode(e.unref(G.ContextMenuSeparator)),v.value.level===2?(e.openBlock(),e.createElementBlock("div",we,[e.createVNode(e.unref(i.ElRadioGroup),{modelValue:q.value,"onUpdate:modelValue":l[7]||(l[7]=t=>q.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:B.value,"onUpdate:modelValue":l[8]||(l[8]=t=>B.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:C.value,"onUpdate:modelValue":l[9]||(l[9]=t=>C.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:24-C.value},null,8,["modelValue","max"]),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:C.value,"onUpdate:modelValue":l[13]||(l[13]=t=>C.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"),G=require("@imengyu/vue3-context-menu");function ve(w){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(w){for(const S in w)if(S!=="default"){const f=Object.getOwnPropertyDescriptor(w,S);Object.defineProperty(r,S,f.get?f:{enumerable:!0,get:()=>w[S]})}}return r.default=w,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:"Вы"},group:String},setup(w){const{t:r,d:S}=ce.useI18n(),f=w,z=e.ref(!1),n=e.ref([]),R=e.ref(new Date().getMonth()+1),j=e.ref(!1),E=e.ref([]),p=e.ref(new Date(new Date().getFullYear(),new Date().getMonth(),1)),u=e.ref([]),D=e.ref(0),k=e.ref(9),y=e.ref(8),F=e.ref(!1),J=e.ref(!0),$=e.ref(!1),q=e.ref("5"),B=e.ref(1),C=e.ref(""),O=e.ref([]),V=e.ref([]),I=e.ref([]),v=e.ref({name:"Имя",length:0,code:""}),Y=e.ref(!1),P=e.ref({zIndex:30,minWidth:220,x:500,y:200}),Z=e.ref({}),T=e.ref("100%");e.watch(C,async(a,l)=>{a!==l&&(V.value=[],F.value=!1,f.odata.personal.forEach(o=>{o.divisionName===a&&(V.value.some(d=>(d==null?void 0:d.activeText)===o.roleName)||V.value.push({val:!0,activeText:o.roleName}))}),W())}),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,P.value.y=d.clientY,P.value.x=d.clientX,l.level===2&&l.no===0&&f.checkEdit&&(v.value.name=r("workSchedule.autocomplete"),Y.value=!0),l.level===3&&o.cellIndex-l.no===1&&f.checkEdit&&(N(o.cellIndex,a.ids),v.value.name=r("workSchedule.modeSelection"),Y.value=!0)},ee=({row:a,columnIndex:l})=>{if(!E.value||E.value.length===0||!j.value)return"";const o=new Date(new Date(p.value).getFullYear(),new Date(p.value).getMonth(),l).getTime()+1e3;for(let d of E.value){const{dateStart:t,dateEnd:s,code:m}=d;if(t&&s&&m===a.code&&l!==0&&l<=u.value.length){const g=new Date(c.parseDate(t)).getTime(),b=new Date(c.parseDate(s)).getTime();if(o>=g&&o<=b)return"vacation"}}return""},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 m=c.parseTime(l.setDate(s),"{Y}-{m}-{dd}");t+=a.nowork.includes(m)||a.holidays.includes(m)?0:a.preholidays.includes(m)?7:8;const g=a.nowork.includes(m)?"nowork":a.holidays.includes(m)?"holiday":a.preholidays.includes(m)?"preholiday":"";d.push({day:s,holidays:g,weekday:S(new Date(l.getFullYear(),l.getMonth(),s),"day")})}D.value=t,u.value=d,f.odata.getPersonal({}).then(s=>{var m;C.value.length===0&&(C.value=(m=s.find(g=>g.employeeName===f.fullName))==null?void 0:m.divisionName),s.forEach((g,b)=>{O.value.some(x=>(x==null?void 0:x.value)===g.divisionName)||O.value.push({value:g.divisionName,label:g.divisionName,key:b}),g.divisionName===C.value&&!V.value.some(x=>(x==null?void 0:x.activeText)===g.roleName)&&V.value.push({val:!0,activeText:g.roleName})}),W(),J.value=!1})},le=e.computed(()=>!n.value.some(a=>a.contHour!==D.value)),Q=(a,l)=>{var s,m,g;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(b=>b.day===d);return l===-1||t===-1?"":((m=n.value[l].days[t])==null?void 0:m.tips)+"<br>"+((g=n.value[l].days[t])==null?void 0:g.time)},W=()=>{n.value=[],I.value=[],E.value=[],f.odata.personal.forEach(a=>{if(a.divisionName===C.value&&V.value.some(l=>l.val&&l.activeText===a.roleName)){let l=c.byInitials(a.employeeName);I.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:I.value,year:new Date(p.value).getFullYear()}).then(a=>{a.forEach(l=>{l.dateStart&&E.value.push({code:l.code,dateStart:l.dateStart,dateEnd:l.dateEnd})}),console.log(a),te(),$.value=!1})},te=()=>{f.workSchedule.getWorkSchedule({code:I.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)}),M()})},M=()=>{n.value.forEach(a=>{a.contHour=a.days.reduce((l,o)=>l+o.time,0)})},ae=a=>{n.value[a].days=[],M()},ne=a=>{switch(q.value){case"5":for(let l=B.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=B.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=B.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}=U(a,l);t===-1?(n.value[l].days.push({day:d,time:y.value,tips:`(${k.value}:00 - ${k.value+y.value+1}:00)`}),M()):o||(y.value=n.value[l].days[t].time,k.value=parseInt(n.value[l].days[t].tips.slice(1,-12)))},oe=(a,l)=>{const{ind:o}=U(a,l);n.value[l].days.splice(o,1),M(),document.querySelector(".app-main").click()},X=(a,l)=>{const{date:o,ind:d}=U(a,l);n.value[l].days[d]={day:o,time:y.value,tips:`(${k.value}:00 - ${k.value+y.value+1}:00)`},M()},U=(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;z.value=!0;const a=new me.Workbook,l=a.addWorksheet(S(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:C.value})+S(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")} (${D.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 H=[h.name];for(let A=1;A<=u.value.length;A++){const{ind:L}=U(A,s);L!==-1?H[A]=`${h.days[L].time} ${h.days[L].tips}`:H[A]=" "}H.push(((x=h.days)==null?void 0:x.length)||" ",h.contHour||0);const ie=l.addRow(H);ie.border=d,s++}let m="Щербина Е. В.";f.odata.personal.forEach(h=>{h.roleName==="Начальник отдела правовой и кадровой работы"&&(m=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(m),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_"+c.parseTime(Date.now(),"{dd}.{m}.{Y}")+".xlsx",b=await a.xlsx.writeBuffer();de.saveAs(new Blob([b]),g),z.value=!1},re=async()=>{F.value||f.workSchedule.addWorkSchedule({data:n.value,date:c.parseTime(new Date(p.value),"{Y}-{m}-{dd}"),group:C.value}).then(a=>F.value=a)};return f.group&&(C.value=f.group),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,[w.checkEdit?(e.openBlock(),e.createBlock(e.unref(i.ElSelect),{key:0,modelValue:C.value,"onUpdate:modelValue":l[0]||(l[0]=t=>C.value=t),placeholder:"Select",style:{width:"240px"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(O.value,t=>(e.openBlock(),e.createBlock(e.unref(i.ElOption),{key:t.key,label:t.label,value:t.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])):e.createCommentVNode("",!0),w.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(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:T.value,"onUpdate:modelValue":l[3]||(l[3]=t=>T.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:j.value,"onUpdate:modelValue":l[4]||(l[4]=t=>j.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":T.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:C.value})+e.unref(S)(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:T.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:T.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")} ( ${D.value} )`,align:"center"},{default:e.withCtx(t=>[e.createElementVNode("div",{style:e.normalizeStyle(`color: ${D.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&&w.checkEdit?(e.openBlock(),e.createElementBlock("div",ye,[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.chartsFilled"))+": ",1),F.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(w.fullName),1)])):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(e.unref(i.ElButton),{disabled:z.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,z.value]]),e.createVNode(e.unref(i.ElDialog),{title:e.unref(r)("workSchedule.jobTitle"),modelValue:$.value,"onUpdate:modelValue":l[6]||(l[6]=t=>$.value=t),width:"400px"},{footer:e.withCtx(()=>[e.createVNode(e.unref(i.ElButton),{onClick:l[5]||(l[5]=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:W},{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:V.value,autocomplete:"on"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.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(G.ContextMenu),{show:Y.value,"onUpdate:show":l[18]||(l[18]=t=>Y.value=t),options:P.value},{default:e.withCtx(()=>[e.createVNode(e.unref(G.ContextMenuItem),{label:v.value.name,disabled:""},null,8,["label"]),e.createVNode(e.unref(G.ContextMenuSeparator)),v.value.level===2?(e.openBlock(),e.createElementBlock("div",we,[e.createVNode(e.unref(i.ElRadioGroup),{modelValue:q.value,"onUpdate:modelValue":l[7]||(l[7]=t=>q.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:B.value,"onUpdate:modelValue":l[8]||(l[8]=t=>B.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:k.value,"onUpdate:modelValue":l[9]||(l[9]=t=>k.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:24-k.value},null,8,["modelValue","max"]),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:k.value,"onUpdate:modelValue":l[13]||(l[13]=t=>k.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:24-k.value,onChange:l[16]||(l[16]=t=>X(v.value.day,v.value.ids))},null,8,["modelValue","max"]),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,4 +1,4 @@
1
- import { ref as s, watch as ye, computed as Me, resolveComponent as Ne, resolveDirective as Ae, createElementBlock as T, openBlock as w, createElementVNode as k, createVNode as i, createCommentVNode as _, withDirectives as Te, createBlock as B, unref as a, withCtx as v, Fragment as de, renderList as ie, createTextVNode as $, toDisplayString as h, normalizeStyle as Be } from "vue";
1
+ import { ref as s, watch as ye, computed as Me, resolveComponent as Ne, resolveDirective as Ae, createElementBlock as T, openBlock as w, createElementVNode as k, createVNode as i, createCommentVNode as _, withDirectives as Te, createBlock as B, unref as a, withCtx as v, Fragment as de, renderList as ie, createTextVNode as b, 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 j, b as re, h as Ye, a as fe, c as D } from "./index-D4ZMBdCa.js";
@@ -38,13 +38,13 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
38
38
  // code: '0000-00052'
39
39
  // ids: 1
40
40
  // }
41
- ]), ee = s((/* @__PURE__ */ new Date()).getMonth() + 1), le = s(!1), Y = s([]), f = s(new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth(), 1)), u = s([]), U = s(0), b = s(9), x = s(8), q = s(!1), ge = s(!0), H = s(!1), te = s("5"), I = s(1), S = s(""), ae = s([]), E = s([]), J = s([]), m = s({ name: "Имя", length: 0, code: "" }), K = s(!1), ne = s({
41
+ ]), ee = s((/* @__PURE__ */ new Date()).getMonth() + 1), le = s(!1), Y = s([]), f = s(new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth(), 1)), u = s([]), U = s(0), S = s(9), x = s(8), q = s(!1), ge = s(!0), H = s(!1), te = s("5"), I = s(1), $ = s(""), ae = s([]), E = s([]), J = s([]), m = s({ name: "Имя", length: 0, code: "" }), K = s(!1), ne = s({
42
42
  zIndex: 30,
43
43
  minWidth: 220,
44
44
  x: 500,
45
45
  y: 200
46
46
  }), me = s({}), R = s("100%");
47
- ye(S, async (t, e) => {
47
+ ye($, async (t, e) => {
48
48
  t !== e && (E.value = [], q.value = !1, C.odata.personal.forEach((o) => {
49
49
  o.divisionName === t && (E.value.some((r) => (r == null ? void 0 : r.activeText) === o.roleName) || E.value.push({ val: !0, activeText: o.roleName }));
50
50
  }), oe());
@@ -76,8 +76,8 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
76
76
  }
77
77
  U.value = l, u.value = r, C.odata.getPersonal({}).then((g) => {
78
78
  var c;
79
- S.value.length === 0 && (S.value = (c = g.find((p) => p.employeeName === C.fullName)) == null ? void 0 : c.divisionName), g.forEach((p, A) => {
80
- ae.value.some((V) => (V == null ? void 0 : V.value) === p.divisionName) || ae.value.push({ value: p.divisionName, label: p.divisionName, key: A }), p.divisionName === S.value && !E.value.some((V) => (V == null ? void 0 : V.activeText) === p.roleName) && E.value.push({ val: !0, activeText: p.roleName });
79
+ $.value.length === 0 && ($.value = (c = g.find((p) => p.employeeName === C.fullName)) == null ? void 0 : c.divisionName), g.forEach((p, A) => {
80
+ ae.value.some((V) => (V == null ? void 0 : V.value) === p.divisionName) || ae.value.push({ value: p.divisionName, label: p.divisionName, key: A }), p.divisionName === $.value && !E.value.some((V) => (V == null ? void 0 : V.activeText) === p.roleName) && E.value.push({ val: !0, activeText: p.roleName });
81
81
  }), oe(), ge.value = !1;
82
82
  });
83
83
  }, Ce = Me(() => !n.value.some((t) => t.contHour !== U.value)), ce = (t, e) => {
@@ -86,7 +86,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
86
86
  return e === -1 || l === -1 ? "" : ((c = n.value[e].days[l]) == null ? void 0 : c.tips) + "<br>" + ((p = n.value[e].days[l]) == null ? void 0 : p.time);
87
87
  }, oe = () => {
88
88
  n.value = [], J.value = [], Y.value = [], C.odata.personal.forEach((t) => {
89
- if (t.divisionName === S.value && E.value.some((e) => e.val && e.activeText === t.roleName)) {
89
+ if (t.divisionName === $.value && E.value.some((e) => e.val && e.activeText === t.roleName)) {
90
90
  let e = re(t.employeeName);
91
91
  J.value.push(t.employeeKey), n.value.push({ name: e + " (" + t.roleName + ")", days: [], contHour: 0, code: t.employeeKey, id: !1, ids: n.value.length });
92
92
  }
@@ -130,8 +130,8 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
130
130
  l === -1 ? (n.value[e].days.push({
131
131
  day: r,
132
132
  time: x.value,
133
- tips: `(${b.value}:00 - ${b.value + x.value + 1}:00)`
134
- }), W()) : o || (x.value = n.value[e].days[l].time, b.value = parseInt(n.value[e].days[l].tips.slice(1, -12)));
133
+ tips: `(${S.value}:00 - ${S.value + x.value + 1}:00)`
134
+ }), W()) : o || (x.value = n.value[e].days[l].time, S.value = parseInt(n.value[e].days[l].tips.slice(1, -12)));
135
135
  }, be = (t, e) => {
136
136
  const { ind: o } = Q(t, e);
137
137
  n.value[e].days.splice(o, 1), W(), document.querySelector(".app-main").click();
@@ -140,7 +140,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
140
140
  n.value[e].days[r] = {
141
141
  day: o,
142
142
  time: x.value,
143
- tips: `(${b.value}:00 - ${b.value + x.value + 1}:00)`
143
+ tips: `(${S.value}:00 - ${S.value + x.value + 1}:00)`
144
144
  }, W();
145
145
  }, Q = (t, e) => {
146
146
  var l;
@@ -150,7 +150,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
150
150
  var V;
151
151
  Z.value = !0;
152
152
  const t = new Fe.Workbook(), e = t.addWorksheet(G(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 };
153
- 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: S.value }) + G(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")} (${U.value})`;
153
+ 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: $.value }) + G(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")} (${U.value})`;
154
154
  for (let y = 2; y <= u.value.length + 1; y++)
155
155
  e.getCell(4, y).value = u.value[y - 2].weekday + `
156
156
  ` + (y - 1), e.getColumn(y).width = 6, e.getColumn(y).alignment = l, e.getCell(4, y).border = r;
@@ -173,9 +173,9 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
173
173
  const p = "export_" + j(Date.now(), "{dd}.{m}.{Y}") + ".xlsx", A = await t.xlsx.writeBuffer();
174
174
  ze(new Blob([A]), p), Z.value = !1;
175
175
  }, De = async () => {
176
- q.value || C.workSchedule.addWorkSchedule({ data: n.value, date: j(new Date(f.value), "{Y}-{m}-{dd}"), group: S.value }).then((t) => q.value = t);
176
+ q.value || C.workSchedule.addWorkSchedule({ data: n.value, date: j(new Date(f.value), "{Y}-{m}-{dd}"), group: $.value }).then((t) => q.value = t);
177
177
  };
178
- return C.group && (S.value = C.group), Ye().then((t) => {
178
+ return C.group && ($.value = C.group), Ye().then((t) => {
179
179
  me.value = t, he();
180
180
  }), (t, e) => {
181
181
  const o = Ne("el-date-picker"), r = Ae("loading");
@@ -183,8 +183,8 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
183
183
  k("div", Ke, [
184
184
  F.checkEdit ? (w(), B(a(He), {
185
185
  key: 0,
186
- modelValue: S.value,
187
- "onUpdate:modelValue": e[0] || (e[0] = (l) => S.value = l),
186
+ modelValue: $.value,
187
+ "onUpdate:modelValue": e[0] || (e[0] = (l) => $.value = l),
188
188
  placeholder: "Select",
189
189
  style: { width: "240px" }
190
190
  }, {
@@ -203,7 +203,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
203
203
  onClick: e[1] || (e[1] = (l) => H.value = !0)
204
204
  }, {
205
205
  default: v(() => [
206
- $(h(a(d)("workSchedule.jobTitle")), 1)
206
+ b(h(a(d)("workSchedule.jobTitle")), 1)
207
207
  ]),
208
208
  _: 1
209
209
  })) : _("", !0),
@@ -272,7 +272,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
272
272
  }, {
273
273
  default: v(() => [
274
274
  i(a(z), {
275
- label: a(d)("workSchedule.title", { name: S.value }) + a(G)(f.value, "month") + ` ${new Date(f.value).getFullYear()}`,
275
+ label: a(d)("workSchedule.title", { name: $.value }) + a(G)(f.value, "month") + ` ${new Date(f.value).getFullYear()}`,
276
276
  align: "center",
277
277
  height: "34"
278
278
  }, {
@@ -324,7 +324,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
324
324
  align: "center"
325
325
  }, {
326
326
  default: v((l) => [
327
- $(h(n.value[l.$index].days.length || 0), 1)
327
+ b(h(n.value[l.$index].days.length || 0), 1)
328
328
  ]),
329
329
  _: 1
330
330
  }, 8, ["label"]),
@@ -352,18 +352,18 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
352
352
  _: 1
353
353
  }, 8, ["loading"]),
354
354
  Ce.value && F.checkEdit ? (w(), T("div", _e, [
355
- $(h(a(d)("workSchedule.chartsFilled")) + ": ", 1),
355
+ b(h(a(d)("workSchedule.chartsFilled")) + ": ", 1),
356
356
  q.value ? _("", !0) : (w(), B(a(M), {
357
357
  key: 0,
358
358
  type: "primary",
359
359
  onClick: De
360
360
  }, {
361
361
  default: v(() => [
362
- $(h(a(d)("workSchedule.confirm")), 1)
362
+ b(h(a(d)("workSchedule.confirm")), 1)
363
363
  ]),
364
364
  _: 1
365
365
  })),
366
- e[20] || (e[20] = $()),
366
+ e[20] || (e[20] = b()),
367
367
  k("span", null, h(F.fullName), 1)
368
368
  ])) : _("", !0),
369
369
  Te((w(), B(a(M), {
@@ -373,7 +373,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
373
373
  style: { "margin-top": ".5rem" }
374
374
  }, {
375
375
  default: v(() => [
376
- $(h(a(d)("workSchedule.exportExcel")), 1)
376
+ b(h(a(d)("workSchedule.exportExcel")), 1)
377
377
  ]),
378
378
  _: 1
379
379
  }, 8, ["disabled"])), [
@@ -391,7 +391,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
391
391
  size: "default"
392
392
  }, {
393
393
  default: v(() => [
394
- $(h(t.$t("workSchedule.cancel")), 1)
394
+ b(h(t.$t("workSchedule.cancel")), 1)
395
395
  ]),
396
396
  _: 1
397
397
  }),
@@ -401,7 +401,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
401
401
  onClick: oe
402
402
  }, {
403
403
  default: v(() => [
404
- $(h(t.$t("workSchedule.select")), 1)
404
+ b(h(t.$t("workSchedule.select")), 1)
405
405
  ]),
406
406
  _: 1
407
407
  })
@@ -473,8 +473,8 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
473
473
  }, null, 8, ["modelValue", "max"]),
474
474
  k("span", null, h(a(d)("workSchedule.with")) + ":", 1),
475
475
  i(a(O), {
476
- modelValue: b.value,
477
- "onUpdate:modelValue": e[9] || (e[9] = (l) => b.value = l),
476
+ modelValue: S.value,
477
+ "onUpdate:modelValue": e[9] || (e[9] = (l) => S.value = l),
478
478
  step: 1,
479
479
  min: 8,
480
480
  max: 11
@@ -485,7 +485,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
485
485
  "onUpdate:modelValue": e[10] || (e[10] = (l) => x.value = l),
486
486
  step: 1,
487
487
  min: 4,
488
- max: 24 - b.value
488
+ max: 24 - S.value
489
489
  }, null, 8, ["modelValue", "max"]),
490
490
  i(a(M), {
491
491
  style: { "margin-top": ".5rem" },
@@ -493,7 +493,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
493
493
  onClick: e[11] || (e[11] = (l) => $e(m.value.ids))
494
494
  }, {
495
495
  default: v(() => [
496
- $(h(a(d)("workSchedule.fillOut")), 1)
496
+ b(h(a(d)("workSchedule.fillOut")), 1)
497
497
  ]),
498
498
  _: 1
499
499
  }),
@@ -503,7 +503,7 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
503
503
  onClick: e[12] || (e[12] = (l) => Se(m.value.ids))
504
504
  }, {
505
505
  default: v(() => [
506
- $(h(a(d)("workSchedule.clearRow")), 1)
506
+ b(h(a(d)("workSchedule.clearRow")), 1)
507
507
  ]),
508
508
  _: 1
509
509
  })
@@ -512,8 +512,8 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
512
512
  e[22] || (e[22] = k("br", null, null, -1)),
513
513
  k("span", null, h(a(d)("workSchedule.with")) + ":", 1),
514
514
  i(a(O), {
515
- modelValue: b.value,
516
- "onUpdate:modelValue": e[13] || (e[13] = (l) => b.value = l),
515
+ modelValue: S.value,
516
+ "onUpdate:modelValue": e[13] || (e[13] = (l) => S.value = l),
517
517
  step: 1,
518
518
  min: 8,
519
519
  max: 11,
@@ -525,16 +525,16 @@ const Je = { class: "work" }, Ke = { class: "nav" }, Qe = { style: { height: "10
525
525
  "onUpdate:modelValue": e[15] || (e[15] = (l) => x.value = l),
526
526
  step: 1,
527
527
  min: 4,
528
- max: 12,
528
+ max: 24 - S.value,
529
529
  onChange: e[16] || (e[16] = (l) => pe(m.value.day, m.value.ids))
530
- }, null, 8, ["modelValue"]),
530
+ }, null, 8, ["modelValue", "max"]),
531
531
  i(a(M), {
532
532
  style: { "margin-top": ".5rem" },
533
533
  size: "small",
534
534
  onClick: e[17] || (e[17] = (l) => be(m.value.day, m.value.ids))
535
535
  }, {
536
536
  default: v(() => [
537
- $(h(a(d)("workSchedule.delete")), 1)
537
+ b(h(a(d)("workSchedule.delete")), 1)
538
538
  ]),
539
539
  _: 1
540
540
  })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@studio-west/employees",
3
- "version": "0.6.2",
3
+ "version": "0.6.3",
4
4
  "files": [
5
5
  "dist"
6
6
  ],