1 line
6.1 KiB
JavaScript
1 line
6.1 KiB
JavaScript
import{$ as e,At as t,E as n,M as r,U as ee,c as i,d as a,g as te,h as o,k as s,l as c,r as l,s as u,st as d,t as f,u as p}from"./_plugin-vue_export-helper-QrIvvHC8.js";import{a as ne,f as m,t as h}from"./http-BjLkjdQu.js";import{L as re,_ as g,i as _,o as ie,w as ae,z as oe}from"./index-pv0Ktkd1.js";import{t as se}from"./AdminPageSkeleton-oWhHYjl4.js";import{t as ce}from"./AdminSelect-DFH4VaRE.js";import{t as v}from"./StatusBadge-jGFZVW4C.js";var le={class:`checks-list-page`},y={class:`admin-page-header`},b={class:`checks-list-page__summary`},x={key:0},S={class:`checks-list-page__filters admin-card`},C={class:`checks-list-page__search`},w={class:`checks-list-page__table admin-card desktop-only`},T={class:`admin-table-wrap`},E={class:`admin-table`},D=[`onClick`],O={dir:`ltr`},k={class:`admin-action-group`},A=[`disabled`,`onClick`],j=[`disabled`,`onClick`],M=[`onClick`],N={key:0,class:`checks-list-page__empty`},P={class:`compact-only admin-card-list`},ue={class:`admin-card-item__header`},F={class:`admin-card-item__title`},I={class:`admin-card-item__meta`},L={key:0},R={class:`admin-card-item__actions`},z=[`disabled`,`onClick`],B=[`disabled`,`onClick`],V=[`onClick`],H={key:0,class:`checks-list-page__empty`},U=f(te({__name:`ChecksListView`,setup(te){let f=oe(),U=ne(),W=e([]),G=e(!0),K=e(``),q=e(`all`),J=e(null),de=[{value:`all`,label:`همه وضعیتها`},{value:`pending_review`,label:`در انتظار بررسی`},{value:`approved`,label:`تأیید شده`},{value:`rejected`,label:`رد شده`}],Y=u(()=>{let e=W.value;q.value!==`all`&&(e=e.filter(e=>e.status===q.value));let t=K.value.trim();return t&&(e=e.filter(e=>(e.orderNumber??``).includes(t)||(e.customerName??``).includes(t)||(e.bankName??``).includes(t)||(e.sayadId??``).includes(t))),e}),X=u(()=>W.value.filter(e=>e.status===`pending_review`).length);function Z(e){return e===`approved`?`final_approval`:e===`rejected`?`needs_correction`:`pending_check_review`}async function fe(){let e=await ae.list();W.value=e.flatMap(e=>(e.checks??[]).map(t=>({...t,orderNumber:e.orderNumber,customerName:e.customerName,orderStatus:e.status,settlementType:e.settlementMethod??e.settlementType??null})))}async function pe(){G.value=!0;try{W.value=await g.list()}catch{try{await fe()}catch(e){U.error(e instanceof h?e.message:`بارگذاری چکها انجام نشد.`)}}finally{G.value=!1}}n(()=>{pe()});function Q(e){f.push(`/orders/${e.orderId}/checks`)}async function $(e,t){J.value=e.id;try{let n=await g.updateStatus(e.id,{status:t}),r=W.value.findIndex(t=>t.id===e.id);r!==-1&&(W.value[r]={...W.value[r],...n,orderNumber:e.orderNumber,customerName:e.customerName,orderStatus:e.orderStatus,settlementType:e.settlementType}),U.success(t===`approved`?`چک تأیید شد.`:`چک رد شد.`)}catch(e){U.error(e instanceof h?e.message:`بهروزرسانی وضعیت چک انجام نشد.`)}finally{J.value=null}}return(e,n)=>(s(),a(`div`,le,[i(`div`,y,[n[2]||=i(`div`,null,[i(`h1`,{class:`admin-page-header__title`},`چکها`)],-1),i(`div`,b,[i(`span`,null,t(W.value.length)+` چک`,1),X.value?(s(),a(`span`,x,t(X.value)+` در انتظار بررسی`,1)):p(``,!0)])]),i(`div`,S,[i(`div`,C,[o(re,{name:`search`,size:18}),ee(i(`input`,{"onUpdate:modelValue":n[0]||=e=>K.value=e,type:`search`,class:`checks-list-page__search-input`,placeholder:`جستجو در شماره سفارش، مشتری، بانک، صیاد...`},null,512),[[m,K.value]])]),o(ce,{modelValue:q.value,"onUpdate:modelValue":n[1]||=e=>q.value=e,class:`checks-list-page__status-select`,"aria-label":`فیلتر وضعیت چک`,options:de},null,8,[`modelValue`])]),G.value?(s(),c(se,{key:0,variant:`table`})):(s(),a(l,{key:1},[i(`div`,w,[i(`div`,T,[i(`table`,E,[n[3]||=i(`thead`,null,[i(`tr`,null,[i(`th`,null,`شماره سفارش`),i(`th`,null,`مشتری`),i(`th`,null,`ردیف`),i(`th`,null,`مبلغ`),i(`th`,null,`بانک`),i(`th`,null,`شناسه صیادی`),i(`th`,null,`سررسید`),i(`th`,null,`وضعیت`),i(`th`,null,`عملیات`)])],-1),i(`tbody`,null,[(s(!0),a(l,null,r(Y.value,e=>(s(),a(`tr`,{key:e.id},[i(`td`,null,[i(`button`,{type:`button`,class:`checks-list-page__order-link`,onClick:t=>Q(e)},t(e.orderNumber||e.orderId),9,D)]),i(`td`,null,t(e.customerName||`—`),1),i(`td`,null,t(e.row),1),i(`td`,null,t(d(_)(e.amount)),1),i(`td`,null,t(e.bankName||`—`),1),i(`td`,O,t(e.sayadId||`—`),1),i(`td`,null,t(e.dueDate.slice(0,10)),1),i(`td`,null,[o(v,{status:Z(e.status)},null,8,[`status`])]),i(`td`,null,[i(`div`,k,[e.status===`pending_review`?(s(),a(l,{key:0},[i(`button`,{type:`button`,class:`admin-btn admin-btn--outline-success admin-btn--xs`,disabled:J.value===e.id,onClick:t=>$(e,`approved`)},` تأیید `,8,A),i(`button`,{type:`button`,class:`admin-btn admin-btn--outline-danger admin-btn--xs`,disabled:J.value===e.id,onClick:t=>$(e,`rejected`)},` رد `,8,j)],64)):p(``,!0),i(`button`,{type:`button`,class:`admin-btn admin-btn--outline admin-btn--xs`,onClick:t=>Q(e)},` جزئیات سفارش `,8,M)])])]))),128))])])]),Y.value.length?p(``,!0):(s(),a(`p`,N,` چکی با این فیلتر یافت نشد. `))]),i(`div`,P,[(s(!0),a(l,null,r(Y.value,e=>(s(),a(`article`,{key:e.id,class:`admin-card-item`},[i(`div`,ue,[i(`p`,F,t(e.orderNumber||e.orderId)+` — چک `+t(e.row),1),o(v,{status:Z(e.status)},null,8,[`status`])]),i(`div`,I,[i(`span`,null,t(e.customerName||`—`),1),i(`span`,null,t(d(_)(e.amount)),1),i(`span`,null,t(e.bankName||`—`),1),i(`span`,null,`سررسید `+t(e.dueDate.slice(0,10)),1),e.createdAt?(s(),a(`span`,L,`ثبت `+t(d(ie)(e.createdAt)),1)):p(``,!0)]),i(`div`,R,[e.status===`pending_review`?(s(),a(l,{key:0},[i(`button`,{type:`button`,class:`admin-btn admin-btn--outline-success admin-btn--xs`,disabled:J.value===e.id,onClick:t=>$(e,`approved`)},` تأیید `,8,z),i(`button`,{type:`button`,class:`admin-btn admin-btn--outline-danger admin-btn--xs`,disabled:J.value===e.id,onClick:t=>$(e,`rejected`)},` رد `,8,B)],64)):p(``,!0),i(`button`,{type:`button`,class:`admin-btn admin-btn--outline admin-btn--xs`,onClick:t=>Q(e)},` جزئیات سفارش `,8,V)])]))),128)),Y.value.length?p(``,!0):(s(),a(`p`,H,` چکی با این فیلتر یافت نشد. `))])],64))]))}}),[[`__scopeId`,`data-v-09633f1f`]]);export{U as default}; |