Files
nademitex_admin/dist/assets/BankAccountsView-33uUkn7P.js
T
mohmdsdgandCopilot 9854842ada fix(auth): secure sessions and app routing
Validate sessions against the API, honor configurable base paths, and route unknown pages to 404. Keep development ports stable so user and admin apps cannot be confused.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-24 20:14:11 +03:30

1 line
6.5 KiB
JavaScript

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