Files
nademitex_admin/dist/assets/BankAccountsView-CkbL3HvV.js
T
2026-09-30 09:53:30 +03:30

1 line
6.5 KiB
JavaScript

import{$ as e,At as t,E as n,H as r,M as i,U as a,Z as o,c as s,d as c,g as ee,h as l,k as u,l as d,m as f,r as p,s as m,t as h,u as g}from"./_plugin-vue_export-helper-QrIvvHC8.js";import{a as te,f as _,m as ne,t as v}from"./http-BjLkjdQu.js";import{B as y,H as b,d as x,v as re,z as ie}from"./index-BzcByePp.js";import{t as ae}from"./BaseSwitch-pJwnFBVo.js";import{t as oe}from"./BaseEmptyState-B7aEMvHg.js";import{t as S}from"./ActiveSwitchCell-Mj6U4GtB.js";var se={class:`accounts-page`},ce={class:`admin-page-header`},le={class:`admin-page-header__title`},ue={key:1,class:`accounts-page__table admin-card desktop-only`},de={class:`admin-table-wrap`},fe={class:`admin-table`},pe={class:`status`},C={key:2,class:`compact-only admin-card-list`},w={class:`admin-card-item__header`},T={class:`admin-card-item__title`},E={class:`admin-card-item__meta`},D={key:0},O={key:1,dir:`ltr`},k={key:0,class:`admin-form__error`,role:`alert`},A={class:`admin-form__row`},j={class:`admin-form__field`},M={class:`admin-form__field`},N={class:`admin-form__field`},P={class:`admin-form__row`},F={class:`admin-form__field`},I={class:`admin-form__field`},L={class:`admin-form__field`},me=[`disabled`],R=h(ee({__name:`BankAccountsView`,setup(ee){let h=ie(),R=y(),z=te(),B=e(null),V=e([]),H=e(!1),U=e(``),W=e(!1),G=m(()=>String(h.params.companyId)),K=m(()=>V.value),q=()=>({bankName:``,accountNumber:``,accountHolder:B.value?.name??``,cardNumber:``,iban:``,isActive:!0}),J=o(q()),Y=m(()=>J.bankName.trim().length>0&&J.accountNumber.trim().length>0&&J.accountHolder.trim().length>0);async function he(){try{let[e,t]=await Promise.all([re.get(G.value),x.listByCompany(G.value)]);B.value=e,V.value=t}catch(e){z.error(e instanceof v?e.message:`بارگذاری حساب‌ها انجام نشد.`)}}n(()=>{he()});function X(){Object.assign(J,q()),U.value=``,H.value=!0}function Z(){H.value=!1,U.value=``}async function Q(){if(!Y.value){U.value=`فیلدهای ستاره‌دار الزامی هستند.`;return}W.value=!0;try{let e=await x.create(G.value,{bankName:J.bankName.trim(),accountNumber:J.accountNumber.trim(),accountHolder:J.accountHolder.trim(),cardNumber:J.cardNumber.trim()||`-`,iban:J.iban.trim()||`-`,isActive:J.isActive,displayOrder:V.value.length+1});V.value.push(e),z.success(`حساب بانکی جدید ثبت شد.`),Z()}catch(e){z.error(e instanceof v?e.message:`ثبت حساب انجام نشد.`)}finally{W.value=!1}}async function $(e,t){await x.setActive(e,t)}function ge(){R.push(`/companies`)}return(e,n)=>(u(),c(`div`,se,[s(`div`,ce,[s(`div`,null,[s(`h1`,le,` مدیریت حساب‌های بانکی — `+t(B.value?.name??`…`),1)]),s(`div`,{class:`admin-action-group`},[s(`button`,{type:`button`,class:`admin-btn admin-btn--primary`,onClick:X},` افزودن حساب `),s(`button`,{type:`button`,class:`admin-btn admin-btn--outline admin-btn--sm`,onClick:ge},` بازگشت `)])]),K.value.length?(u(),c(`div`,ue,[s(`div`,de,[s(`table`,fe,[n[6]||=s(`thead`,null,[s(`tr`,null,[s(`th`,null,`بانک`),s(`th`,null,`حساب بانکی`),s(`th`,null,`نام صاحب`),s(`th`,null,`شماره کارت`),s(`th`,null,`شماره شبا`),s(`th`,{class:`status`},`وضعیت`)])],-1),s(`tbody`,null,[(u(!0),c(p,null,i(K.value,e=>(u(),c(`tr`,{key:e.id},[s(`td`,null,t(e.bankName),1),s(`td`,null,t(e.accountNumber),1),s(`td`,null,t(e.accountHolder),1),s(`td`,null,t(e.cardNumber||`—`),1),s(`td`,null,t(e.iban||`—`),1),s(`td`,pe,[l(S,{id:e.id,modelValue:e.isActive,"onUpdate:modelValue":t=>e.isActive=t,"entity-name":e.bankName,"entity-type":`حساب بانکی`,persist:$},null,8,[`id`,`modelValue`,`onUpdate:modelValue`,`entity-name`])])]))),128))])])])])):(u(),d(oe,{key:0,class:`admin-card`,icon:`wallet`,title:`حساب بانکی ثبت نشده`,description:`برای این شرکت هنوز حساب بانکی ثبت نشده است.`},{default:r(()=>[s(`button`,{type:`button`,class:`admin-btn admin-btn--primary admin-btn--sm`,onClick:X},` افزودن حساب `)]),_:1})),K.value.length?(u(),c(`div`,C,[(u(!0),c(p,null,i(K.value,e=>(u(),c(`article`,{key:e.id,class:`admin-card-item`},[s(`div`,w,[s(`p`,T,`بانک `+t(e.bankName),1),l(S,{id:e.id,modelValue:e.isActive,"onUpdate:modelValue":t=>e.isActive=t,"entity-name":e.bankName,"entity-type":`حساب بانکی`,persist:$},null,8,[`id`,`modelValue`,`onUpdate:modelValue`,`entity-name`])]),s(`div`,E,[s(`span`,null,t(e.accountHolder),1),s(`span`,null,`حساب: `+t(e.accountNumber),1),e.cardNumber?(u(),c(`span`,D,`کارت: `+t(e.cardNumber),1)):g(``,!0),e.iban?(u(),c(`span`,O,t(e.iban),1)):g(``,!0)])]))),128))])):g(``,!0),l(b,{open:H.value,title:`افزودن حساب بانکی`,size:`lg`,onClose:Z},{footer:r(()=>[s(`button`,{type:`button`,class:`admin-btn admin-btn--outline`,onClick:Z},` انصراف `),s(`button`,{type:`button`,class:`admin-btn admin-btn--primary`,disabled:!Y.value||W.value,onClick:Q},` ثبت حساب `,8,me)]),default:r(()=>[s(`form`,{class:`admin-form`,onSubmit:ne(Q,[`prevent`])},[U.value?(u(),c(`p`,k,t(U.value),1)):g(``,!0),s(`div`,A,[s(`div`,j,[n[7]||=s(`label`,{for:`bank-name`},[f(`نام بانک `),s(`span`,{class:`admin-form__required`},`*`)],-1),a(s(`input`,{id:`bank-name`,"onUpdate:modelValue":n[0]||=e=>J.bankName=e,type:`text`,class:`admin-input`,placeholder:`مثال: ملت`},null,512),[[_,J.bankName]])]),s(`div`,M,[n[8]||=s(`label`,{for:`account-number`},[f(` شماره حساب `),s(`span`,{class:`admin-form__required`},`*`)],-1),a(s(`input`,{id:`account-number`,"onUpdate:modelValue":n[1]||=e=>J.accountNumber=e,type:`text`,class:`admin-input`,placeholder:`1234567890`,inputmode:`numeric`,dir:`ltr`},null,512),[[_,J.accountNumber]])])]),s(`div`,N,[n[9]||=s(`label`,{for:`account-holder`},[f(` نام صاحب حساب `),s(`span`,{class:`admin-form__required`},`*`)],-1),a(s(`input`,{id:`account-holder`,"onUpdate:modelValue":n[2]||=e=>J.accountHolder=e,type:`text`,class:`admin-input`},null,512),[[_,J.accountHolder]])]),s(`div`,P,[s(`div`,F,[n[10]||=s(`label`,{for:`card-number`},`شماره کارت`,-1),a(s(`input`,{id:`card-number`,"onUpdate:modelValue":n[3]||=e=>J.cardNumber=e,type:`text`,class:`admin-input`,placeholder:`6104 3378 0077 1234`,inputmode:`numeric`,dir:`ltr`},null,512),[[_,J.cardNumber]])]),s(`div`,I,[n[11]||=s(`label`,{for:`iban`},`شماره شبا`,-1),a(s(`input`,{id:`iban`,"onUpdate:modelValue":n[4]||=e=>J.iban=e,type:`text`,class:`admin-input`,placeholder:`IR...`,dir:`ltr`},null,512),[[_,J.iban]])])]),s(`div`,L,[l(ae,{modelValue:J.isActive,"onUpdate:modelValue":n[5]||=e=>J.isActive=e,label:`وضعیت`},null,8,[`modelValue`])])],32)]),_:1},8,[`open`])]))}}),[[`__scopeId`,`data-v-0011826b`]]);export{R as default};