PageSourceSearch

https://app.adset.pro/assets/MyReportsView-BcHDsVAg.js

js adset.pro collected 2026-09-24 14:29:03 UTC 8,259 bytes, 1 lines download raw bytes

1import{r as ue,t as pe,f as de,z as me,w as fe,x,a5 as ye,v as U,g as k}from"./vendor-primevue-Ccwe8ICX.js";import{a as be,u as ve,U as g,_ as he}from"./index-ChU8jYFA.js";import{d as _e,_ as Re,a4 as xe,r as b,t as N,c as T,o as ke,J as P,b as w,g as a,x as s,i as n,K as p,M as S,Q as B,a as j,n as L,F as ge}from"./vendor-vue-BKoTHMGq.js";import{S as we}from"./SectionCard-CICaI-qm.js";import{R as i,E as q,a as v}from"./expenses-BDwf90CC.js";import{b as Se}from"./api-query-BuJwE4A5.js";import"./vendor-DweBnwaO.js";import"./vendor-charts-DDDWuFtC.js";import"./vendor-utils-Dz6h6rJQ.js";const Te={class:"my-reports-view"},Ee={class:"mb-4 flex flex-wrap gap-3"},De={class:"w-56"},Ce={class:"block mb-2 text-sm font-medium"},Fe={class:"w-64"},Ie={class:"block mb-2 text-sm font-medium"},Ve={class:"text-center p-4"},Oe={key:1,class:"opacity-60"},Pe={class:"flex gap-2"},Ae=_e({__name:"MyReportsView",setup(Me){const{showToast:E}=be(),{t:r}=Re(),D=xe(),K=ue(),{claims:c}=ve(),J=b(),A=b([]),M=b(0),C=b(!0),d=N({first:0,rows:20}),h=N({sortField:"date",sortOrder:-1}),F=b(null),_=b([new Date(Date.now()),new Date(Date.now())]),m=b({});T(()=>[g.ADMIN,g.BUYER].includes(c==null?void 0:c.role));const G=T(()=>[g.ADMIN,g.TEAM_LEAD,g.TECH].includes(c==null?void 0:c.role));function z(e){return e.user===(c==null?void 0:c.sub)}const H=T(()=>!Object.values(m.value).some(e=>e.checked));function Q(e){return z(e)?!I(e):!0}const W={taskStatus:{field:"status",op:"eq",when:e=>e!==null,serialize:e=>e},dateFrom:{field:"date",op:"gte",when:e=>!!e,serialize:e=>e},dateTo:{field:"date",op:"lte",when:e=>!!e,serialize:e=>e}},Y=T(()=>[{label:r("expenses.myReports.status.all"),value:null},{label:r("expenses.myReports.status.pending"),value:i.PENDING},{label:r("expenses.myReports.status.late"),value:i.LATE},{label:r("expenses.myReports.status.submitted"),value:i.SUBMITTED},{label:r("expenses.myReports.status.skipped"),value:i.SKIPPED}]);async function R(){var e,o,l,t,u;C.value=!0;try{const f=(e=_.value)!=null&&e[0]?_.value[0].toISOString().split("T")[0]:"",y=(o=_.value)!=null&&o[1]?_.value[1].toISOString().split("T")[0]:"",{params:V}=Se({pageFirst:d.first,pageRows:d.rows,sortField:h.sortField,sortOrder:h.sortOrder,filters:{taskStatus:F.value,dateFrom:f,dateTo:y},spec:W}),O=await q.listTasks({params:V});A.value=O.data,M.value=O.meta.total,ne(O.data)}catch(f){const y=f,V=((u=(t=(l=y==null?void 0:y.response)==null?void 0:l.data)==null?void 0:t.error)==null?void 0:u.message)??r("common.error.load_failed");E({type:"error",title:r("common.error.title"),message:V})}finally{C.value=!1}}function X(e){d.first=e.first,d.rows=e.rows,R()}function Z(e){h.sortField=e.sortField,h.sortOrder=e.sortOrder,R()}function $(){d.first=0,R()}function I(e){return e.status===i.SKIPPED?!1:!e.report||typeof e.report=="object"&&(e.report.status===v.DRAFT||e.report.status===v.REJECTED)}function ee(e){return!e.report||typeof e.report!="object"?!1:e.report.status===v.SUBMITTED}function te(e){!e.report||typeof e.report!="object"||D.push({name:"expense-report-review",query:{date:e.date}})}function se(e){D.push({name:"expense-report-editor",params:{taskId:e.id}})}async function re(e){K.require({message:r("expenses.myReports.confirmSkip.message"),header:r("expenses.myReports.confirmSkip.header"),icon:"pi pi-exclamation-triangle",rejectProps:{label:r("common.cancel"),severity:"secondary",outlined:!0},acceptProps:{label:r("common.confirm_button"),severity:"danger"},accept:async()=>{var o,l,t;try{await q.patchTask(e.id,{status:i.SKIPPED}),E({type:"success",title:r("common.success.title"),message:r("expenses.myReports.messages.task_skipped")}),R()}catch(u){const f=u,y=((t=(l=(o=f==null?void 0:f.response)==null?void 0:o.data)==null?void 0:l.error)==null?void 0:t.message)??r("common.error.operation_failed");E({type:"error",title:r("common.error.title"),message:y})}}})}function oe(e){switch(e){case i.PENDING:return"info";case i.LATE:return"danger";case i.SUBMITTED:return"success";case i.SKIPPED:return"secondary";default:return"contrast"}}function ae(e){switch(e){case v.DRAFT:return"info";case v.SUBMITTED:return"success";case v.REJECTED:return"danger";case v.APPROVED:return"success";default:return"contrast"}}function le(e){return Q(e)}function ne(e){for(const o of e)m.value[o.id]={disabled:le(o),value:o.date,checked:!1}
1}function ie(e){Object.values(m.value).forEach(o=>{o.disabled||(o.checked=e)})}function ce(){const e=Object.values(m.value).reduce((o,l)=>(l.checked&&(o+=l.value+"&"),o),"");D.push({name:"multi-expense-report-editor",query:{date:e}})}return ke(R),(e,o)=>{const l=ye;return w(),P("div",Te,[a(s(pe),{pt:{root:{class:"max-w-[400px]"}}}),a(we,null,{action:n(()=>[p("div",null,[a(s(k),{label:s(r)("expenses.myReports.actions.fill_selected"),icon:"pi pi-check-square",severity:"primary",size:"small",disabled:H.value,class:"mr-2",onClick:o[0]||(o[0]=t=>ce())},null,8,["label","disabled"]),a(s(k),{icon:"pi pi-refresh",severity:"primary",size:"small",onClick:R})])]),default:n(()=>[p("div",Ee,[p("div",De,[p("label",Ce,S(s(r)("expenses.myReports.filters.task_status")),1),a(s(de),{modelValue:F.value,"onUpdate:modelValue":o[1]||(o[1]=t=>F.value=t),options:Y.value,optionLabel:"label",optionValue:"value",placeholder:s(r)("expenses.myReports.filters.status_placeholder"),class:"w-full",onChange:$,size:"small","show-clear":""},null,8,["modelValue","options","placeholder"])]),p("div",Fe,[p("label",Ie,S(s(r)("expenses.myReports.filters.date_range")),1),a(s(me),{modelValue:_.value,"onUpdate:modelValue":[o[2]||(o[2]=t=>_.value=t),$],selectionMode:"range",placeholder:s(r)("expenses.myReports.filters.date_range_placeholder"),dateFormat:"dd.mm.yy",size:"small","show-clear":"",fluid:""},null,8,["modelValue","placeholder"])])]),a(s(fe),{ref_key:"dt",ref:J,value:A.value,loading:C.value,totalRecords:M.value,rows:d.rows,first:d.first,lazy:!0,paginator:!0,rowsPerPageOptions:[10,20,50],sortField:h.sortField,sortOrder:h.sortOrder,dataKey:"id",size:"small",responsiveLayout:"scroll",stripedRows:"",onPage:X,onSort:Z,onRowSelectAll:o[3]||(o[3]=t=>ie(t.originalEvent.target.checked))},{empty:n(()=>[p("div",Ve,S(s(r)("expenses.myReports.table.no_data")),1)]),default:n(()=>[a(s(x),{selectionMode:"multiple",headerStyle:"width: 3rem"},{body:n(({data:t})=>[a(l,{disabled:m.value[t.id].disabled,modelValue:m.value[t.id].checked,"onUpdate:modelValue":u=>m.value[t.id].checked=u,binary:""},null,8,["disabled","modelValue","onUpdate:modelValue"])]),_:1}),a(s(x),{field:"date",header:s(r)("expenses.myReports.table.date"),sortable:""},{body:n(({data:t})=>[B(S(t.date),1)]),_:1},8,["header"]),a(s(x),{field:"status",header:s(r)("expenses.myReports.table.task_status"),sortable:""},{body:n(({data:t})=>[a(s(U),{value:s(r)(`expenses.myReports.status.${t.status}`),severity:oe(t.status)},null,8,["value","severity"])]),_:1},8,["header"]),a(s(x),{field:"report.status",header:s(r)("expenses.myReports.table.report_status"),sortable:""},{body:n(({data:t})=>[t.report&&typeof t.report=="object"?(w(),j(s(U),{key:0,value:s(r)(`expenses.myReports.reportStatus.${t.report.status}`),severity:ae(t.report.status)},null,8,["value","severity"])):(w(),P("span",Oe,"-"))]),_:1},8,["header"]),a(s(x),{field:"scheduleAt",header:s(r)("expenses.myReports.table.scheduled_at"),sortable:""},{body:n(({data:t})=>[B(S(new Date(t.scheduleAt).toLocaleString()),1)]),_:1},8,["header"]),a(s(x),{exportable:!1},{body:n(({data:t})=>[p("div",Pe,[z(t)?(w(),P(ge,{key:0},[a(s(k),{label:t.report?s(r)("expenses.myReports.actions.edit_report"):s(r)("expenses.myReports.actions.fill_report"),icon:"pi pi-file-edit",severity:"primary",size:"small",disabled:!I(t),onClick:u=>se(t)},null,8,["label","disabled","onClick"]),a(s(k),{label:s(r)("expenses.myReports.actions.skip"),icon:"pi pi-times",severity:"secondary",size:"small",outlined:"",disabled:!I(t),onClick:u=>re(t)},null,8,["label","disabled","onClick"])],64)):L("",!0),G.value?(w(),j(s(k),{key:1,label:s(r)("expenses.myReports.actions.view_report"),icon:"pi pi-eye",severity:"info",size:"small",disabled:!ee(t),onClick:u=>te(t)},null,8,["label","disabled","onClick"])):L("",!0)])]),_:1})]),_:1},8,["value","loading","totalRecords","rows","first","sortField","sortOrder"])]),_:1})])}}}),Je=he(Ae,[["__scopeId","data-v-2b1bcfd3"]]);export{Je as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.