Files
tehran_taj/apps/admin-panel/dist/assets/CustomerDetail-BqjntmNs.js
T
s.esmaeiliandClaude Opus 5.5 2bbd9408dd build: rebuild the server bundle, admin panel and both apps from main
Fresh release output after merging dev: apps/api/release (server
bundle, migrations and the database client) and the three front-end
dist folders. All three front-ends type-check clean.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 10:24:53 +03:30

2 lines
9.5 KiB
JavaScript

import{d as Z,u as ta,v as aa,o as c,a as A,w as e,c as l,b as m,f as s,t as o,F as j,n as D,s as P,i as v,l as f,p as Q,x as k,z as X,r as u,j as la,h as S}from"./index-DDKWZYPX.js";import{j as U,b as na}from"./filters-CqJCHW3n.js";import{m as oa}from"./index-FKca-jp6.js";import{_ as ea}from"./_plugin-vue_export-helper-DlAUqK2U.js";const sa={key:1,class:"muted"},ia={class:"muted small"},da={key:1,class:"muted"},ca={key:0,class:"muted small mt-2"},ua={key:0,class:"warn"},ra=Z({__name:"CustomerAccountingCard",props:{customerId:{}},setup(I){const T=I,W={LINKED:"جفت با موبایل",IMPORTED:"وارد شده از حسابداری",PUSHED:"ساخته شده از اپ",MANUAL:"دستی"},g={PENDING:"در صف",SENDING:"در حال ارسال",SENT:"ارسال شد",FAILED:"ناموفق",NEEDS_REVIEW:"نیاز به بررسی",RESOLVED:"حل‌شده"},h=ta(),t=f(null),p=f(!1),x=f(""),B=Q(()=>!!h.hasPermission("config.accounting")&&t.value&&t.value.provider!=="none"),y=Q(()=>{var i,n;return(n=(i=t.value)==null?void 0:i.jobs)==null?void 0:n[0]}),w=(i,n)=>i==null?"—":Number(i).toLocaleString("fa-IR",{maximumFractionDigits:n}),E=i=>Number(i)>0?"debt":Number(i)<0?"credit":"",R=i=>i?oa(i).format("jYYYY/jMM/jDD HH:mm"):"";async function $(){if(h.hasPermission("config.accounting")){p.value=!0;try{const{data:i}=await k.get(`admin/accounting/customers/${T.customerId}`);t.value=i}catch{t.value=null}finally{p.value=!1}}}async function V(){var i,n;try{await k.post("admin/accounting/links",{entityType:"CUSTOMER",entityId:T.customerId,externalCode:x.value.trim()}),X.success("لینک شد"),x.value="",$()}catch(r){X.error(((n=(i=r==null?void 0:r.response)==null?void 0:i.data)==null?void 0:n.message)??"خطا")}}async function N(){var i;(i=t.value)!=null&&i.link&&(await k.delete(`admin/accounting/links/${t.value.link.id}`),$())}return aa($),(i,n)=>{const r=u("a-tag"),b=u("a-descriptions-item"),L=u("a-descriptions"),z=u("a-input"),C=u("a-button"),F=u("a-popconfirm"),O=u("a-space"),a=u("a-spin"),d=u("a-card");return B.value?(c(),A(d,{key:0,size:"small",title:"حسابداری",class:"mt-4"},{default:e(()=>[l(a,{spinning:p.value},{default:e(()=>[l(L,{bordered:"",size:"small",column:3},{default:e(()=>[l(b,{label:"کد حساب"},{default:e(()=>{var _;return[(_=t.value)!=null&&_.link?(c(),m(j,{key:0},[s(o(t.value.link.externalCode)+" ",1),l(r,{class:"ms-2"},{default:e(()=>[s(o(W[t.value.link.origin]??t.value.link.origin),1)]),_:1})],64)):(c(),m("span",sa,"لینک نشده"))]}),_:1}),l(b,{label:"مانده‌ی حسابداری (گرم / ریال)"},{default:e(()=>{var _;return[(_=t.value)!=null&&_.accounting?(c(),m(j,{key:0},[D("span",{class:P(E(t.value.accounting.gold))},o(w(t.value.accounting.gold,3)),3),n[1]||(n[1]=s(" / ",-1)),D("span",{class:P(E(t.value.accounting.rial))},o(w(t.value.accounting.rial,0)),3),D("div",ia,o(R(t.value.accounting.at)),1)],64)):(c(),m("span",da,"—"))]}),_:1}),l(b,{label:"مانده‌ی دفتر اپ (گرم / ریال)"},{default:e(()=>{var _,M,Y,G,H,J,K,q;return[D("span",{class:P(E((M=(_=t.value)==null?void 0:_.internal)==null?void 0:M.gold))},o(w((G=(Y=t.value)==null?void 0:Y.internal)==null?void 0:G.gold,3)),3),n[2]||(n[2]=s(" / ",-1)),D("span",{class:P(E((J=(H=t.value)==null?void 0:H.internal)==null?void 0:J.rial))},o(w((q=(K=t.value)==null?void 0:K.internal)==null?void 0:q.rial,0)),3),n[3]||(n[3]=D("div",{class:"muted small"},"مبنای سقف اعتبار",-1))]}),_:1})]),_:1}),y.value?(c(),m("div",ca,[s(" آخرین ارسال: "+o(g[y.value.status]??y.value.status)+" — "+o(R(y.value.updatedAt))+" ",1),y.value.lastError?(c(),m("span",ua," — "+o(y.value.lastError),1)):v("",!0)])):v("",!0),l(O,{class:"mt-2"},{default:e(()=>{var _;return[l(z,{value:x.value,"onUpdate:value":n[0]||(n[0]=M=>x.value=M),dir:"ltr",placeholder:"کد حساب در حسابداری",style:{width:"200px"}},null,8,["value"]),l(C,{size:"small",disabled:!x.value.trim(),onClick:V},{default:e(()=>[...n[4]||(n[4]=[s("لینک دستی",-1)])]),_:1},8,["disabled"]),(_=t.value)!=null&&_.link?(c(),A(F,{key:0,title:"لینک حذف شود؟",onConfirm:N},{default:e(()=>[l(C,{size:"small",danger:""},{default:e(()=>[...n[5]||(n[5]=[s("حذف لینک",-1)])]),_:1})]),_:1})):v("",!0)]}),_:1})]),_:1},8,["spinning"])]),_:1})):v("",!0)}}}),ma=ea(ra,[["__scopeId","data-v-3185cd59"]]),_a={key:0,class:"stats mt-4"},va=Z({__name:"CustomerDetail",props:{title:{default:"مشاهده اطلاعات مشتری"},showWallet:{type:Boolean,default:!1},showActivity:{type:Boolean,default:!1},defaultTab:{default:"orders"}},setup(I){const T=I,g=la().params.id,h=f(!1),t=f(void 0),p=f(void 0),x=f([]),B=f([]),y=f([]),w=f([]),E=[{title:"شماره سفارش",dataIndex:"name"},{title:"وزن",dataIndex:"w"},{title:"تعداد آیتم",dataIndex:"items_count"},{title:"شعبه",dataIndex:"branch"},{title:"تاریخ",dataIndex:"caj"}],R=[{title:"نوع",dataIndex:"type"},{title:"مقدار",dataIndex:"value"},{title:"وضعیت",dataIndex:"confirmed"},{title:"توضیحات",dataIndex:"note"},{title:"تاریخ",dataIndex:"caj"}],$=[{title:"مقدار (گرم)",dataIndex:"value"},{title:"تاریخ اعطا",dataIndex:"caj"},{title:"انقضا",dataIndex:"expires_at"}],V=[{title:"عملیات",dataIndex:"action"},{title:"جزئیات",dataIndex:"detail"},{title:"تاریخ",dataIndex:"caj"}];return aa(async()=>{try{h.value=!0;const[N,i,n,r]=await Promise.all([k.get(`customer/${g}`),k.get(`major/dashboard/${g}`).catch(()=>({data:void 0})),k.get(`admin/customers-omde/${g}/orders`).catch(()=>({data:[]})),k.get(`admin/customers-omde/${g}/documents`).catch(()=>({data:[]}))]);if(t.value=N.data,p.value=i.data,x.value=n.data,B.value=r.data,T.showWallet){const b=await k.get(`admin/customers-omde/${g}/wallet`).catch(()=>({data:[]}));y.value=b.data}if(T.showActivity){const b=await k.get(`log/ago/${g}`).catch(()=>({data:[]}));w.value=b.data}}catch(N){console.log(N)}finally{h.value=!1}}),(N,i)=>{const n=u("a-descriptions-item"),r=u("a-tag"),b=u("a-descriptions"),L=u("a-card"),z=u("a-table"),C=u("a-tab-pane"),F=u("a-tabs"),O=u("a-spin");return c(),A(O,{spinning:h.value},{default:e(()=>[l(L,{title:I.title},{default:e(()=>[l(b,{bordered:"",size:"small",column:3},{default:e(()=>[l(n,{label:"نام"},{default:e(()=>{var a;return[s(o(((a=t.value)==null?void 0:a.name)??"-"),1)]}),_:1}),l(n,{label:"موبایل"},{default:e(()=>{var a;return[s(o(((a=t.value)==null?void 0:a.mobile)??"-"),1)]}),_:1}),l(n,{label:"کد ملی"},{default:e(()=>{var a;return[s(o(((a=t.value)==null?void 0:a.national_code)??"-"),1)]}),_:1}),l(n,{label:"شهر"},{default:e(()=>{var a,d;return[s(o(((d=(a=t.value)==null?void 0:a.city)==null?void 0:d.title)??"-"),1)]}),_:1}),l(n,{label:"کارشناس فروش"},{default:e(()=>{var a,d;return[s(o(((d=(a=t.value)==null?void 0:a.reagent)==null?void 0:d.name)??"-"),1)]}),_:1}),l(n,{label:"وضعیت"},{default:e(()=>{var a;return[l(r,{color:((a=t.value)==null?void 0:a.active)===1?"green":"red"},{default:e(()=>{var d;return[s(o(((d=t.value)==null?void 0:d.active)===1?"فعال":"غیر فعال"),1)]}),_:1},8,["color"])]}),_:1}),l(n,{label:"سطح اعتبار"},{default:e(()=>{var a;return[s(o(((a=t.value)==null?void 0:a.gram_level)??"-")+" گرم ",1)]}),_:1}),l(n,{label:"بدهی گرمی"},{default:e(()=>{var a;return[s(o(((a=t.value)==null?void 0:a.remain)??"-"),1)]}),_:1}),l(n,{label:"بدهی ریالی"},{default:e(()=>{var a;return[s(o(((a=t.value)==null?void 0:a.rial_remain)??"-"),1)]}),_:1}),l(n,{label:"میزان فروش"},{default:e(()=>{var a;return[s(o(((a=p.value)==null?void 0:a.grams_sell)??"-"),1)]}),_:1})]),_:1}),p.value?(c(),m("div",_a,[l(r,{color:"blue"},{default:e(()=>[s("کل سفارش‌ها: "+o(p.value.total_order),1)]),_:1}),l(r,{color:"orange"},{default:e(()=>[s("سفارش باز: "+o(p.value.open_order),1)]),_:1}),l(r,{color:"green"},{default:e(()=>[s("اسناد: "+o(p.value.ledger_entries),1)]),_:1})])):v("",!0)]),_:1},8,["title"]),l(ma,{"customer-id":S(g)},null,8,["customer-id"]),l(F,{class:"mt-4","default-active-key":I.defaultTab},{default:e(()=>[l(C,{key:"orders",tab:"سفارش ها"},{default:e(()=>[l(z,{size:"small","data-source":x.value,columns:E,pagination:{pageSize:10},"row-key":"id"},{bodyCell:e(({column:a,record:d})=>[a.dataIndex==="caj"?(c(),m(j,{key:0},[s(o(S(U)(d.caj)),1)],64)):v("",!0)]),_:1},8,["data-source"])]),_:1}),l(C,{key:"documents",tab:"سند های مالی"},{default:e(()=>[l(z,{size:"small","data-source":B.value,columns:R,pagination:{pageSize:10},"row-key":"id"},{bodyCell:e(({column:a,record:d})=>[a.dataIndex==="confirmed"?(c(),A(r,{key:0,color:d.confirmed===1?"green":""},{default:e(()=>[s(o(d.confirmed===1?"تایید شده":"تایید نشده"),1)]),_:2},1032,["color"])):a.dataIndex==="caj"?(c(),m(j,{key:1},[s(o(S(U)(d.caj)),1)],64)):v("",!0)]),_:1},8,["data-source"])]),_:1}),I.showWallet?(c(),A(C,{key:"wallet",tab:"کیف پول"},{default:e(()=>[l(z,{size:"small","data-source":y.value,columns:$,pagination:!1,"row-key":"id"},{bodyCell:e(({column:a,record:d})=>[a.dataIndex==="caj"?(c(),m(j,{key:0},[s(o(S(U)(d.caj)),1)],64)):a.dataIndex==="expires_at"?(c(),m(j,{key:1},[s(o(S(U)(d.expires_at)),1)],64)):v("",!0)]),_:1},8,["data-source"])]),_:1})):v("",!0),I.showActivity?(c(),A(C,{key:"activity",tab:"فعالیت ها"},{default:e(()=>[l(z,{size:"small","data-source":w.value,columns:V,pagination:{pageSize:15},"row-key":"id"},{bodyCell:e(({column:a,record:d})=>[a.dataIndex==="caj"?(c(),m(j,{key:0},[s(o(S(na)(d.caj)),1)],64)):v("",!0)]),_:1},8,["data-source"])]),_:1})):v("",!0)]),_:1},8,["default-active-key"])]),_:1},8,["spinning"])}}}),ba=ea(va,[["__scopeId","data-v-6d44e777"]]);export{ba as C};