2 lines
4.2 KiB
JavaScript
2 lines
4.2 KiB
JavaScript
import{s as h,o as y,v as b}from"./api-BJHHntS5.js";import{_ as F}from"./index-P0T8_Fg3.js";import{o as k,H as n,L as r,P as t,Z as l,M as c,O as v,X as x,F as O,ab as w,r as u,ag as S,Y as B,R as V}from"./vendor-CDC8xK0g.js";import"./element-plus-P2E9Zrny.js";const E={class:"home-page"},C={class:"home-header"},I={class:"header-left"},N={class:"store-name"},z={class:"quick-nav"},A={class:"section"},H={class:"stat-grid"},M={class:"stat-card"},T={class:"stat-num",style:{color:"#FF6B00"}},$={class:"stat-card"},D={class:"stat-num",style:{color:"#576BFF"}},L={class:"stat-card"},q={class:"stat-num",style:{color:"#FF6B35"}},P={class:"stat-card"},R={class:"stat-num",style:{color:"#333"}},X={class:"section"},Y={class:"section-header"},Z={class:"order-list"},j={key:0,class:"loading-tip"},G={key:1,class:"empty-tip"},J={class:"order-left"},K={class:"order-customer"},Q={class:"order-vehicle"},U={__name:"Home",setup(W){const m=u({}),d=u([]),_=u(!0),i=u({totalOrders:0,rentingOrders:0,warningOrders:0,totalVehicles:0}),g=e=>({renting:"status-renting",returned:"status-ok",overdue:"status-warning"})[e]||"",p=e=>({renting:"在租",returned:"已还",overdue:"逾期",pending:"待处理"})[e]||e,f=e=>{if(!e)return"-";const s=new Date(e);return`${s.getMonth()+1}/${s.getDate()} ${s.getHours().toString().padStart(2,"0")}:${s.getMinutes().toString().padStart(2,"0")}`};return k(async()=>{const e=localStorage.getItem("storeId")||"demo-store";if(m.value={name:"示例门店"},e!=="demo-store")try{const s=await h.getStore(e);s.data.success&&s.data.data&&(m.value=s.data.data)}catch{}try{const s=await y.list({storeId:e,limit:5}),a=s.data.data||s.data||[];d.value=a,i.value.totalOrders=a.length,i.value.rentingOrders=a.filter(o=>o.status==="进行中"||o.status==="在租").length,i.value.warningOrders=a.filter(o=>o.status==="逾期").length}catch{d.value=[]}_.value=!1;try{const s=await b.list({storeId:e,limit:100}),a=s.data.data||s.data||[];i.value.totalVehicles=a.length}catch{}}),(e,s)=>{const a=S("router-link");return n(),r("div",E,[t("div",C,[t("div",I,[s[1]||(s[1]=t("div",{class:"store-avatar"},"🚲",-1)),t("div",null,[t("div",N,l(m.value.name||"加载中..."),1),s[0]||(s[0]=t("div",{class:"store-sub"},"门店端",-1))])]),s[2]||(s[2]=t("div",{class:"header-badge"},"营业中",-1))]),t("div",z,[c(a,{to:"/vehicle-types",class:"nav-card"},{default:v(()=>[...s[3]||(s[3]=[t("div",{class:"nav-icon-box",style:{background:"#E8F8EE"}},[t("span",{style:{"font-size":"20px"}},"🚗")],-1),t("div",{class:"nav-label"},"车型管理",-1)])]),_:1}),c(a,{to:"/vehicles",class:"nav-card"},{default:v(()=>[...s[4]||(s[4]=[t("div",{class:"nav-icon-box",style:{background:"#FFF4E0"}},[t("span",{style:{"font-size":"20px"}},"🏍️")],-1),t("div",{class:"nav-label"},"车辆管理",-1)])]),_:1}),c(a,{to:"/orders",class:"nav-card"},{default:v(()=>[...s[5]||(s[5]=[t("div",{class:"nav-icon-box",style:{background:"#E8F0FF"}},[t("span",{style:{"font-size":"20px"}},"📋")],-1),t("div",{class:"nav-label"},"订单管理",-1)])]),_:1})]),t("div",A,[s[10]||(s[10]=t("div",{class:"section-header"},[t("div",{class:"section-title"},"今日概览"),t("div",{class:"section-more"},"实时数据")],-1)),t("div",H,[t("div",M,[t("div",T,l(i.value.totalOrders),1),s[6]||(s[6]=t("div",{class:"stat-label"},"总订单",-1))]),t("div",$,[t("div",D,l(i.value.rentingOrders),1),s[7]||(s[7]=t("div",{class:"stat-label"},"在租订单",-1))]),t("div",L,[t("div",q,l(i.value.warningOrders),1),s[8]||(s[8]=t("div",{class:"stat-label"},"预警订单",-1))]),t("div",P,[t("div",R,l(i.value.totalVehicles),1),s[9]||(s[9]=t("div",{class:"stat-label"},"车辆总数",-1))])])]),t("div",X,[t("div",Y,[s[12]||(s[12]=t("div",{class:"section-title"},"最近订单",-1)),c(a,{to:"/orders",class:"section-more",style:{color:"#FF6B00"}},{default:v(()=>[...s[11]||(s[11]=[B("查看全部 ›",-1)])]),_:1})]),t("div",Z,[_.value?(n(),r("div",j,"加载中...")):d.value.length===0?(n(),r("div",G,"暂无订单")):x("",!0),(n(!0),r(O,null,w(d.value,o=>(n(),r("div",{key:o._id,class:"order-item"},[t("div",J,[t("div",K,l(o.customerName||"客户"),1),t("div",Q,l(o.vehicleType||"车型")+" · "+l(f(o.createdAt)),1)]),t("div",{class:V(["order-status",g(o.status)])},l(p(o.status)),3)]))),128))])])])}}},os=F(U,[["__scopeId","data-v-efbd3ab6"]]);export{os as default};
|