1 line
8.9 KiB
JavaScript
1 line
8.9 KiB
JavaScript
import{A as e,Ct as t,Et as n,L as r,M as i,N as a,O as ee,P as o,R as s,St as c,Y as l,_ as te,j as u,mt as d,n as f,rt as ne,t as p,tt as m,z as h}from"./BasicIcon-C6boaehV.js";import{l as g,n as _,o as re}from"./format-BHJptHdF.js";import{i as ie,n as ae,o as v,t as oe}from"./validation-BD7oi-2I.js";import{d as se,n as ce}from"./index-spodxsRN.js";import{t as le}from"./FormErrorBanner-CjdBfIQT.js";import{n as y,r as b,t as ue}from"./formErrors-DglFjYkZ.js";import{t as de}from"./PageHeader-BaJqBjIW.js";import{t as fe}from"./useRequirePricedOrder-BBPnO4DF.js";import{t as x}from"./BaseInput-qoEXOHCQ.js";import{n as pe,t as me}from"./PersianDateInput-5iA_raeL.js";import{t as he}from"./IconCheckBook-DwIUojJc.js";var ge=h({__name:`IconCash`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(l(),i(p,{icon:`vuesax-linear:money-4`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),_e={class:`page`},ve={class:`page__scroll checkout-page__scroll`},ye={class:`mb-3 flex items-start gap-3`},be={class:`flex h-10 w-10 shrink-0 items-center justify-center rounded-full bg-[var(--color-primary-soft)] text-[var(--color-primary)]`,"aria-hidden":`true`},xe={class:`flex flex-col gap-2`},Se={class:`flex items-center justify-between gap-3 text-sm`},Ce={class:`font-tabular text-[var(--color-text)]`},we={class:`flex items-center justify-between gap-3 text-sm`},S={class:`inline-flex items-center gap-1.5 text-[var(--color-text-muted)]`},C={key:0,class:`text-xs`},w={class:`font-tabular text-[var(--color-text)]`},T={class:`mt-1 flex items-center justify-between gap-3 border-t border-[var(--color-border)] pt-3`},E={class:`card`},D={class:`form-group`},O=[`src`],k={key:1,class:`upload-box__placeholder`},Te={key:0,class:`input-error-text`},Ee={key:2,class:`form-group`},De={class:`upload-box`},Oe=[`src`],ke={key:1,class:`upload-box__placeholder`},A=f(h({__name:`CheckFormView`,setup(i){let f=te(),p=se(),{orderId:h,order:A}=fe(),j=e(()=>p.draftCheckMode===`full`),M=d(``),N=d(``),P=d(``),F=d(``),I=d(``),L=d(``),R=d(``),z=d(``),B=d(``),V=d(``),H=d(``),U=d(``),W=d({}),G=d(``),K=d(!1),q=e(()=>A.value?.finalAmount??0),J=e(()=>p.draftChecks.reduce((e,t)=>e+t.amount,0)),Y=e(()=>g(M.value)||0),X=e(()=>Math.max(0,q.value-J.value)),Ae=e(()=>Math.max(0,q.value-J.value-Y.value)),Z=e(()=>q.value>0&&J.value+Y.value>=q.value),Q=e(()=>q.value>0&&J.value+Y.value>q.value);m([q,X],()=>{K.value||M.value||X.value<=0||(M.value=String(X.value),K.value=!0)},{immediate:!0}),m(M,()=>{W.value=y(W.value,`amount`),b(W.value)||(G.value=``)}),m(N,()=>{W.value=y(W.value,`dueDate`),b(W.value)||(G.value=``)}),m(P,()=>{W.value=y(W.value,`sayadId`),b(W.value)||(G.value=``)}),m(I,()=>{W.value=y(W.value,`ownerNationalId`),b(W.value)||(G.value=``)}),m(V,()=>{W.value=y(W.value,`frontImage`),b(W.value)||(G.value=``)});async function $(e,t){let n=e.target.files?.[0];if(!n)return;let r=ae(n);if(!r.valid){t===`front`&&(W.value={...W.value,frontImage:r.message??`خطا`});return}let i=await oe(n);t===`front`?V.value=i:H.value=i}function je(){X.value<=0||(M.value=String(X.value))}function Me(){W.value={},G.value=``;let e={},t=g(M.value);return(!t||t<=0)&&(e.amount=`مبلغ چک باید بزرگتر از صفر باشد.`),N.value||(e.dueDate=`تاریخ سررسید الزامی است.`),V.value||(e.frontImage=`تصویر روی چک الزامی است.`),j.value&&(v(P.value)||(e.sayadId=`شناسه صیادی باید ۱۶ رقم باشد.`),ie(I.value)||(e.ownerNationalId=`کد ملی صاحب چک معتبر نیست.`),p.draftChecks.some(e=>e.sayadId===P.value.replace(/\s/g,``))&&(e.sayadId=`شناسه صیادی تکراری است.`)),W.value=e,!b(e)||(G.value=ue,!1)}function Ne(){Me()&&(p.addDraftCheck({amount:g(M.value),dueDate:N.value,sayadId:j.value?P.value.replace(/\s/g,``):void 0,checkNumber:j.value?F.value:void 0,ownerNationalId:j.value?I.value:void 0,ownerFirstName:j.value?L.value:void 0,ownerLastName:j.value?R.value:void 0,bankName:j.value?z.value:void 0,branchName:j.value?B.value:void 0,frontImage:V.value,backImage:H.value||void 0,notes:U.value||void 0,mode:p.draftCheckMode??`brief`}),Pe(),f.push(`/orders/${h.value}/check-list`))}function Pe(){M.value=``,N.value=``,P.value=``,F.value=``,I.value=``,L.value=``,R.value=``,z.value=``,B.value=``,V.value=``,H.value=``,U.value=``,W.value={},G.value=``,K.value=!1}return(e,i)=>(l(),o(`div`,_e,[s(de,{title:j.value?`ثبت چک - حالت کامل`:`ثبت چک - حالت مختصر`,"show-back":``,onBack:i[0]||=e=>c(f).push(`/orders/${c(h)}/check-mode`)},null,8,[`title`]),u(`div`,ve,[s(le,{message:G.value},null,8,[`message`]),q.value>0?(l(),o(`div`,{key:0,class:t([`check-balance mb-4 rounded-[var(--radius-md)] border border-[var(--color-border)] bg-[var(--color-surface)] p-4`,{"check-balance--ok":Z.value&&!Q.value,"check-balance--warn":Q.value}])},[u(`div`,ye,[u(`span`,be,[s(ge,{size:22})]),i[13]||=u(`div`,{class:`min-w-0 flex-1`},[u(`p`,{class:`m-0 text-sm font-semibold text-[var(--color-text)]`},`مانده فاکتور`),u(`p`,{class:`m-0 mt-1 text-xs leading-relaxed text-[var(--color-text-muted)]`},` با هر چک، مبلغ باقیمانده بهروز میشود تا پوشش کامل فاکتور را از دست ندهید. `)],-1)]),u(`div`,xe,[u(`div`,Se,[i[14]||=u(`span`,{class:`text-[var(--color-text-muted)]`},`مبلغ فاکتور`,-1),u(`strong`,Ce,n(c(_)(q.value)),1)]),u(`div`,we,[u(`span`,S,[s(he,{size:14}),i[15]||=r(` چکهای ثبتشده `,-1),c(p).draftChecks.length?(l(),o(`span`,C,` (`+n(c(re)(c(p).draftChecks.length))+`) `,1)):a(``,!0)]),u(`strong`,w,n(c(_)(J.value)),1)]),u(`div`,T,[i[16]||=u(`span`,{class:`text-sm font-semibold text-[var(--color-text)]`},`باقیمانده`,-1),u(`strong`,{class:t([`font-tabular text-base`,Z.value&&!Q.value?`text-[var(--color-success)]`:Q.value?`text-[var(--color-danger)]`:`text-[var(--color-primary)]`])},n(Q.value?`${c(_)(J.value+Y.value-q.value)} بیش از فاکتور`:Z.value?`پوشش کامل شد`:c(_)(Ae.value)),3)])])],2)):a(``,!0),i[20]||=u(`div`,{class:`steps`},[u(`span`,{class:`step active`},`۱. اطلاعات چک`),u(`span`,{class:`step`},`۲. چک بعدی`),u(`span`,{class:`step`},`۳. خلاصه`)],-1),u(`div`,E,[s(pe,{modelValue:M.value,"onUpdate:modelValue":i[1]||=e=>M.value=e,label:`مبلغ چک (تومان)`,placeholder:`مبلغ`,error:W.value.amount},null,8,[`modelValue`,`error`]),X.value>0&&Y.value!==X.value?(l(),o(`button`,{key:0,type:`button`,class:`check-fill-remaining mb-3 text-sm font-medium text-[var(--color-primary)]`,onClick:je},` پر کردن با باقیمانده (`+n(c(_)(X.value))+`) `,1)):a(``,!0),s(me,{modelValue:N.value,"onUpdate:modelValue":i[2]||=e=>N.value=e,label:`تاریخ سررسید`,error:W.value.dueDate},null,8,[`modelValue`,`error`]),j.value?(l(),o(ee,{key:1},[s(x,{modelValue:P.value,"onUpdate:modelValue":i[3]||=e=>P.value=e,label:`شناسه صیادی`,placeholder:`۱۶ رقم`,maxlength:`16`,inputmode:`numeric`,dir:`ltr`,error:W.value.sayadId},null,8,[`modelValue`,`error`]),s(x,{modelValue:F.value,"onUpdate:modelValue":i[4]||=e=>F.value=e,label:`شماره چک`,inputmode:`numeric`,dir:`ltr`},null,8,[`modelValue`]),s(x,{modelValue:I.value,"onUpdate:modelValue":i[5]||=e=>I.value=e,label:`کد ملی صاحب چک`,maxlength:`10`,inputmode:`numeric`,dir:`ltr`,error:W.value.ownerNationalId},null,8,[`modelValue`,`error`]),s(x,{modelValue:L.value,"onUpdate:modelValue":i[6]||=e=>L.value=e,label:`نام صاحب چک`},null,8,[`modelValue`]),s(x,{modelValue:R.value,"onUpdate:modelValue":i[7]||=e=>R.value=e,label:`نام خانوادگی صاحب چک`},null,8,[`modelValue`]),s(x,{modelValue:z.value,"onUpdate:modelValue":i[8]||=e=>z.value=e,label:`نام بانک`},null,8,[`modelValue`]),s(x,{modelValue:B.value,"onUpdate:modelValue":i[9]||=e=>B.value=e,label:`نام شعبه`},null,8,[`modelValue`])],64)):a(``,!0),u(`div`,D,[i[17]||=u(`label`,{class:`form-label`},`تصویر روی چک *`,-1),u(`label`,{class:t([`upload-box`,{"upload-box--error":W.value.frontImage}])},[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:i[10]||=e=>$(e,`front`)},null,32),V.value?(l(),o(`img`,{key:0,src:V.value,class:`upload-box__preview`,alt:`روی چک`},null,8,O)):(l(),o(`span`,k,`بارگذاری تصویر چک`))],2),W.value.frontImage?(l(),o(`p`,Te,n(W.value.frontImage),1)):a(``,!0)]),j.value?(l(),o(`div`,Ee,[i[18]||=u(`label`,{class:`form-label`},`تصویر پشت چک`,-1),u(`label`,De,[u(`input`,{type:`file`,accept:`image/*`,class:`upload-box__input`,onChange:i[11]||=e=>$(e,`back`)},null,32),H.value?(l(),o(`img`,{key:0,src:H.value,class:`upload-box__preview`,alt:`پشت چک`},null,8,Oe)):(l(),o(`span`,ke,`بارگذاری تصویر`))])])):a(``,!0),s(x,{modelValue:U.value,"onUpdate:modelValue":i[12]||=e=>U.value=e,label:`توضیحات`},null,8,[`modelValue`]),s(ce,{block:``,class:`mt-4`,onClick:Ne},{default:ne(()=>[...i[19]||=[r(`ذخیره چک`,-1)]]),_:1})])])]))}}),[[`__scopeId`,`data-v-5976552f`]]);export{A as default}; |