@accounter/client
Version:
2 lines (1 loc) • 1.77 kB
JavaScript
import{r as s,F as h,aC as v,aE as C,u as P,j as e,L as A,hl as F}from"./index-DRqooPz9.js";import{u as b}from"./use-url-query-A8PE3FMA.js";import{C as y}from"./charges-filters-CYR6-jcu.js";import{P as j}from"./page-layout-Dp9Tr43G.js";import{P as D}from"./Progress-DE13gAJ5.js";import"./update-accountant-status-Btcm95Uc.js";import"./modal-CPrQ9jQu.js";import"./funnel-B1ZA9LM9.js";import"./sub-764RJPt0.js";import"./addDays-DpkzPtfc.js";import"./subMonths-CZ2djAnO.js";import"./MultiSelect-DhEZHYxn.js";const Q=()=>{const{setFiltersContext:i}=s.useContext(h),{get:c}=b(),{userContext:p}=s.useContext(v),[a,m]=s.useState(c("chargesFilters")?JSON.parse(decodeURIComponent(c("chargesFilters"))):{byOwners:p?.context.adminBusinessId?[p?.context.adminBusinessId]:[],sortBy:{field:C.Date,asc:!1},toAnyDate:null,fromAnyDate:null}),[{data:r,fetching:u}]=P({query:F,variables:{filters:a,page:1,limit:999999}}),t=r?.allCharges?.nodes.length??0;let o=0,l=0,n=0;r?.allCharges?.nodes.map(f=>{switch(f.accountantApproval){case"APPROVED":o+=1;break;case"PENDING":l+=1;break;case"UNAPPROVED":n+=1;break}});const x=100*o/t,d=100*l/t,g=100*n/t;return s.useEffect(()=>{i(e.jsx("div",{className:"flex flex-row gap-x-5",children:e.jsx(y,{filter:a,setFilter:m,activePage:0,setPage:()=>{},totalPages:1})}))},[r,u,a,i,m]),e.jsx(j,{title:"Accountant Approvals Status",children:u?e.jsx(A,{className:"h-10 w-10 animate-spin mr-2 self-center"}):e.jsxs("div",{className:"mx-10 mt-5 flex flex-col gap-5",children:[`Total charges: ${t}`,e.jsx(D,{color:"green",radius:"xl",size:"xl",sections:[{value:x,color:"green",label:`${x.toFixed(1)}% (${o})`},{value:d,color:"orange",label:`${d.toFixed(1)}% (${l})`},{value:g,color:"red",label:`${g.toFixed(1)}% (${n})`}]})]})})};export{Q as AccountantApprovals};