2 lines
4.2 KiB
JavaScript
2 lines
4.2 KiB
JavaScript
import{s as f,o as y,v as b}from"./api-r_HoetOt.js";import{_ as F,h as k,o as i,c as r,a as t,t as l,b as c,d as v,i as x,F as O,j as w,r as u,g as S,k as B,n as V}from"./index-D6NGLDyM.js";import"./index-42ANG6Sg.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"},T={class:"stat-grid"},$={class:"stat-card"},D={class:"stat-num",style:{color:"#FF6B00"}},H={class:"stat-card"},M={class:"stat-num",style:{color:"#576BFF"}},j={class:"stat-card"},q={class:"stat-num",style:{color:"#FF6B35"}},L={class:"stat-card"},G={class:"stat-num",style:{color:"#333"}},J={class:"section"},K={class:"section-header"},P={class:"order-list"},Q={key:0,class:"loading-tip"},R={key:1,class:"empty-tip"},U={class:"order-left"},W={class:"order-customer"},X={class:"order-vehicle"},Y={__name:"Home",setup(Z){const m=u({}),d=u([]),_=u(!0),n=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,h=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 f.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,n.value.totalOrders=a.length,n.value.rentingOrders=a.filter(o=>o.status==="进行中"||o.status==="在租").length,n.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||[];n.value.totalVehicles=a.length}catch{}}),(e,s)=>{const a=S("router-link");return i(),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",T,[t("div",$,[t("div",D,l(n.value.totalOrders),1),s[6]||(s[6]=t("div",{class:"stat-label"},"总订单",-1))]),t("div",H,[t("div",M,l(n.value.rentingOrders),1),s[7]||(s[7]=t("div",{class:"stat-label"},"在租订单",-1))]),t("div",j,[t("div",q,l(n.value.warningOrders),1),s[8]||(s[8]=t("div",{class:"stat-label"},"预警订单",-1))]),t("div",L,[t("div",G,l(n.value.totalVehicles),1),s[9]||(s[9]=t("div",{class:"stat-label"},"车辆总数",-1))])])]),t("div",J,[t("div",K,[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",P,[_.value?(i(),r("div",Q,"加载中...")):d.value.length===0?(i(),r("div",R,"暂无订单")):x("",!0),(i(!0),r(O,null,w(d.value,o=>(i(),r("div",{key:o._id,class:"order-item"},[t("div",U,[t("div",W,l(o.customerName||"客户"),1),t("div",X,l(o.vehicleType||"车型")+" · "+l(h(o.createdAt)),1)]),t("div",{class:V(["order-status",g(o.status)])},l(p(o.status)),3)]))),128))])])])}}},as=F(Y,[["__scopeId","data-v-efbd3ab6"]]);export{as as default};
|