pages-agent-customers.DMC1gSQo.js 4.1 KB

1
  1. import{d as e,C as a,c as l,o as s,s as t,R as o,b as u,w as r,i as n,g as c,e as i,f as d,h as m,j as f,k as p,I as _,u as k,n as y,F as h,p as v,z as g,t as b,m as w,y as C,T as D}from"./index-D_BH170g.js";import{u as j}from"./usePaged.C4zT9aO0.js";import{m as x,g as $}from"./format.D9X84le1.js";import{I as M}from"./IdentityGuard.XrmWZ7K5.js";import{P as I}from"./PageState.DTLqkY_x.js";import{_ as N}from"./_plugin-vue_export-helper.BCo6x5W8.js";const F=N(e({__name:"customers",setup(e){const N=a(""),F=a("all"),P=a(!1),{items:S,loading:V,error:R,hasMore:z,total:A,summary:B,load:G}=j(e=>c(i("agent")+"/customers",{page:e,keyword:N.value,filter:F.value})),T=l(()=>[{key:"all",label:"全部",count:B.value.all??A.value},{key:"new",label:"本月新增",count:B.value.new??0},{key:"unpaid",label:"未首购",count:B.value.unpaid??0}]),U=["blue","green","orange","purple"];function q(e){F.value=e,P.value=!1,G(!0)}function E(){P.value=!P.value}function H(e){if(e.has_purchased){const a=e.last_purchase_at?Date.parse(e.last_purchase_at):NaN,l=Number.isFinite(a)?new Date(a).toDateString()===(new Date).toDateString()?"今日下单":`${Math.max(1,Math.floor((Date.now()-a)/864e5))}天前下单`:"已下单";return`${e.contact} · ${l} · 累计¥${x(e.amount_cents,0)}`}const a=Date.parse(e.created_at),l=Number.isFinite(a)?Math.max(1,Math.floor((Date.now()-a)/864e5)):1;return`${e.contact} · 尚未首购 · ${l}天前加入`}function J(){D()}return s(()=>{var e;"agent"===(null==(e=t.active)?void 0:e.role)&&G(!0)}),o(()=>G()),(e,a)=>{const l=n,s=p,t=_,o=C;return d(),u(l,{class:"page customers-page"},{default:r(()=>[m(l,{class:"customer-header"},{default:r(()=>[m(l,{class:"back-button","aria-label":"返回",onClick:J},{default:r(()=>[f("‹")]),_:1}),m(s,{class:"header-title"},{default:r(()=>[f("下属用户")]),_:1}),m(l,{class:"header-filter",onClick:E},{default:r(()=>[f("筛选")]),_:1})]),_:1}),m(M,{kind:"agent"},{default:r(()=>[m(l,{class:"search-wrap"},{default:r(()=>[m(t,{modelValue:N.value,"onUpdate:modelValue":a[0]||(a[0]=e=>N.value=e),class:"customer-search",placeholder:"搜索企业、联系人或手机号",maxlength:"120","confirm-type":"search",onConfirm:a[1]||(a[1]=e=>k(G)(!0))},null,8,["modelValue"])]),_:1}),P.value?(d(),u(l,{key:0,class:"filter-menu"},{default:r(()=>[(d(!0),y(h,null,v(T.value,e=>(d(),u(l,{key:e.key,class:g(["filter-option",{selected:F.value===e.key}]),onClick:a=>q(e.key)},{default:r(()=>[f(b(e.label),1)]),_:2},1032,["class","onClick"]))),128))]),_:1})):w("",!0),m(l,{class:"customer-tabs"},{default:r(()=>[(d(!0),y(h,null,v(T.value,e=>(d(),u(l,{key:e.key,class:g(["customer-tab",{active:F.value===e.key}]),onClick:a=>q(e.key)},{default:r(()=>[m(s,null,{default:r(()=>[f(b(e.label),1)]),_:2},1024),m(s,{class:"tab-count"},{default:r(()=>[f(b(e.count),1)]),_:2},1024)]),_:2},1032,["class","onClick"]))),128))]),_:1}),m(l,{class:"customer-list"},{default:r(()=>[(d(!0),y(h,null,v(k(S),(e,a)=>(d(),u(l,{key:e.id,class:"customer-row",onClick:a=>{return l=e.id,void $("/pages/agent/orders?enterprise_id="+l);var l}},{default:r(()=>[m(l,{class:g(["customer-icon",U[a%U.length]])},{default:r(()=>[f(b(e.name.slice(0,1)),1)]),_:2},1032,["class"]),m(l,{class:"customer-copy"},{default:r(()=>[m(l,{class:"customer-name"},{default:r(()=>[f(b(e.name),1)]),_:2},1024),m(l,{class:"customer-meta"},{default:r(()=>[f(b(H(e)),1)]),_:2},1024)]),_:2},1024),e.has_purchased?(d(),u(l,{key:1,class:"customer-chevron"},{default:r(()=>[f("›")]),_:1})):(d(),u(l,{key:0,class:"pending-badge"},{default:r(()=>[f("待转化")]),_:1}))]),_:2},1032,["onClick"]))),128))]),_:1}),m(I,{loading:k(V),error:k(R),empty:!k(S).length,"empty-text":"暂无符合条件的下属用户",onRetry:a[2]||(a[2]=e=>k(G)(!0))},null,8,["loading","error","empty"]),k(z)&&!k(V)?(d(),u(o,{key:1,class:"load-more",onClick:a[3]||(a[3]=e=>k(G)())},{default:r(()=>[f("加载更多")]),_:1})):w("",!0),m(l,{class:"ownership-title"},{default:r(()=>[f("归属说明")]),_:1}),m(l,{class:"ownership-note"},{default:r(()=>[f(" 仅展示您辖区及团队成员名下客户,手机号与地址按权限脱敏。 ")]),_:1})]),_:1})]),_:1})}}}),[["__scopeId","data-v-e4193ec0"]]);export{F as default};