@studio-west/employees 0.6.37 → 0.6.38

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,4 +1,4 @@
1
- "use strict";const e=require("vue"),de=require("file-saver"),se=require("exceljs"),c=require("./index-Dn3djtwj.cjs"),ve=require("vue-i18n"),i=require("element-plus"),G=require("@imengyu/vue3-context-menu");function ce(k){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(k){for(const V in k)if(V!=="default"){const v=Object.getOwnPropertyDescriptor(k,V);Object.defineProperty(r,V,v.get?v:{enumerable:!0,get:()=>k[V]})}}return r.default=k,Object.freeze(r)}const ge=ce(se),me={class:"work"},he={class:"nav"},fe={style:{height:"100px",width:"100%",display:"inline-block"}},pe={style:{height:"100px",width:"100%",display:"inline-block"}},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,date:String},setup(k){const{t:r,d:V}=ve.useI18n(),v=k,F=e.ref(!1),n=e.ref([]),R=e.ref(v.date?new Date(v.date+"T00:00:01").getMonth():new Date().getMonth()),j=e.ref(!1),B=e.ref([]),f=e.ref(new Date(new Date().getFullYear(),new Date().getMonth(),1)),u=e.ref([]),T=e.ref(0),p=e.ref(9),m=e.ref(8),I=e.ref(!1),J=e.ref(!0),$=e.ref(!1),q=e.ref("5"),M=e.ref(1),C=e.ref([]),O=e.ref([]),b=e.ref([]),Y=e.ref([]),g=e.ref({name:"Имя",length:0,code:""}),U=e.ref(!1),P=e.ref({zIndex:3,minWidth:230,x:500,y:200}),Z=e.ref({}),A=e.ref("100%");e.watch(C,async(a,l)=>{a!==l&&(b.value=[],I.value=!1,v.odata.personal.forEach(o=>{a.includes(o.divisionName)&&(b.value.some(d=>(d==null?void 0:d.activeText)===o.roleName)||b.value.push({val:!0,activeText:o.roleName}))}),te())}),e.watch(R,async a=>{let l=new Date().getMonth(),o=a===null?l:a-1;o=l-1<=o?o:o+12,console.log("currentMonth",o),f.value=new Date(new Date().getFullYear(),o,1),K()});const _=(a,l,o,d)=>{g.value.ids=a.ids,g.value.key=a.key,g.value.add=a.days.length>0&&a.days[a.days.length-1].cont,g.value.level=l.level,g.value.day=o.cellIndex,P.value.y=d.clientY,P.value.x=d.clientX,l.level===2&&l.no===0&&v.checkEdit&&(g.value.name=r("workSchedule.autocomplete"),U.value=!0),l.level===3&&o.cellIndex-l.no===1&&v.checkEdit&&(D(o.cellIndex,a.ids),g.value.name=r("workSchedule.modeSelection"),U.value=!0)},ee=({row:a,columnIndex:l})=>{if(!B.value||B.value.length===0||!j.value)return"";const o=new Date(new Date(f.value).getFullYear(),new Date(f.value).getMonth(),l).getTime()+1e3;for(let d of B.value){const{dateStart:t,dateEnd:h,code:S}=d;if(t&&h&&S===a.code&&l!==0&&l<=u.value.length){const N=new Date(c.parseDate(t)).getTime(),E=new Date(c.parseDate(h)).getTime();if(o>=N&&o<=E)return"vacation"}}return""},K=()=>{var h,S,N,E;const a=Z.value,l=new Date(f.value),o=new Date(l.getFullYear(),l.getMonth()+1,0).getDate();let d=[],t=0;for(let x=1;x<=o;x++){const s=c.parseTime(l.setDate(x),"{Y}-{m}-{dd}");t+=(h=a.nowork)!=null&&h.includes(s)||a.holidays.includes(s)?0:(S=a.preholidays)!=null&&S.includes(s)?7:8;const y=(N=a.nowork)!=null&&N.includes(s)?"nowork":a.holidays.includes(s)?"holiday":(E=a.preholidays)!=null&&E.includes(s)?"preholiday":"";d.push({day:x,holidays:y,weekday:V(new Date(l.getFullYear(),l.getMonth(),x),"day")})}T.value=t,u.value=d,v.odata.getPersonal({}).then(x=>{var s;C.value.length===0&&(C.value=[(s=x.find(y=>y.employeeName===v.fullName))==null?void 0:s.divisionName]),x.forEach((y,W)=>{O.value.some(w=>(w==null?void 0:w.value)===y.divisionName)||O.value.push({value:y.divisionName,label:y.divisionName,key:W}),C.value.includes(y.divisionName)&&!b.value.some(w=>(w==null?void 0:w.activeText)===y.roleName)&&b.value.push({val:!0,activeText:y.roleName})}),J.value=!1})},le=e.computed(()=>!n.value.some(a=>a.contHour!==T.value)),Q=(a,l)=>{var h,S,N;const o=new Date(f.value),d=`${o.getFullYear()}-${(o.getMonth()+1).toString().padStart(2,"0")}-${a.toString().padStart(2,"0")}`,t=(h=n.value[l])==null?void 0:h.days.findIndex(E=>E.day===d);return l===-1||t===-1?"":((S=n.value[l].days[t])==null?void 0:S.tips)+`
2
- `+((N=n.value[l].days[t])==null?void 0:N.time)},te=()=>{n.value=[],Y.value=[],B.value=[],v.odata.personal.forEach(a=>{if(C.value.includes(a.divisionName)&&b.value.some(l=>l.val&&l.activeText===a.roleName)){let l=c.byInitials(a.employeeName);Y.value.push(a.employeeKey),n.value.push({name:l+" ("+a.roleName+")",days:[],contHour:0,code:a.employeeKey,id:!1,ids:n.value.length})}}),v.workSchedule.getUsersYear({code:Y.value,year:new Date(f.value).getFullYear()}).then(a=>{a.forEach(l=>{l.dateStart&&B.value.push({code:l.code,dateStart:l.dateStart,dateEnd:l.dateEnd})}),console.log(a),ae(),$.value=!1})},ae=()=>{v.workSchedule.getWorkSchedule({code:Y.value,date:c.parseTime(new Date(f.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)}),z()})},z=()=>{n.value.forEach(a=>{a.contHour=a.days.reduce((l,o)=>l+o.time,0)})},ne=a=>{n.value[a].days=[],z()},oe=a=>{switch(q.value){case"5":for(let l=M.value;l<=u.value.length;l++)u.value[l-1].holidays===""&&D(l,a,!0),u.value[l-1].holidays==="preholiday"&&(m.value-=1,D(l,a,!0),m.value+=1);break;case"2x2":for(let l=M.value;l<=u.value.length;l+=4)D(l,a,!0),l+1<=u.value.length&&D(l+1,a,!0);break;case"2x5":for(let l=M.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"?(m.value-=1,D(o,a,!0),m.value+=1):D(o,a,!0);break}},D=(a,l,o=!1)=>{const{date:d,ind:t}=H(a,l);t===-1?(n.value[l].days.push({day:d,time:m.value,tips:`(${p.value}:00 - ${m.value>=22?p.value+m.value+2:p.value+m.value+1}:00)`}),z()):o||(m.value=n.value[l].days[t].time,p.value=parseInt(n.value[l].days[t].tips.slice(1,-12)))},ue=(a,l)=>{const{ind:o}=H(a,l);n.value[l].days.splice(o,1),z(),document.querySelector(".app-main").click()},X=(a,l)=>{const{date:o,ind:d}=H(a,l);n.value[l].days[d]={day:o,time:m.value,tips:`(${p.value}:00 - ${m.value>=22?p.value+m.value+2:p.value+m.value+1}:00)`},z()},H=(a,l)=>{var t;const o=c.parseTime(new Date(f.value).setDate(a),"{Y}-{m}-{dd}"),d=(t=n.value[l])==null?void 0:t.days.findIndex(h=>h.day===o);return{date:o,ind:d}},re=async()=>{var x;F.value=!0;const a=new ge.Workbook,l=a.addWorksheet(V(f.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[0]})+V(f.value,"month")+` ${new Date(f.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")} (${T.value})`;for(let s=2;s<=u.value.length+1;s++)l.getCell(4,s).value=u.value[s-2].weekday+`
3
- `+(s-1),l.getColumn(s).width=6,l.getColumn(s).alignment=t,l.getCell(4,s).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 h=0;for(const s of n.value){let y=[s.name];for(let w=1;w<=u.value.length;w++){const{ind:L}=H(w,h);L!==-1?y[w]=`${s.days[L].time} ${s.days[L].tips}`:y[w]=" "}y.push(((x=s.days)==null?void 0:x.length)||" ",s.contHour||0);const W=l.addRow(y);W.border=d,h++}let S="Щербина Е. В.";v.odata.personal.forEach(s=>{s.roleName==="Начальник отдела правовой и кадровой работы"&&(S=s.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(v.fullName),l.getCell(`AD${n.value.length+8}`).value=c.byInitials(S),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 N="export_"+c.parseTime(Date.now(),"{dd}.{m}.{Y}")+".xlsx",E=await a.xlsx.writeBuffer();de.saveAs(new Blob([E]),N),F.value=!1},ie=async()=>{I.value||v.workSchedule.addWorkSchedule({data:n.value,date:c.parseTime(new Date(f.value),"{Y}-{m}-{dd}"),group:C.value[0]}).then(a=>I.value=a)};return console.log("props.group",v.group),console.log("props.date",v.date),v.group&&(C.value[0]=v.group),v.date&&(f.value=new Date(v.date+"T00:00:01")),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",me,[e.createElementVNode("div",he,[k.checkEdit?(e.openBlock(),e.createBlock(e.unref(i.ElSelect),{key:0,modelValue:C.value,"onUpdate:modelValue":l[0]||(l[0]=t=>C.value=t),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",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),k.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[20]||(l[20]=e.createElementVNode("div",{class:"expander"},null,-1)),e.createVNode(e.unref(i.ElSwitch),{modelValue:A.value,"onUpdate:modelValue":l[3]||(l[3]=t=>A.value=t),"active-text":a.$t("bids.currentHeight"),"active-value":"100%","inactive-value":"calc(100vh - var(--el-component-size)*5 - 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":A.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[0]})+e.unref(V)(f.value,"month")+` ${new Date(f.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:A.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+`
4
- `+t.day.toString(),prop:"vacation"},{default:e.withCtx(h=>[e.createElementVNode("div",pe,e.toDisplayString(Q(t.day,h.$index)||" "),1)]),_:2},1032,["class-name","label"]))),128))]),_:1},8,["label"]),e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(r)("workSchedule.onSchedule"),align:"center",fixed:A.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")} ( ${T.value} )`,align:"center"},{default:e.withCtx(t=>[e.createElementVNode("div",{style:e.normalizeStyle(`color: ${T.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:ie},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.confirm")),1)]),_:1})),l[21]||(l[21]=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:F.value,plain:"",onClick:re,style:{"margin-top":".5rem"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.exportExcel")),1)]),_:1},8,["disabled"])),[[d,F.value]]),e.createVNode(e.unref(i.ElDialog),{title:e.unref(r)("workSchedule.jobTitle"),modelValue:$.value,"onUpdate:modelValue":l[7]||(l[7]=t=>$.value=t),width:"400px"},{footer:e.withCtx(()=>[e.createVNode(e.unref(i.ElButton),{onClick:l[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:l[6]||(l[6]=t=>{$.value=!1})},{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:b.value,autocomplete:"on"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.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":h=>t.val=h,"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:U.value,"onUpdate:show":l[19]||(l[19]=t=>U.value=t),options:P.value},{default:e.withCtx(()=>[e.createVNode(e.unref(G.ContextMenuItem),{label:g.value.name,disabled:""},null,8,["label"]),e.createVNode(e.unref(G.ContextMenuSeparator)),g.value.level===2?(e.openBlock(),e.createElementBlock("div",we,[e.createVNode(e.unref(i.ElRadioGroup),{modelValue:q.value,"onUpdate:modelValue":l[8]||(l[8]=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[22]||(l[22]=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:M.value,"onUpdate:modelValue":l[9]||(l[9]=t=>M.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:p.value,"onUpdate:modelValue":l[10]||(l[10]=t=>p.value=t),step:1,min:0,max:19},null,8,["modelValue"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(r)("workSchedule.duration"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:m.value,"onUpdate:modelValue":l[11]||(l[11]=t=>m.value=t),step:1,min:4,max:e.unref(c.clamp)(p.value!==1?23-p.value:21,4,22)},null,8,["modelValue","max"]),e.createVNode(e.unref(i.ElButton),{style:{"margin-top":".5rem"},size:"small",onClick:l[12]||(l[12]=t=>oe(g.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[13]||(l[13]=t=>ne(g.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(g.value.day,g.value.ids)),1),l[23]||(l[23]=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:p.value,"onUpdate:modelValue":l[14]||(l[14]=t=>p.value=t),step:1,min:0,max:19,onChange:l[15]||(l[15]=t=>X(g.value.day,g.value.ids))},null,8,["modelValue"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(r)("workSchedule.duration"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:m.value,"onUpdate:modelValue":l[16]||(l[16]=t=>m.value=t),step:1,min:4,max:e.unref(c.clamp)(p.value!==1?23-p.value:21,4,22),onChange:l[17]||(l[17]=t=>X(g.value.day,g.value.ids))},null,8,["modelValue","max"]),e.createVNode(e.unref(i.ElButton),{style:{"margin-top":".5rem"},size:"small",onClick:l[18]||(l[18]=t=>ue(g.value.day,g.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-Dn3djtwj.cjs"),ve=require("vue-i18n"),i=require("element-plus"),G=require("@imengyu/vue3-context-menu");function ce(k){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(k){for(const V in k)if(V!=="default"){const v=Object.getOwnPropertyDescriptor(k,V);Object.defineProperty(r,V,v.get?v:{enumerable:!0,get:()=>k[V]})}}return r.default=k,Object.freeze(r)}const ge=ce(se),me={class:"work"},he={class:"nav"},fe={style:{height:"100px",width:"100%",display:"inline-block"}},pe={style:{height:"100px",width:"100%",display:"inline-block"}},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,date:String},setup(k){const{t:r,d:V}=ve.useI18n(),v=k,F=e.ref(!1),n=e.ref([]),R=e.ref(v.date?new Date(v.date+"T00:00:01").getMonth():new Date().getMonth()),j=e.ref(!1),B=e.ref([]),f=e.ref(new Date(new Date().getFullYear(),new Date().getMonth(),1)),u=e.ref([]),T=e.ref(0),p=e.ref(9),m=e.ref(8),I=e.ref(!1),J=e.ref(!0),$=e.ref(!1),q=e.ref("5"),M=e.ref(1),C=e.ref([]),O=e.ref([]),b=e.ref([]),Y=e.ref([]),g=e.ref({name:"Имя",length:0,code:""}),U=e.ref(!1),P=e.ref({zIndex:3,minWidth:230,x:500,y:200}),Z=e.ref({}),A=e.ref("100%");e.watch(C,async(a,l)=>{a!==l&&(b.value=[],I.value=!1,v.odata.personal.forEach(o=>{a.includes(o.divisionName)&&(b.value.some(d=>(d==null?void 0:d.activeText)===o.roleName)||b.value.push({val:!0,activeText:o.roleName}))}),X())}),e.watch(R,async a=>{let l=new Date().getMonth(),o=a===null?l:a-1;o=l-1<=o?o:o+12,console.log("currentMonth",o),f.value=new Date(new Date().getFullYear(),o,1),K()});const ee=(a,l,o,d)=>{g.value.ids=a.ids,g.value.key=a.key,g.value.add=a.days.length>0&&a.days[a.days.length-1].cont,g.value.level=l.level,g.value.day=o.cellIndex,P.value.y=d.clientY,P.value.x=d.clientX,l.level===2&&l.no===0&&v.checkEdit&&(g.value.name=r("workSchedule.autocomplete"),U.value=!0),l.level===3&&o.cellIndex-l.no===1&&v.checkEdit&&(D(o.cellIndex,a.ids),g.value.name=r("workSchedule.modeSelection"),U.value=!0)},le=({row:a,columnIndex:l})=>{if(!B.value||B.value.length===0||!j.value)return"";const o=new Date(new Date(f.value).getFullYear(),new Date(f.value).getMonth(),l).getTime()+1e3;for(let d of B.value){const{dateStart:t,dateEnd:h,code:S}=d;if(t&&h&&S===a.code&&l!==0&&l<=u.value.length){const N=new Date(c.parseDate(t)).getTime(),E=new Date(c.parseDate(h)).getTime();if(o>=N&&o<=E)return"vacation"}}return""},K=()=>{var h,S,N,E;const a=Z.value,l=new Date(f.value),o=new Date(l.getFullYear(),l.getMonth()+1,0).getDate();let d=[],t=0;for(let x=1;x<=o;x++){const s=c.parseTime(l.setDate(x),"{Y}-{m}-{dd}");t+=(h=a.nowork)!=null&&h.includes(s)||a.holidays.includes(s)?0:(S=a.preholidays)!=null&&S.includes(s)?7:8;const y=(N=a.nowork)!=null&&N.includes(s)?"nowork":a.holidays.includes(s)?"holiday":(E=a.preholidays)!=null&&E.includes(s)?"preholiday":"";d.push({day:x,holidays:y,weekday:V(new Date(l.getFullYear(),l.getMonth(),x),"day")})}T.value=t,u.value=d,v.odata.getPersonal({}).then(x=>{var s;C.value.length===0&&(C.value=[(s=x.find(y=>y.employeeName===v.fullName))==null?void 0:s.divisionName]),x.forEach((y,W)=>{O.value.some(w=>(w==null?void 0:w.value)===y.divisionName)||O.value.push({value:y.divisionName,label:y.divisionName,key:W}),C.value.includes(y.divisionName)&&!b.value.some(w=>(w==null?void 0:w.activeText)===y.roleName)&&b.value.push({val:!0,activeText:y.roleName})}),J.value=!1})},te=e.computed(()=>!n.value.some(a=>a.contHour!==T.value)),Q=(a,l)=>{var h,S,N;const o=new Date(f.value),d=`${o.getFullYear()}-${(o.getMonth()+1).toString().padStart(2,"0")}-${a.toString().padStart(2,"0")}`,t=(h=n.value[l])==null?void 0:h.days.findIndex(E=>E.day===d);return l===-1||t===-1?"":((S=n.value[l].days[t])==null?void 0:S.tips)+`
2
+ `+((N=n.value[l].days[t])==null?void 0:N.time)},X=()=>{n.value=[],Y.value=[],B.value=[],v.odata.personal.forEach(a=>{if(C.value.includes(a.divisionName)&&b.value.some(l=>l.val&&l.activeText===a.roleName)){let l=c.byInitials(a.employeeName);Y.value.push(a.employeeKey),n.value.push({name:l+" ("+a.roleName+")",days:[],contHour:0,code:a.employeeKey,id:!1,ids:n.value.length})}}),v.workSchedule.getUsersYear({code:Y.value,year:new Date(f.value).getFullYear()}).then(a=>{a.forEach(l=>{l.dateStart&&B.value.push({code:l.code,dateStart:l.dateStart,dateEnd:l.dateEnd})}),console.log(a),ae(),$.value=!1})},ae=()=>{v.workSchedule.getWorkSchedule({code:Y.value,date:c.parseTime(new Date(f.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)}),z()})},z=()=>{n.value.forEach(a=>{a.contHour=a.days.reduce((l,o)=>l+o.time,0)})},ne=a=>{n.value[a].days=[],z()},oe=a=>{switch(q.value){case"5":for(let l=M.value;l<=u.value.length;l++)u.value[l-1].holidays===""&&D(l,a,!0),u.value[l-1].holidays==="preholiday"&&(m.value-=1,D(l,a,!0),m.value+=1);break;case"2x2":for(let l=M.value;l<=u.value.length;l+=4)D(l,a,!0),l+1<=u.value.length&&D(l+1,a,!0);break;case"2x5":for(let l=M.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"?(m.value-=1,D(o,a,!0),m.value+=1):D(o,a,!0);break}},D=(a,l,o=!1)=>{const{date:d,ind:t}=H(a,l);t===-1?(n.value[l].days.push({day:d,time:m.value,tips:`(${p.value}:00 - ${m.value>=22?p.value+m.value+2:p.value+m.value+1}:00)`}),z()):o||(m.value=n.value[l].days[t].time,p.value=parseInt(n.value[l].days[t].tips.slice(1,-12)))},ue=(a,l)=>{const{ind:o}=H(a,l);n.value[l].days.splice(o,1),z(),document.querySelector(".app-main").click()},_=(a,l)=>{const{date:o,ind:d}=H(a,l);n.value[l].days[d]={day:o,time:m.value,tips:`(${p.value}:00 - ${m.value>=22?p.value+m.value+2:p.value+m.value+1}:00)`},z()},H=(a,l)=>{var t;const o=c.parseTime(new Date(f.value).setDate(a),"{Y}-{m}-{dd}"),d=(t=n.value[l])==null?void 0:t.days.findIndex(h=>h.day===o);return{date:o,ind:d}},re=async()=>{var x;F.value=!0;const a=new ge.Workbook,l=a.addWorksheet(V(f.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[0]})+V(f.value,"month")+` ${new Date(f.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")} (${T.value})`;for(let s=2;s<=u.value.length+1;s++)l.getCell(4,s).value=u.value[s-2].weekday+`
3
+ `+(s-1),l.getColumn(s).width=6,l.getColumn(s).alignment=t,l.getCell(4,s).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 h=0;for(const s of n.value){let y=[s.name];for(let w=1;w<=u.value.length;w++){const{ind:L}=H(w,h);L!==-1?y[w]=`${s.days[L].time} ${s.days[L].tips}`:y[w]=" "}y.push(((x=s.days)==null?void 0:x.length)||" ",s.contHour||0);const W=l.addRow(y);W.border=d,h++}let S="Щербина Е. В.";v.odata.personal.forEach(s=>{s.roleName==="Начальник отдела правовой и кадровой работы"&&(S=s.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(v.fullName),l.getCell(`AD${n.value.length+8}`).value=c.byInitials(S),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 N="export_"+c.parseTime(Date.now(),"{dd}.{m}.{Y}")+".xlsx",E=await a.xlsx.writeBuffer();de.saveAs(new Blob([E]),N),F.value=!1},ie=async()=>{I.value||v.workSchedule.addWorkSchedule({data:n.value,date:c.parseTime(new Date(f.value),"{Y}-{m}-{dd}"),group:C.value[0]}).then(a=>I.value=a)};return console.log("props.group",v.group),console.log("props.date",v.date),v.group&&(C.value[0]=v.group),v.date&&(f.value=new Date(v.date+"T00:00:01")),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",me,[e.createElementVNode("div",he,[k.checkEdit?(e.openBlock(),e.createBlock(e.unref(i.ElSelect),{key:0,modelValue:C.value,"onUpdate:modelValue":l[0]||(l[0]=t=>C.value=t),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",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),k.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[20]||(l[20]=e.createElementVNode("div",{class:"expander"},null,-1)),e.createVNode(e.unref(i.ElSwitch),{modelValue:A.value,"onUpdate:modelValue":l[3]||(l[3]=t=>A.value=t),"active-text":a.$t("bids.currentHeight"),"active-value":"100%","inactive-value":"calc(100vh - var(--el-component-size)*5 - 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":A.value,size:"small",align:"center",onCellClick:ee,"empty-text":e.unref(r)("workSchedule.emptyText"),"cell-class-name":le},{default:e.withCtx(()=>[e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(r)("workSchedule.title",{name:C.value[0]})+e.unref(V)(f.value,"month")+` ${new Date(f.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:A.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+`
4
+ `+t.day.toString(),prop:"vacation"},{default:e.withCtx(h=>[e.createElementVNode("div",pe,e.toDisplayString(Q(t.day,h.$index)||" "),1)]),_:2},1032,["class-name","label"]))),128))]),_:1},8,["label"]),e.createVNode(e.unref(i.ElTableColumn),{label:e.unref(r)("workSchedule.onSchedule"),align:"center",fixed:A.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")} ( ${T.value} )`,align:"center"},{default:e.withCtx(t=>[e.createElementVNode("div",{style:e.normalizeStyle(`color: ${T.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"]),te.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:ie},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.confirm")),1)]),_:1})),l[21]||(l[21]=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:F.value,plain:"",onClick:re,style:{"margin-top":".5rem"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("workSchedule.exportExcel")),1)]),_:1},8,["disabled"])),[[d,F.value]]),e.createVNode(e.unref(i.ElDialog),{title:e.unref(r)("workSchedule.jobTitle"),modelValue:$.value,"onUpdate:modelValue":l[7]||(l[7]=t=>$.value=t),width:"400px"},{footer:e.withCtx(()=>[e.createVNode(e.unref(i.ElButton),{onClick:l[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:l[6]||(l[6]=t=>{X(),$.value=!1})},{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:b.value,autocomplete:"on"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.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":h=>t.val=h,"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:U.value,"onUpdate:show":l[19]||(l[19]=t=>U.value=t),options:P.value},{default:e.withCtx(()=>[e.createVNode(e.unref(G.ContextMenuItem),{label:g.value.name,disabled:""},null,8,["label"]),e.createVNode(e.unref(G.ContextMenuSeparator)),g.value.level===2?(e.openBlock(),e.createElementBlock("div",we,[e.createVNode(e.unref(i.ElRadioGroup),{modelValue:q.value,"onUpdate:modelValue":l[8]||(l[8]=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[22]||(l[22]=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:M.value,"onUpdate:modelValue":l[9]||(l[9]=t=>M.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:p.value,"onUpdate:modelValue":l[10]||(l[10]=t=>p.value=t),step:1,min:0,max:19},null,8,["modelValue"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(r)("workSchedule.duration"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:m.value,"onUpdate:modelValue":l[11]||(l[11]=t=>m.value=t),step:1,min:4,max:e.unref(c.clamp)(p.value!==1?23-p.value:21,4,22)},null,8,["modelValue","max"]),e.createVNode(e.unref(i.ElButton),{style:{"margin-top":".5rem"},size:"small",onClick:l[12]||(l[12]=t=>oe(g.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[13]||(l[13]=t=>ne(g.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(g.value.day,g.value.ids)),1),l[23]||(l[23]=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:p.value,"onUpdate:modelValue":l[14]||(l[14]=t=>p.value=t),step:1,min:0,max:19,onChange:l[15]||(l[15]=t=>_(g.value.day,g.value.ids))},null,8,["modelValue"]),e.createElementVNode("span",null,e.toDisplayString(e.unref(r)("workSchedule.duration"))+":",1),e.createVNode(e.unref(i.ElSlider),{modelValue:m.value,"onUpdate:modelValue":l[16]||(l[16]=t=>m.value=t),step:1,min:4,max:e.unref(c.clamp)(p.value!==1?23-p.value:21,4,22),onChange:l[17]||(l[17]=t=>_(g.value.day,g.value.ids))},null,8,["modelValue","max"]),e.createVNode(e.unref(i.ElButton),{style:{"margin-top":".5rem"},size:"small",onClick:l[18]||(l[18]=t=>ue(g.value.day,g.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,7 +1,7 @@
1
- import { ref as g, watch as ye, computed as Ne, resolveComponent as Ae, resolveDirective as Te, createElementBlock as z, openBlock as C, createElementVNode as x, createVNode as i, createCommentVNode as _, withDirectives as Be, createBlock as F, unref as a, withCtx as s, Fragment as de, renderList as ie, createTextVNode as D, toDisplayString as m, normalizeStyle as ze } from "vue";
1
+ import { ref as g, watch as fe, computed as Ne, resolveComponent as Ae, resolveDirective as Te, createElementBlock as z, openBlock as C, createElementVNode as x, createVNode as i, createCommentVNode as _, withDirectives as Be, createBlock as F, unref as a, withCtx as s, Fragment as de, renderList as ie, createTextVNode as D, toDisplayString as m, normalizeStyle as ze } from "vue";
2
2
  import { saveAs as Fe } from "file-saver";
3
3
  import * as Ye from "exceljs";
4
- import { p as O, b as re, h as Ue, c as fe, a as we, d as M } from "./index-2Mx6IUGl.js";
4
+ import { p as O, b as re, h as Ue, c as we, a as ke, d as M } from "./index-2Mx6IUGl.js";
5
5
  import { useI18n as Ie } from "vue-i18n";
6
6
  import { ElSelect as He, ElOption as Re, ElButton as T, ElSwitch as ve, ElSkeleton as We, ElTable as Pe, ElTableColumn as Y, ElSkeletonItem as G, ElDialog as je, ElForm as Oe, ElFormItem as Ge, ElRadioGroup as Le, ElRadioButton as se, ElSlider as L } from "element-plus";
7
7
  import { ContextMenu as Ze, ContextMenuItem as qe, ContextMenuSeparator as Je } from "@imengyu/vue3-context-menu";
@@ -45,23 +45,23 @@ const Ke = { class: "work" }, Qe = { class: "nav" }, Xe = { style: { height: "10
45
45
  x: 500,
46
46
  y: 200
47
47
  }), me = g({}), P = g("100%");
48
- ye($, async (t, e) => {
48
+ fe($, async (t, e) => {
49
49
  t !== e && (N.value = [], J.value = !1, h.odata.personal.forEach((o) => {
50
50
  t.includes(o.divisionName) && (N.value.some((r) => (r == null ? void 0 : r.activeText) === o.roleName) || N.value.push({ val: !0, activeText: o.roleName }));
51
- }), Se());
52
- }), ye(ee, async (t) => {
51
+ }), pe());
52
+ }), fe(ee, async (t) => {
53
53
  let e = (/* @__PURE__ */ new Date()).getMonth(), o = t === null ? e : t - 1;
54
54
  o = e - 1 <= o ? o : o + 12, console.log("currentMonth", o), f.value = new Date((/* @__PURE__ */ new Date()).getFullYear(), o, 1), he();
55
55
  });
56
- const ke = (t, e, o, r) => {
56
+ const Ce = (t, e, o, r) => {
57
57
  c.value.ids = t.ids, c.value.key = t.key, c.value.add = t.days.length > 0 && t.days[t.days.length - 1].cont, c.value.level = e.level, c.value.day = o.cellIndex, ne.value.y = r.clientY, ne.value.x = r.clientX, e.level === 2 && e.no === 0 && h.checkEdit && (c.value.name = d("workSchedule.autocomplete"), Q.value = !0), e.level === 3 && o.cellIndex - e.no === 1 && h.checkEdit && (B(o.cellIndex, t.ids), c.value.name = d("workSchedule.modeSelection"), Q.value = !0);
58
- }, Ce = ({ row: t, columnIndex: e }) => {
58
+ }, xe = ({ row: t, columnIndex: e }) => {
59
59
  if (!H.value || H.value.length === 0 || !le.value) return "";
60
60
  const o = new Date(new Date(f.value).getFullYear(), new Date(f.value).getMonth(), e).getTime() + 1e3;
61
61
  for (let r of H.value) {
62
62
  const { dateStart: l, dateEnd: y, code: V } = r;
63
63
  if (l && y && V === t.code && e !== 0 && e <= u.value.length) {
64
- const E = new Date(we(l)).getTime(), A = new Date(we(y)).getTime();
64
+ const E = new Date(ke(l)).getTime(), A = new Date(ke(y)).getTime();
65
65
  if (o >= E && o <= A) return "vacation";
66
66
  }
67
67
  }
@@ -82,12 +82,12 @@ const Ke = { class: "work" }, Qe = { class: "nav" }, Xe = { style: { height: "10
82
82
  ae.value.some((S) => (S == null ? void 0 : S.value) === k.divisionName) || ae.value.push({ value: k.divisionName, label: k.divisionName, key: oe }), $.value.includes(k.divisionName) && !N.value.some((S) => (S == null ? void 0 : S.activeText) === k.roleName) && N.value.push({ val: !0, activeText: k.roleName });
83
83
  }), ge.value = !1;
84
84
  });
85
- }, xe = Ne(() => !n.value.some((t) => t.contHour !== R.value)), ce = (t, e) => {
85
+ }, Se = Ne(() => !n.value.some((t) => t.contHour !== R.value)), ce = (t, e) => {
86
86
  var y, V, E;
87
87
  const o = new Date(f.value), r = `${o.getFullYear()}-${(o.getMonth() + 1).toString().padStart(2, "0")}-${t.toString().padStart(2, "0")}`, l = (y = n.value[e]) == null ? void 0 : y.days.findIndex((A) => A.day === r);
88
88
  return e === -1 || l === -1 ? "" : ((V = n.value[e].days[l]) == null ? void 0 : V.tips) + `
89
89
  ` + ((E = n.value[e].days[l]) == null ? void 0 : E.time);
90
- }, Se = () => {
90
+ }, pe = () => {
91
91
  n.value = [], K.value = [], H.value = [], h.odata.personal.forEach((t) => {
92
92
  if ($.value.includes(t.divisionName) && N.value.some((e) => e.val && e.activeText === t.roleName)) {
93
93
  let e = re(t.employeeName);
@@ -138,7 +138,7 @@ const Ke = { class: "work" }, Qe = { class: "nav" }, Xe = { style: { height: "10
138
138
  }, Ve = (t, e) => {
139
139
  const { ind: o } = X(t, e);
140
140
  n.value[e].days.splice(o, 1), j(), document.querySelector(".app-main").click();
141
- }, pe = (t, e) => {
141
+ }, ye = (t, e) => {
142
142
  const { date: o, ind: r } = X(t, e);
143
143
  n.value[e].days[r] = {
144
144
  day: o,
@@ -272,9 +272,9 @@ const Ke = { class: "work" }, Qe = { class: "nav" }, Xe = { style: { height: "10
272
272
  "max-height": P.value,
273
273
  size: "small",
274
274
  align: "center",
275
- onCellClick: ke,
275
+ onCellClick: Ce,
276
276
  "empty-text": a(d)("workSchedule.emptyText"),
277
- "cell-class-name": Ce
277
+ "cell-class-name": xe
278
278
  }, {
279
279
  default: s(() => [
280
280
  i(a(Y), {
@@ -354,7 +354,7 @@ const Ke = { class: "work" }, Qe = { class: "nav" }, Xe = { style: { height: "10
354
354
  ]),
355
355
  _: 1
356
356
  }, 8, ["loading"]),
357
- xe.value && I.checkEdit ? (C(), z("div", el, [
357
+ Se.value && I.checkEdit ? (C(), z("div", el, [
358
358
  D(m(a(d)("workSchedule.chartsFilled")) + ": ", 1),
359
359
  J.value ? _("", !0) : (C(), F(a(T), {
360
360
  key: 0,
@@ -402,7 +402,7 @@ const Ke = { class: "work" }, Qe = { class: "nav" }, Xe = { style: { height: "10
402
402
  size: "default",
403
403
  type: "primary",
404
404
  onClick: e[6] || (e[6] = (l) => {
405
- U.value = !1;
405
+ pe(), U.value = !1;
406
406
  })
407
407
  }, {
408
408
  default: s(() => [
@@ -490,7 +490,7 @@ const Ke = { class: "work" }, Qe = { class: "nav" }, Xe = { style: { height: "10
490
490
  "onUpdate:modelValue": e[11] || (e[11] = (l) => p.value = l),
491
491
  step: 1,
492
492
  min: 4,
493
- max: a(fe)(w.value !== 1 ? 23 - w.value : 21, 4, 22)
493
+ max: a(we)(w.value !== 1 ? 23 - w.value : 21, 4, 22)
494
494
  }, null, 8, ["modelValue", "max"]),
495
495
  i(a(T), {
496
496
  style: { "margin-top": ".5rem" },
@@ -522,7 +522,7 @@ const Ke = { class: "work" }, Qe = { class: "nav" }, Xe = { style: { height: "10
522
522
  step: 1,
523
523
  min: 0,
524
524
  max: 19,
525
- onChange: e[15] || (e[15] = (l) => pe(c.value.day, c.value.ids))
525
+ onChange: e[15] || (e[15] = (l) => ye(c.value.day, c.value.ids))
526
526
  }, null, 8, ["modelValue"]),
527
527
  x("span", null, m(a(d)("workSchedule.duration")) + ":", 1),
528
528
  i(a(L), {
@@ -530,8 +530,8 @@ const Ke = { class: "work" }, Qe = { class: "nav" }, Xe = { style: { height: "10
530
530
  "onUpdate:modelValue": e[16] || (e[16] = (l) => p.value = l),
531
531
  step: 1,
532
532
  min: 4,
533
- max: a(fe)(w.value !== 1 ? 23 - w.value : 21, 4, 22),
534
- onChange: e[17] || (e[17] = (l) => pe(c.value.day, c.value.ids))
533
+ max: a(we)(w.value !== 1 ? 23 - w.value : 21, 4, 22),
534
+ onChange: e[17] || (e[17] = (l) => ye(c.value.day, c.value.ids))
535
535
  }, null, 8, ["modelValue", "max"]),
536
536
  i(a(T), {
537
537
  style: { "margin-top": ".5rem" },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@studio-west/employees",
3
- "version": "0.6.37",
3
+ "version": "0.6.38",
4
4
  "files": [
5
5
  "dist"
6
6
  ],