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