whoami7 - Manager
:
/
home
/
qbizpnmr
/
arif.umairtax.com
/
public
/
Upload File:
files >> /home/qbizpnmr/arif.umairtax.com/public/PaymentSchedule-Bp7JKjaV.js
import{u as ne,cq as ie,a as de,bu as oe,d as ue,p as i,j as e,C as me,ae as g,cS as he,by as $,bC as be,E as pe,cT as U,cx as xe,b2 as G,bf as m,r as T,e as A,cU as ye,H as fe}from"./bundle.OlIVtvc7.js";import{H as _e}from"./History-C-yFGmPI.js";const ge=fe.div` background-color: ${s=>s.theme.backgroundColor}; &:hover { background-color: ${s=>s.theme.hoverBackgroundColor}; } `;function Ne(){var K;const[s]=ne(),J=ie(),{invoice:r}=J,l=de(),B=oe();ue();const[p,h]=i.useState("initial-choice"),[_,w]=i.useState(null),[q,F]=i.useState("2"),[D,M]=i.useState("5"),[P,R]=i.useState(""),[H,W]=i.useState(!1),[f,j]=i.useState(!1),[E,L]=i.useState(!1),[o,y]=i.useState(void 0),[b,v]=i.useState(r),[X,S]=i.useState(!0),[je,N]=i.useState(0),[u,Q]=i.useState({id:"temp-schedule",name:"Payment Schedule",frequency_id:"5",next_run:new Date().toISOString(),template:"payment_schedule",is_paused:!1,is_deleted:!1,remaining_cycles:-1,parameters:{date_range:"",show_payments_table:!1,show_credits_table:!1,show_aging_table:!1,only_clients_with_invoices:!1,status:"",clients:[],entity:"invoice",entity_id:"",report_name:"",start_date:"",end_date:"",product_key:"",send_email:!1,is_expense_billed:!1,is_income_billed:!1,include_tax:!1,client_id:"",vendors:"",categories:"",projects:"",report_keys:[],schedule:[],invoice_id:(r==null?void 0:r.id)||"",auto_bill:!1},updated_at:Date.now(),created_at:Date.now(),archived_at:0});i.useEffect(()=>{Q(c=>({...c,parameters:{...c.parameters,invoice_id:(r==null?void 0:r.id)||""}}))},[r==null?void 0:r.id]),i.useEffect(()=>{v(r)},[r]),i.useEffect(()=>{var d,z;if(!u.parameters.schedule||u.parameters.schedule.length===0){S(!1),N(0);return}if(!b){if(((d=u.parameters.schedule[0])==null?void 0:d.is_amount)??!0){const x=u.parameters.schedule.reduce((I,ce)=>I+ce.amount,0),C=x/.9,k=Math.max(0,C-x);S(k<=0),N(k)}else{const x=u.parameters.schedule.reduce((k,I)=>k+I.amount,0),C=Math.max(0,100-x);S(C<=0),N(C)}return}const c=((z=u.parameters.schedule[0])==null?void 0:z.is_amount)??!0,a=b.amount,t=u.parameters.schedule.reduce((O,x)=>x.is_amount!==c?O+(c?x.amount*a/100:x.amount/a*100):O+x.amount,0),n=Number(c?(a-t).toFixed(2):(100-t).toFixed(0));S(n<=0),N(n)},[u.parameters.schedule,b]);const Y=()=>{switch(p){case"initial-choice":_==="number-payments"?h("number-payments"):_==="custom"&&h("custom-schedule");break;case"number-payments":h("frequency");break;case"frequency":h("first-payment-date");break;case"first-payment-date":h("auto-bill");break}},Z=()=>{switch(p){case"number-payments":h("initial-choice");break;case"frequency":h("number-payments");break;case"first-payment-date":h("frequency");break;case"auto-bill":h("first-payment-date");break;case"custom-schedule":h("initial-choice");break}},V=()=>{switch(p){case"initial-choice":return _!==null;case"number-payments":return parseInt(q)>0;case"frequency":return D!=="";case"first-payment-date":return P!=="";case"auto-bill":return!0;default:return!0}},ee=()=>{if(!f&&r){j(!0),y(void 0),m.processing();const c={template:"payment_schedule",next_run:P,remaining_cycles:parseInt(q),frequency_id:D,parameters:{invoice_id:r.id,auto_bill:H,schedule:[]}};T("POST",A("/api/v1/invoices/:id/payment_schedule?show_schedule=true",{id:r.id}),c).then(a=>{var t,n;m.success("created_schedule"),(n=(t=a==null?void 0:a.data)==null?void 0:t.data)!=null&&n.schedule&&a.data.data.schedule.length>0&&v(d=>d?{...d,schedule:a.data.data.schedule}:void 0)}).catch(a=>{var t;((t=a.response)==null?void 0:t.status)===422?(y(a.response.data),m.dismiss()):m.error("error_occurred")}).finally(()=>{j(!1),B.invalidateQueries({queryKey:["/api/v1/invoices",r==null?void 0:r.id]})})}},se=()=>{if(!f&&u){j(!0),y(void 0),m.processing();const c={template:"payment_schedule",next_run:new Date().toISOString(),parameters:{invoice_id:u.parameters.invoice_id,auto_bill:u.parameters.auto_bill,schedule:u.parameters.schedule}};T("POST",A("/api/v1/task_schedulers"),c).then(a=>{var t,n;m.success("created_schedule"),(n=(t=a==null?void 0:a.data)==null?void 0:t.data)!=null&&n.schedule&&a.data.data.schedule.length>0&&v(d=>d?{...d,schedule:a.data.data.schedule}:void 0)}).catch(a=>{var t;a instanceof ye&&((t=a.response)==null?void 0:t.status)===422?(y(a.response.data),m.dismiss()):m.error("error_occurred")}).finally(()=>{j(!1),B.invalidateQueries({queryKey:["/api/v1/invoices",r==null?void 0:r.id]})})}},te=()=>{!E&&r&&(L(!0),y(void 0),m.processing(),T("DELETE",A("/api/v1/invoices/:id/payment_schedule",{id:r.id})).then(()=>{m.success("removed_schedule"),v(c=>c?{...c,schedule:[]}:void 0),h("initial-choice"),w(null),F("2"),M("5"),R(""),W(!1)}).catch(c=>{var a;((a=c.response)==null?void 0:a.status)===422?(y(c.response.data),m.dismiss()):m.error("error_occurred")}).finally(()=>{L(!1)}))},ae=c=>{const a=new Date;return a.setHours(0,0,0,0),new Date(c)<a},re=c=>new Date(c).toLocaleDateString(),le=()=>{var a;if((b==null?void 0:b.schedule)&&b.schedule.length>0)return e.jsxs("div",{className:"",children:[(a=b.schedule)==null?void 0:a.map((t,n)=>{const d=ae(t.date);return e.jsx(ge,{className:"py-4 flex justify-between items-center",theme:{backgroundColor:l.$1,hoverBackgroundColor:l.$25},children:e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx("div",{className:"p-2 rounded-full",style:{backgroundColor:l.$20},children:e.jsx(_e,{size:"1.3rem",color:l.$16,filledColor:l.$16})}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex space-x-1 text-sm",style:{color:d?l.$17:l.$3},children:[re(t.date)," | ",t.amount]}),e.jsxs("div",{className:"text-sm",style:{color:l.$17},children:[s(d?"past_due":"upcoming")," - ",s("auto_bill"),": ",t.auto_bill?s("enabled"):s("disabled")]})]})]})},n)}),e.jsx("div",{className:"flex justify-end",children:e.jsx(g,{behavior:"button",disableWithoutIcon:!0,onClick:te,disabled:E,className:"text-red-600 border-red-600 hover:bg-red-50 border",children:s(E?"removing":"clear")})}),o&&e.jsx("div",{className:"p-4 rounded-md",style:{backgroundColor:l.$18,color:l.$4},children:Object.values(o.errors).flat().join(", ")})]});switch(p){case"initial-choice":return e.jsxs("div",{className:"space-y-6",children:[e.jsx("div",{className:"text-center",children:e.jsx("h2",{className:"text-xl font-semibold mb-4",children:s("choose_schedule_type")})}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:G("p-4 border-2 rounded-lg cursor-pointer transition-colors",_==="number-payments"?"border-blue-500 bg-blue-50":"border-gray-200 hover:border-gray-300"),onClick:()=>w("number-payments"),children:[e.jsx("h3",{className:"font-medium mb-2",children:s("split_payments")}),e.jsx("p",{className:"text-sm text-gray-600",children:s("split_payments_help")})]}),e.jsxs("div",{className:G("p-4 border-2 rounded-lg cursor-pointer transition-colors",_==="custom"?"border-blue-500 bg-blue-50":"border-gray-200 hover:border-gray-300"),onClick:()=>w("custom"),children:[e.jsx("h3",{className:"font-medium mb-2",children:s("custom_schedule")}),e.jsx("p",{className:"text-sm text-gray-600",children:s("custom_schedule_help")})]})]})]});case"number-payments":return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"text-center",children:[e.jsx("h2",{className:"text-xl font-semibold mb-4",children:s("number_of_payments")}),e.jsx("p",{className:"text-gray-600 mb-6",children:s("number_of_payments_helper")})]}),e.jsx($,{leftSide:s("number_of_payments"),children:e.jsx(xe,{type:"number",value:q,onValueChange:t=>F(t),min:"1"})})]});case"frequency":return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"text-center",children:[e.jsx("h2",{className:"text-xl font-semibold mb-4",children:s("frequency")}),e.jsx("p",{className:"text-gray-600 mb-6",children:s("schedule_frequency_help")})]}),e.jsx($,{leftSide:s("frequency"),children:e.jsx(pe,{value:D,onValueChange:t=>M(t),errorMessage:void 0,customSelector:!0,dismissable:!1,menuPosition:"fixed",children:Object.keys(U).map((t,n)=>e.jsx("option",{value:t,children:s(U[t])},n))})})]});case"first-payment-date":return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"text-center",children:[e.jsx("h2",{className:"text-xl font-semibold mb-4",children:s("first_payment_date")}),e.jsx("p",{className:"text-gray-600 mb-6",children:s("first_payment_date_help")})]}),e.jsx($,{leftSide:s("first_payment_date"),children:e.jsx("input",{type:"date",value:P,onChange:t=>{R(t.target.value)},min:new Date().toISOString().split("T")[0],className:"w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-blue-500"})}),(o==null?void 0:o.errors["parameters.first_payment_date"])&&e.jsx("div",{className:"mt-2 p-2 rounded-md text-sm",style:{backgroundColor:l.$18,color:l.$4},children:o.errors["parameters.first_payment_date"].map((t,n)=>e.jsx("div",{children:t},n))}),o&&Object.keys(o.errors).length>0&&e.jsx("div",{className:"mb-4 p-4 rounded-md",style:{backgroundColor:l.$18,color:l.$4},children:Object.values(o.errors).flat().join(", ")})]});case"auto-bill":return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"text-center",children:[e.jsx("h2",{className:"text-xl font-semibold mb-4",children:s("auto_bill")}),e.jsx("p",{className:"text-gray-600 mb-6",children:s("auto_bill_help")})]}),e.jsx($,{leftSide:s("auto_bill"),children:e.jsx(be,{checked:H,onValueChange:t=>W(t)})}),o&&Object.keys(o.errors).length>0&&e.jsx("div",{className:"mb-4 p-4 bg-red-50 text-red-700 rounded-md",children:Object.values(o.errors).flat().join(", ")})]});case"custom-schedule":return e.jsx("div",{className:"space-y-6",children:e.jsx(he,{schedule:u,handleChange:(t,n)=>{Q(d=>({...d,[t]:n}))},errors:o,setErrors:y,page:"create",disableInvoiceSelection:!0})});default:return null}};return e.jsx(me,{title:s("payment_schedule"),className:"shadow-sm",style:{borderColor:l.$24,backgroundColor:l.$1,color:l.$3},headerStyle:{borderColor:l.$20,backgroundColor:l.$1,color:l.$3},withoutBodyPadding:!0,withScrollableBody:!0,children:e.jsxs("div",{className:"p-6",children:[le(),e.jsx("div",{className:"flex justify-between mt-8",children:!((K=b==null?void 0:b.schedule)!=null&&K.length)&&e.jsxs(e.Fragment,{children:[p!=="initial-choice"&&e.jsx(g,{behavior:"button",onClick:Z,children:s("back")}),p==="auto-bill"&&e.jsx(g,{behavior:"button",disableWithoutIcon:!0,onClick:ee,disabled:!V()||f,className:"ml-auto",children:s(f?"creating":"save")}),p==="custom-schedule"&&e.jsx(g,{behavior:"button",disableWithoutIcon:!0,onClick:se,disabled:f||!X,className:"ml-auto",children:s(f?"creating":"save")}),p!=="auto-bill"&&p!=="custom-schedule"&&e.jsx(g,{behavior:"button",disableWithoutIcon:!0,onClick:Y,disabled:!V(),className:"ml-auto",children:s("next")})]})})]})})}export{Ne as default};
Copyright ©2021 || Defacer Indonesia