Files
nademitex_user/dist/assets/OrdersView-DdeDkbea.js
T
safavimohadeseh78 bbb3a15d1c Polish customer app UI and streamline CRM overlays.
Replace standalone customer create and meeting report pages with overlays, add TimeInput, remove opaque input backgrounds app-wide, improve desktop layouts/skeletons, and refresh shopping, customer, and reminder screens.
2026-09-15 21:41:48 +03:30

1 line
17 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import{A as e,Ct as t,Et as n,L as r,M as i,N as a,O as o,P as s,Q as c,R as l,St as u,Y as d,Z as f,_ as p,g as m,j as h,mt as g,n as _,q as v,rt as y,t as b,tt as x,z as S}from"./BasicIcon-C6boaehV.js";import{i as C,n as w,o as T,u as E}from"./format-BHJptHdF.js";import{t as D}from"./catalog-s7nVUdlj.js";import{S as O,c as k,d as A,i as j,n as M,o as N}from"./index-DzzUgmYT.js";import{t as P}from"./EmptyState-C_QQeA_h.js";import{r as F,t as I}from"./constants-DXXK14Zz.js";import{t as L}from"./IconChevronBack-DORV2H0q.js";import{n as R,t as z}from"./IconFamBaftLogo-BaP40Dff.js";import{t as B}from"./IconCheckCircleOutline-Bx3NxSDX.js";import{t as V}from"./IconFilter-D9NdLZ7w.js";import{t as H}from"./IconMoreVertical-BPkOm_2U.js";var U=[`awaiting_review`,`awaiting_check_review`],W=[`submitted`,`pricing`,`check_in_progress`,`awaiting_cash_confirmation`,`preparing`,`ready_to_ship`,`needs_correction`,`awaiting_settlement_fix`,`cash_in_progress`,`awaiting_cash_payment`,`cash_payment_submitted`,`check_needs_fix`,`awaiting_settlement`,`cash_invoice_issued`],G=[`shipped`],K=[`delivered`,`final_approved`,`checks_approved`,`cash_confirmed`],q=[`cancelled`,`rejected`,`expired`,`check_rejected`],ee=[...U,...W,...G];function te(e,t){switch(t){case`review`:return U.includes(e);case`in_progress`:return W.includes(e);case`shipped`:return G.includes(e);case`delivered`:return K.includes(e);case`cancelled`:return q.includes(e);default:return!0}}function ne(e,t){return t===`active`?ee.includes(e):t===`done`?K.includes(e):t!==`cancelled`||q.includes(e)}var J=5,Y=5;function X(){let t=p(),n=m(),r=A(),i=k(),a=D(),o=g(1),s=g(1),c=g(``);v(async()=>{await Promise.all([r.hydrate(),a.loadCompanies()])}),x(()=>n.query.submitted,e=>{let r=Number(e);if(!Number.isFinite(r)||r<1){c.value=``;return}c.value=r===1?`پیش‌سفارش با موفقیت ثبت شد.`:`${E(String(r))} پیش‌سفارش (برای شرکت‌های مختلف) ثبت شد.`;let{submitted:i,...a}=n.query;t.replace({query:a})},{immediate:!0});let l=e({get:()=>t.currentRoute.value.query.tab??`all`,set:e=>t.replace({query:{...t.currentRoute.value.query,tab:e}})}),u=e({get:()=>t.currentRoute.value.query.filter??`all`,set:e=>t.replace({query:{...t.currentRoute.value.query,filter:e===`all`?void 0:e}})}),d=e(()=>t.currentRoute.value.query.q??``),f=e(()=>i.user?r.userOrders(i.user.id):[]),h=e(()=>({total:f.value.length,review:f.value.filter(e=>U.includes(e.status)).length,inProgress:f.value.filter(e=>W.includes(e.status)).length,done:f.value.filter(e=>K.includes(e.status)).length}));function _(e,t){if(!t.trim())return!0;let n=t.trim().toLowerCase();return e.orderNumber.toLowerCase().includes(n)||e.companyName.toLowerCase().includes(n)}let y=e(()=>f.value.filter(e=>_(e,d.value)).filter(e=>ne(e.status,l.value))),b=e(()=>f.value.filter(e=>_(e,d.value)).filter(e=>te(e.status,u.value))),S=e(()=>{let e=(o.value-1)*J;return b.value.slice(e,e+J)}),C=e(()=>Math.max(1,Math.ceil(b.value.length/J))),w=e(()=>b.value.length===0?{start:0,end:0}:{start:(o.value-1)*J+1,end:Math.min(o.value*J,b.value.length)}),T=e(()=>{let e=C.value,t=o.value;if(e<=7)return Array.from({length:e},(e,t)=>t+1);let n=[1];t>3&&n.push(`ellipsis`);let r=Math.max(2,t-1),i=Math.min(e-1,t+1);for(let e=r;e<=i;e+=1)n.push(e);return t<e-2&&n.push(`ellipsis`),e>1&&n.push(e),n}),O=e(()=>Math.max(1,Math.ceil(y.value.length/Y))),j=e(()=>{let e=(s.value-1)*Y;return y.value.slice(e,e+Y)}),M=e(()=>y.value.length===0?{start:0,end:0}:{start:(s.value-1)*Y+1,end:Math.min(s.value*Y,y.value.length)}),N=e(()=>{let e=O.value,t=s.value;if(e<=5)return Array.from({length:e},(e,t)=>t+1);let n=[1];t>3&&n.push(`ellipsis`);let r=Math.max(2,t-1),i=Math.min(e-1,t+1);for(let e=r;e<=i;e+=1)n.push(e);return t<e-2&&n.push(`ellipsis`),e>1&&n.push(e),n});x([b,u,d],()=>{o.value=1}),x([y,l,d],()=>{s.value=1});function P(e){return a.getCompany(e.companyId)?.slug??`par`}function F(e){return K.includes(e.status)?`success`:P(e)===`fam-baft`?`fam-baft`:`par`}function I(e){t.push(`/orders/${e}`)}function L(e){e<1||e>C.value||(o.value=e)}function R(e){e<1||e>O.value||(s.value=e)}function z(e){u.value=u.value===e&&e!==`all`?`all`:e}function B(e){u.value=e}return{tab:l,desktopFilter:u,searchQuery:d,stats:h,filteredOrdersMobile:y,filteredOrdersDesktop:b,paginatedOrders:S,paginatedOrdersMobile:j,totalPages:C,mobileTotalPages:O,paginationRange:w,mobilePaginationRange:M,visiblePages:T,mobileVisiblePages:N,currentPage:o,mobilePage:s,companySlug:P,iconVariant:F,submitSuccessMessage:c,goToOrder:I,setPage:L,setMobilePage:R,setDesktopFilter:z,viewStatFilter:B}}var Z=[`aria-selected`,`onClick`],re=_(S({__name:`FilterTabs`,props:{modelValue:{},tabs:{},equal:{type:Boolean}},emits:[`update:modelValue`],setup(e){return(r,i)=>(d(),s(`div`,{class:t([`filter-tabs`,{"filter-tabs--equal":e.equal}]),role:`tablist`},[(d(!0),s(o,null,f(e.tabs,i=>(d(),s(`button`,{key:i.id,type:`button`,role:`tab`,class:t([`filter-tab`,{active:e.modelValue===i.id}]),"aria-selected":e.modelValue===i.id,onClick:e=>r.$emit(`update:modelValue`,i.id)},n(i.label),11,Z))),128))],2))}}),[[`__scopeId`,`data-v-4cd20e9b`]]),ie=_(S({__name:`BaseBadge`,props:{variant:{}},setup(e){return(n,r)=>(d(),s(`span`,{class:t([`badge`,`badge-${e.variant??`neutral`}`])},[c(n.$slots,`default`,{},void 0,!0)],2))}}),[[`__scopeId`,`data-v-5e1be8f4`]]),Q=S({__name:`StatusBadge`,props:{status:{}},setup(t){let a=t,o=e(()=>I[a.status]??a.status),s=e(()=>F[a.status]??`neutral`);return(e,t)=>(d(),i(ie,{variant:s.value},{default:y(()=>[r(n(o.value),1)]),_:1},8,[`variant`]))}}),ae={class:`page orders-mobile-page`},oe={class:`orders-mobile-page__nav`},se={class:`page__scroll page__scroll--with-nav orders-mobile-page__scroll`},ce={key:0,class:`orders-mobile-page__list`},le=[`onClick`],ue={class:`order-card__content`},de={class:`order-card__number`},fe={class:`order-card__company`},pe={key:0,class:`order-card__amount`},me={key:2,class:`orders-mobile-pagination`},he={class:`orders-mobile-pagination__summary`},ge={class:`orders-mobile-pagination__controls`},_e=[`disabled`],ve={key:0,class:`orders-mobile-pagination__ellipsis`},ye=[`onClick`],be=[`disabled`],xe=_(S({__name:`MobileOrdersPage`,props:{tab:{},tabs:{},orders:{},totalCount:{},currentPage:{},totalPages:{},paginationRange:{},visiblePages:{},companySlug:{type:Function},iconVariant:{type:Function}},emits:[`update:tab`,`select`,`back`,`set-page`],setup(e,{emit:c}){let p=c;return(c,m)=>(d(),s(`div`,ae,[h(`header`,oe,[h(`button`,{type:`button`,class:`nav-btn`,"aria-label":`بازگشت`,onClick:m[0]||=e=>p(`back`)},[l(L,{size:20})]),m[5]||=h(`h1`,{class:`orders-mobile-page__title`},`سفارش‌ها`,-1),l(j,{variant:`inline`})]),l(re,{"model-value":e.tab,tabs:e.tabs,equal:``,class:`orders-mobile-page__tabs`,"onUpdate:modelValue":m[1]||=e=>p(`update:tab`,e)},null,8,[`model-value`,`tabs`]),h(`div`,se,[e.orders.length>0?(d(),s(`div`,ce,[(d(!0),s(o,null,f(e.orders,r=>(d(),s(`button`,{key:r.id,type:`button`,class:`order-card`,onClick:e=>p(`select`,r.id)},[h(`div`,ue,[m[6]||=h(`span`,{class:`order-card__label`},`سفارش شماره`,-1),h(`strong`,de,n(r.orderNumber),1),h(`p`,fe,n(r.companyName),1),r.finalAmount?(d(),s(`p`,pe,n(u(w)(r.finalAmount)),1)):a(``,!0),l(Q,{status:r.status,class:`order-card__badge`},null,8,[`status`])]),h(`span`,{class:t([`order-card__icon`,`order-card__icon--${e.iconVariant(r)}`])},[e.companySlug(r)===`fam-baft`?(d(),i(z,{key:0,size:36})):(d(),i(R,{key:1,size:36}))],2)],8,le))),128))])):(d(),i(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:y(()=>[l(M,{onClick:m[2]||=e=>p(`back`)},{default:y(()=>[...m[7]||=[r(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1})),e.totalCount>0?(d(),s(`div`,me,[h(`p`,he,n(u(E)(String(e.paginationRange.start)))+`– `+n(u(E)(String(e.paginationRange.end)))+` از `+n(u(T)(e.totalCount)),1),h(`div`,ge,[h(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:e.currentPage<=1,"aria-label":`صفحه قبل`,onClick:m[3]||=t=>p(`set-page`,e.currentPage-1)},[l(N,{size:16,class:`orders-mobile-pagination__arrow--prev`})],8,_e),(d(!0),s(o,null,f(e.visiblePages,(r,i)=>(d(),s(o,{key:`${r}-${i}`},[r===`ellipsis`?(d(),s(`span`,ve,`…`)):(d(),s(`button`,{key:1,type:`button`,class:t([`orders-mobile-pagination__page`,{"orders-mobile-pagination__page--active":r===e.currentPage}]),onClick:e=>p(`set-page`,r)},n(u(E)(String(r))),11,ye))],64))),128)),h(`button`,{type:`button`,class:`orders-mobile-pagination__arrow`,disabled:e.currentPage>=e.totalPages,"aria-label":`صفحه بعد`,onClick:m[4]||=t=>p(`set-page`,e.currentPage+1)},[l(N,{size:16,class:`orders-mobile-pagination__arrow--next`})],8,be)])])):a(``,!0)])]))}}),[[`__scopeId`,`data-v-de30513b`]]),Se=S({__name:`IconHourglass`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(d(),i(b,{icon:`vuesax-linear:timer-1`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),Ce=S({__name:`IconProgressClock`,props:{size:{default:24},strokeWidth:{default:1.5},color:{default:null}},setup(e){return(t,n)=>(d(),i(b,{icon:`vuesax-linear:clock`,size:e.size,"stroke-width":e.strokeWidth,color:e.color},null,8,[`size`,`stroke-width`,`color`]))}}),we={class:`desktop-page orders-desktop-page`},Te={class:`orders-stats desktop-grid-4`},Ee={class:`orders-stat-card`},De={class:`orders-stat-card__head`},Oe={class:`orders-stat-card__icon orders-stat-card__icon--total`,"aria-hidden":`true`},ke={class:`orders-stat-card__value`},Ae={class:`orders-stat-card`},je={class:`orders-stat-card__head`},Me={class:`orders-stat-card__icon orders-stat-card__icon--review`,"aria-hidden":`true`},Ne={class:`orders-stat-card__value`},Pe={class:`orders-stat-card`},Fe={class:`orders-stat-card__head`},Ie={class:`orders-stat-card__icon orders-stat-card__icon--active`,"aria-hidden":`true`},Le={class:`orders-stat-card__value`},Re={class:`orders-stat-card`},ze={class:`orders-stat-card__head`},Be={class:`orders-stat-card__icon orders-stat-card__icon--done`,"aria-hidden":`true`},Ve={class:`orders-stat-card__value`},He={class:`desktop-toolbar`},Ue={class:`desktop-toolbar__actions`},We={type:`button`,class:`orders-toolbar__filter-btn`},Ge={class:`orders-toolbar__pills`,role:`tablist`,"aria-label":`فیلتر وضعیت`},Ke=[`aria-selected`,`onClick`],qe={key:0,class:`desktop-table-wrap`},Je={class:`desktop-table-scroll`},Ye={class:`desktop-table orders-table`},Xe={class:`orders-table__number`},Ze={class:`orders-table__amount`},Qe={class:`orders-table__date`},$e={class:`orders-table__actions`},et=[`onClick`],tt={type:`button`,class:`orders-table__menu`,"aria-label":`گزینه‌های بیشتر`},$={class:`orders-pagination`},nt={class:`orders-pagination__summary`},rt={class:`orders-pagination__controls`},it=[`disabled`],at={key:0,class:`orders-pagination__ellipsis`},ot=[`onClick`],st=[`disabled`],ct=S({__name:`DesktopOrdersPage`,props:{stats:{},desktopFilter:{},desktopFilterTabs:{},filteredOrders:{},paginatedOrders:{},paginationRange:{},visiblePages:{},currentPage:{},totalPages:{}},emits:[`viewStatFilter`,`setDesktopFilter`,`select`,`setPage`,`newOrder`],setup(e,{emit:a}){let c=a;return(a,p)=>(d(),s(`div`,we,[p[14]||=h(`header`,{class:`desktop-page__head`},[h(`h1`,{class:`desktop-page__title`},`سفارش‌ها`),h(`p`,{class:`desktop-page__subtitle`},`مدیریت و پیگیری سفارش‌های ثبت شده`)],-1),h(`div`,Te,[h(`article`,Ee,[h(`div`,De,[p[7]||=h(`span`,{class:`orders-stat-card__label orders-stat-card__label--total`},`همه سفارش‌ها`,-1),h(`span`,Oe,[l(O,{size:20})])]),h(`strong`,ke,n(u(T)(e.stats.total)),1),h(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:p[0]||=e=>c(`viewStatFilter`,`all`)},` مشاهده همه `)]),h(`article`,Ae,[h(`div`,je,[p[8]||=h(`span`,{class:`orders-stat-card__label orders-stat-card__label--review`},`در انتظار بررسی`,-1),h(`span`,Me,[l(Se,{size:20})])]),h(`strong`,Ne,n(u(T)(e.stats.review)),1),h(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:p[1]||=e=>c(`viewStatFilter`,`review`)},` مشاهده همه `)]),h(`article`,Pe,[h(`div`,Fe,[p[9]||=h(`span`,{class:`orders-stat-card__label orders-stat-card__label--active`},`در حال انجام`,-1),h(`span`,Ie,[l(Ce,{size:20})])]),h(`strong`,Le,n(u(T)(e.stats.inProgress)),1),h(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:p[2]||=e=>c(`viewStatFilter`,`in_progress`)},` مشاهده همه `)]),h(`article`,Re,[h(`div`,ze,[p[10]||=h(`span`,{class:`orders-stat-card__label orders-stat-card__label--done`},`تکمیل شده`,-1),h(`span`,Be,[l(B,{size:20})])]),h(`strong`,Ve,n(u(T)(e.stats.done)),1),h(`button`,{type:`button`,class:`orders-stat-card__link`,onClick:p[3]||=e=>c(`viewStatFilter`,`delivered`)},` مشاهده همه `)])]),h(`div`,He,[h(`div`,Ue,[h(`button`,We,[l(V,{size:18}),p[11]||=r(` فیلترها `,-1)])]),h(`div`,Ge,[(d(!0),s(o,null,f(e.desktopFilterTabs,r=>(d(),s(`button`,{key:r.id,type:`button`,role:`tab`,class:t([`orders-filter-pill`,{"orders-filter-pill--active":e.desktopFilter===r.id}]),"aria-selected":e.desktopFilter===r.id,onClick:e=>c(`setDesktopFilter`,r.id)},n(r.label),11,Ke))),128))])]),e.filteredOrders.length>0?(d(),s(`div`,qe,[h(`div`,Je,[h(`table`,Ye,[p[12]||=h(`thead`,null,[h(`tr`,null,[h(`th`,{scope:`col`},`شماره سفارش`),h(`th`,{scope:`col`},`شرکت`),h(`th`,{scope:`col`},`مبلغ فاکتور (تومان)`),h(`th`,{scope:`col`},`وضعیت`),h(`th`,{scope:`col`},`تاریخ ثبت`),h(`th`,{scope:`col`},`عملیات`)])],-1),h(`tbody`,null,[(d(!0),s(o,null,f(e.paginatedOrders,e=>(d(),s(`tr`,{key:e.id},[h(`td`,Xe,n(e.orderNumber),1),h(`td`,null,n(e.companyName),1),h(`td`,Ze,n(e.finalAmount?u(T)(e.finalAmount):`—`),1),h(`td`,null,[l(Q,{status:e.status},null,8,[`status`])]),h(`td`,Qe,n(u(C)(e.createdAt)),1),h(`td`,null,[h(`div`,$e,[h(`button`,{type:`button`,class:`orders-table__action`,onClick:t=>c(`select`,e.id)},` مشاهده `,8,et),h(`button`,tt,[l(H,{size:18})])])])]))),128))])])]),h(`div`,$,[h(`span`,nt,` نمایش `+n(u(T)(e.paginationRange.start))+` تا `+n(u(T)(e.paginationRange.end))+` از `+n(u(T)(e.filteredOrders.length))+` سفارش `,1),h(`div`,rt,[h(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:e.currentPage<=1,"aria-label":`صفحه قبل`,onClick:p[4]||=t=>c(`setPage`,e.currentPage-1)},[l(N,{size:16,class:`orders-pagination__arrow-icon--prev`})],8,it),(d(!0),s(o,null,f(e.visiblePages,(r,i)=>(d(),s(o,{key:`${r}-${i}`},[r===`ellipsis`?(d(),s(`span`,at,`…`)):(d(),s(`button`,{key:1,type:`button`,class:t([`orders-pagination__page`,{"orders-pagination__page--active":r===e.currentPage}]),onClick:e=>c(`setPage`,r)},n(u(T)(r)),11,ot))],64))),128)),h(`button`,{type:`button`,class:`orders-pagination__arrow`,disabled:e.currentPage>=e.totalPages,"aria-label":`صفحه بعد`,onClick:p[5]||=t=>c(`setPage`,e.currentPage+1)},[l(N,{size:16,class:`orders-pagination__arrow-icon--next`})],8,st)])])])):(d(),i(P,{key:1,variant:`orders`,message:`هنوز سفارشی ثبت نکرده‌اید`},{default:y(()=>[l(M,{onClick:p[6]||=e=>c(`newOrder`)},{default:y(()=>[...p[13]||=[r(`ثبت سفارش جدید`,-1)]]),_:1})]),_:1}))]))}}),lt={class:`orders-view`},ut={key:0,class:`orders-view__success`,role:`status`},dt=_(S({__name:`OrdersView`,setup(e){let t=p(),{tab:r,desktopFilter:i,stats:o,filteredOrdersMobile:c,filteredOrdersDesktop:f,paginatedOrders:m,paginatedOrdersMobile:h,totalPages:g,mobileTotalPages:_,paginationRange:v,mobilePaginationRange:y,visiblePages:b,mobileVisiblePages:x,currentPage:S,mobilePage:C,companySlug:w,iconVariant:T,submitSuccessMessage:E,goToOrder:D,setPage:O,setMobilePage:k,setDesktopFilter:A,viewStatFilter:j}=X(),M=[{id:`all`,label:`همه`},{id:`active`,label:`در جریان`},{id:`done`,label:`تکمیل شده`},{id:`cancelled`,label:`لغو شده`}],N=[{id:`review`,label:`در انتظار بررسی`},{id:`in_progress`,label:`در حال انجام`},{id:`shipped`,label:`ارسال شده`},{id:`delivered`,label:`تحویل شده`},{id:`cancelled`,label:`لغو شده`}];return(e,p)=>(d(),s(`div`,lt,[u(E)?(d(),s(`p`,ut,n(u(E)),1)):a(``,!0),l(xe,{class:`mobile-only`,tab:u(r),tabs:M,orders:u(h),"total-count":u(c).length,"current-page":u(C),"total-pages":u(_),"pagination-range":u(y),"visible-pages":u(x),"company-slug":u(w),"icon-variant":u(T),"onUpdate:tab":p[0]||=e=>r.value=e,onSelect:u(D),onBack:p[1]||=e=>u(t).push(`/`),onSetPage:u(k)},null,8,[`tab`,`orders`,`total-count`,`current-page`,`total-pages`,`pagination-range`,`visible-pages`,`company-slug`,`icon-variant`,`onSelect`,`onSetPage`]),l(ct,{class:`desktop-only`,stats:u(o),"desktop-filter":u(i),"desktop-filter-tabs":N,"filtered-orders":u(f),"paginated-orders":u(m),"pagination-range":u(v),"visible-pages":u(b),"current-page":u(S),"total-pages":u(g),onViewStatFilter:u(j),onSetDesktopFilter:u(A),onSelect:u(D),onSetPage:u(O),onNewOrder:p[2]||=e=>u(t).push(`/catalogs`)},null,8,[`stats`,`desktop-filter`,`filtered-orders`,`paginated-orders`,`pagination-range`,`visible-pages`,`current-page`,`total-pages`,`onViewStatFilter`,`onSetDesktopFilter`,`onSelect`,`onSetPage`])]))}}),[[`__scopeId`,`data-v-9dcaa78d`]]);export{dt as default};