e-scooter-store-web/dist/assets/Vehicles-K-4GS7w_.js

2 lines
4.3 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import{_ as U,e as $,o,c as n,a as e,f as p,F as T,g as w,j as M,t as d,k as g,v as k,b as S,w as E,h as r,r as C,n as F,l as R}from"./index-DH2ZjwZR.js";import{v as y,a as j}from"./api-CXZzdW5u.js";const z={class:"page"},L={class:"page-header"},q={class:"header-row"},G={class:"list-wrap"},H={key:0,class:"loading"},J={key:1,class:"empty"},K={class:"vehicle-left"},O={class:"vehicle-plate"},P={class:"vehicle-type"},Q={class:"vehicle-detail"},W={key:0},X={key:1},Y={class:"vehicle-right"},Z=["onClick"],ee=["onClick"],le={class:"dialog"},te={class:"dialog-title"},ae={class:"dialog-body"},se={class:"form-item"},oe={class:"form-item"},ne={class:"form-item"},ie={class:"form-item"},de={__name:"Vehicles",setup(re){const u=r([]),b=r(!0),v=r(!1),i=r(null),s=r({plateNumber:"",vehicleType:"",color:"",batteryType:""}),c=r([]),h=localStorage.getItem("storeId")||"demo-store",_=async()=>{b.value=!0;try{const a=await y.list({storeId:h});u.value=a.data.data||a.data||[]}catch{u.value=[]}b.value=!1},m=async()=>{try{const a=await j.list({storeId:h});c.value=a.data.data||a.data||[]}catch{c.value=[]}},N=()=>{i.value=null,s.value={plateNumber:"",vehicleType:"",color:"",batteryType:""},c.value.length===0&&m(),v.value=!0},V=a=>{i.value=a._id,s.value={plateNumber:a.plateNumber||"",vehicleType:a.vehicleType||"",color:a.color||"",batteryType:a.batteryType||""},c.value.length===0&&m(),v.value=!0},D=async()=>{if(!s.value.plateNumber){alert("请填写车牌号");return}try{i.value?await y.update(i.value,s.value):await y.create({...s.value,storeId:h}),f(),_()}catch{alert(i.value?"更新失败":"添加失败")}},f=()=>{v.value=!1,i.value=null,s.value={plateNumber:"",vehicleType:"",color:"",batteryType:""}},x=async a=>{if(confirm("确定删除该车辆?"))try{await y.delete(a),_()}catch{alert("删除失败")}};return $(()=>{_(),m()}),(a,l)=>{const I=C("el-option"),A=C("el-select");return o(),n("div",z,[e("div",L,[e("div",q,[e("button",{class:"btn-back",onClick:l[0]||(l[0]=t=>a.$router.back())},[...l[5]||(l[5]=[e("span",{class:"back-arrow"},"",-1)])]),l[6]||(l[6]=e("div",{class:"page-title"},"车辆管理",-1)),e("button",{class:"btn-add-inline",onClick:N},"+ 新增")])]),e("div",G,[b.value?(o(),n("div",H,[...l[7]||(l[7]=[e("div",{class:"loading-ring"},null,-1)])])):u.value.length===0?(o(),n("div",J,[...l[8]||(l[8]=[e("div",{class:"empty-icon"},"🏍️",-1),e("div",{class:"empty-text"},"暂无车辆",-1),e("div",{class:"empty-sub"},"点击上方添加车辆",-1)])])):p("",!0),(o(!0),n(T,null,w(u.value,t=>(o(),n("div",{key:t._id,class:"vehicle-card"},[e("div",K,[e("div",O,d(t.plateNumber),1),e("div",P,d(t.vehicleType||"车型"),1),e("div",Q,[t.color?(o(),n("span",W,"颜色:"+d(t.color),1)):p("",!0),t.batteryType?(o(),n("span",X," | 电池:"+d(t.batteryType),1)):p("",!0)])]),e("div",Y,[e("div",{class:F(["vehicle-status",t.isRented?"status-renting":"status-idle"])},d(t.isRented?"在租":"空闲"),3),e("button",{class:"btn-edit",onClick:B=>V(t)},"编辑",8,Z),e("button",{class:"btn-del",onClick:B=>x(t._id)},"删除",8,ee)])]))),128))]),v.value?(o(),n("div",{key:0,class:"dialog-overlay",onClick:M(f,["self"])},[e("div",le,[l[13]||(l[13]=e("div",{class:"dialog-handle"},null,-1)),e("div",te,d(i.value?"编辑车辆":"添加车辆"),1),e("div",ae,[e("div",se,[l[9]||(l[9]=e("label",null,"车牌号",-1)),g(e("input",{"onUpdate:modelValue":l[1]||(l[1]=t=>s.value.plateNumber=t),placeholder:"如京A12345"},null,512),[[k,s.value.plateNumber]])]),e("div",oe,[l[10]||(l[10]=e("label",null,"车型",-1)),S(A,{modelValue:s.value.vehicleType,"onUpdate:modelValue":l[2]||(l[2]=t=>s.value.vehicleType=t),placeholder:"请选择车型",style:{width:"100%"}},{default:E(()=>[(o(!0),n(T,null,w(c.value,t=>(o(),R(I,{key:t._id,label:t.name,value:t.name},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),e("div",ne,[l[11]||(l[11]=e("label",null,"颜色",-1)),g(e("input",{"onUpdate:modelValue":l[3]||(l[3]=t=>s.value.color=t),placeholder:"如:黑色"},null,512),[[k,s.value.color]])]),e("div",ie,[l[12]||(l[12]=e("label",null,"电池类型",-1)),g(e("input",{"onUpdate:modelValue":l[4]||(l[4]=t=>s.value.batteryType=t),placeholder:"如:锂电池"},null,512),[[k,s.value.batteryType]])])]),e("div",{class:"dialog-footer"},[e("button",{class:"btn-cancel",onClick:f},"取消"),e("button",{class:"btn-confirm",onClick:D},"确定")])])])):p("",!0)])}}},ve=U(de,[["__scopeId","data-v-9bb5a6e7"]]);export{ve as default};