2 lines
6.8 KiB
JavaScript
2 lines
6.8 KiB
JavaScript
import{e as m,k as C,H as c,L as p,P as t,Z as i,M as a,O as d,F as B,ab as z,aB as E,a9 as f,X as V,ag as g,Y as u}from"./vendor-DeEI1rpK.js";import{a as x}from"./element-plus-pbz_d-qS.js";import{r as k}from"./request-BEmSsgoM.js";import{_ as M}from"./index-CxJCpQ-E.js";const N={class:"home-page"},D={class:"header"},O={class:"user-info"},P={style:{margin:"0"}},S={style:{margin:"2px 0 0","font-size":"12px",color:"#B2B2B2"}},j={class:"wallet-value"},H={class:"banner"},I={class:"banner-content"},T={class:"section"},A={class:"section-header"},L={class:"vehicle-list"},q=["onClick"],J={class:"vehicle-info"},R={class:"vehicle-desc"},X={class:"vehicle-price"},Y={class:"price"},Z={class:"quick-actions"},G={key:0,class:"section"},K={class:"order-header"},Q={class:"order-id"},U={class:"order-body"},W={class:"vehicle-mini"},ee={class:"model"},te={class:"order-detail"},se={class:"amount"},oe={class:"order-footer"},ie={__name:"Home",setup(ne){const v=m(JSON.parse(localStorage.getItem("customer_info")||"{}")),h=m([]),n=m(null),b=s=>{const e=s.purchasePrice||3e3;return Math.round(e/100)},y=s=>s?new Date(s).toLocaleDateString("zh-CN"):"-",w=async()=>{try{const s=await k.get("/vehicles");s.success&&(h.value=s.data.filter(e=>e.status==="空闲").slice(0,3))}catch{h.value=[{_id:"1",model:"黑骑士",color:"黑色",batteryType:"锂电池",purchasePrice:3500,status:"空闲"},{_id:"2",model:"高端豪车",color:"红色",batteryType:"锂电池",purchasePrice:8e3,status:"空闲"},{_id:"3",model:"电动车",color:"蓝色",batteryType:"铅酸电池",purchasePrice:2800,status:"空闲"}]}},_=async()=>{try{const s=localStorage.getItem("customer_id");if(!s)return;const e=await k.get("/orders");if(e.success){const r=e.data.find(l=>l.customer?._id===s&&(l.status==="进行中"||l.status==="待支付"));n.value=r||null}}catch{console.log("获取订单失败")}},F=()=>{x.info("续租功能开发中")},$=()=>{x.info("还车功能开发中")};return C(()=>{w(),_()}),(s,e)=>{const r=g("el-button"),l=g("el-tag");return c(),p("div",N,[t("div",D,[t("div",O,[e[8]||(e[8]=t("div",{style:{width:"44px",height:"44px",background:"#E8F8EE","border-radius":"22px",display:"flex","align-items":"center","justify-content":"center","font-size":"20px"}}," 🛵 ",-1)),t("div",null,[t("h3",P,i(v.value.name||"loading"),1),t("p",S,"信用分:"+i(v.value.creditScore||100),1)])]),t("div",{class:"wallet",onClick:e[0]||(e[0]=o=>s.$router.push("/profile"))},[e[9]||(e[9]=t("span",{class:"wallet-label"},"余额",-1)),t("span",j,"¥"+i(v.value.balance||0),1)])]),t("div",H,[t("div",I,[e[11]||(e[11]=t("h2",null,"快捷租车",-1)),e[12]||(e[12]=t("p",null,"随时随地,租你想租",-1)),a(r,{type:"primary",round:"",onClick:e[1]||(e[1]=o=>s.$router.push("/vehicles")),style:{background:"#FF6B00","border-color":"#FF6B00","border-radius":"20px",padding:"6px 20px","font-size":"13px"}},{default:d(()=>[...e[10]||(e[10]=[u(" 立即租车 ",-1)])]),_:1})]),e[13]||(e[13]=t("div",{class:"banner-icon"},"🛵",-1))]),t("div",T,[t("div",A,[e[15]||(e[15]=t("h3",null,"热门车型",-1)),a(r,{link:"",type:"primary",onClick:e[2]||(e[2]=o=>s.$router.push("/vehicles"))},{default:d(()=>[...e[14]||(e[14]=[u("查看更多",-1)])]),_:1})]),t("div",L,[(c(!0),p(B,null,z(h.value,o=>(c(),p("div",{key:o._id,class:"vehicle-card",onClick:re=>s.$router.push(`/vehicle/${o._id}`)},[e[17]||(e[17]=t("div",{class:"vehicle-img"},"🛵",-1)),t("div",J,[t("h4",null,i(o.model),1),t("p",R,i(o.color)+" · "+i(o.batteryType),1),t("div",X,[t("span",Y,"¥"+i(b(o))+"/天",1),a(l,{size:"small",type:"success"},{default:d(()=>[...e[16]||(e[16]=[u("空闲",-1)])]),_:1})])])],8,q))),128))])]),t("div",Z,[t("div",{class:"action-item",onClick:e[3]||(e[3]=o=>s.$router.push("/orders"))},[...e[18]||(e[18]=[E('<div style="width:40px;height:40px;background:#E8F8EE;border-radius:12px;display:flex;align-items:center;justify-content:center;" data-v-ac103de0><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#FF6B00" stroke-width="1.8" data-v-ac103de0><path d="M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8z" data-v-ac103de0></path><polyline points="14,2 14,8 20,8" data-v-ac103de0></polyline><line x1="16" y1="13" x2="8" y2="13" data-v-ac103de0></line><line x1="16" y1="17" x2="8" y2="17" data-v-ac103de0></line></svg></div><span data-v-ac103de0>我的订单</span>',2)])]),t("div",{class:"action-item",onClick:e[4]||(e[4]=o=>s.$router.push("/profile"))},[...e[19]||(e[19]=[t("div",{style:{width:"40px",height:"40px",background:"#FFF4E0","border-radius":"12px",display:"flex","align-items":"center","justify-content":"center"}},[t("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#FF8C00","stroke-width":"1.8"},[t("rect",{x:"1",y:"4",width:"22",height:"16",rx:"2",ry:"2"}),t("line",{x1:"1",y1:"10",x2:"23",y2:"10"})])],-1),t("span",null,"钱包",-1)])]),t("div",{class:"action-item",onClick:e[5]||(e[5]=o=>s.$router.push("/profile"))},[...e[20]||(e[20]=[t("div",{style:{width:"40px",height:"40px",background:"#E8F0FF","border-radius":"12px",display:"flex","align-items":"center","justify-content":"center"}},[t("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#576BFF","stroke-width":"1.8"},[t("path",{d:"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z"}),t("circle",{cx:"12",cy:"10",r:"3"})])],-1),t("span",null,"还车点",-1)])]),t("div",{class:"action-item",onClick:e[6]||(e[6]=o=>s.$router.push("/profile"))},[...e[21]||(e[21]=[t("div",{style:{width:"40px",height:"40px",background:"#F0F0F0","border-radius":"12px",display:"flex","align-items":"center","justify-content":"center"}},[t("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"#999","stroke-width":"1.8"},[t("path",{d:"M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07A19.5 19.5 0 013.07 9.81a19.79 19.79 0 01-3.07-8.63A2 2 0 012.18 1h3a2 2 0 012 1.72c.127.96.361 1.903.7 2.81a2 2 0 01-.45 2.11L6.91 8.91a16 16 0 006.18 6.18l1.27-1.27a2 2 0 012.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0122 16.92z"})])],-1),t("span",null,"客服",-1)])])]),n.value?(c(),p("div",G,[e[25]||(e[25]=t("div",{class:"section-header"},[t("h3",null,"当前租赁")],-1)),t("div",{class:"order-card active",onClick:e[7]||(e[7]=o=>s.$router.push("/orders"))},[t("div",K,[t("span",Q,"订单号:"+i(n.value.orderNumber),1),a(l,{type:"warning"},{default:d(()=>[u(i(n.value.status),1)]),_:1})]),t("div",U,[t("div",W,[e[22]||(e[22]=t("span",{class:"icon"},"🛵",-1)),t("span",ee,i(n.value.vehicle?.model||"电动车"),1)]),t("div",te,[t("p",null,"租车时间:"+i(y(n.value.startDate)),1),t("p",null,"预计还车:"+i(y(n.value.endDate)),1),t("p",se,"应付金额:¥"+i(n.value.totalAmount),1)])]),t("div",oe,[a(r,{type:"primary",size:"small",onClick:f(F,["stop"])},{default:d(()=>[...e[23]||(e[23]=[u("续租",-1)])]),_:1}),a(r,{size:"small",onClick:f($,["stop"])},{default:d(()=>[...e[24]||(e[24]=[u("还车",-1)])]),_:1})])])])):V("",!0)])}}},ce=M(ie,[["__scopeId","data-v-ac103de0"]]);export{ce as default};
|