Files
Migu2.0/MiGu.Server/wwwroot/assets/MapMonitorView-C7AnAWKd.js
T

2 lines
31 KiB
JavaScript
Raw Normal View History

import{aG as ve,b3 as o,aC as i,az as e,bj as u,aF as _,S as Se,a4 as Ae,bB as C,ai as D,bd as Z,_ as Le,aZ as ie,ad as Ce,aE as J,aB as H,$ as Ve,bb as g,av as S,al as fe,bA as Ie,aA as Ne,a3 as ze,s as ke,H as Fe,Z as Pe,Y as Q,R as xe,bm as de,aU as Oe,b0 as Be,bE as he,a_ as Re,au as De,p as Ue,bo as Ke,b1 as We,b2 as je,a2 as qe,x as Xe,a6 as He,u as Ge}from"./index-DrvLDslf.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{W as Ye}from"./Workspace3D-D7MYl2zT.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{r as oe}from"./reflection-Dr3WM5Rz.js";import{m as Ze}from"./mapEdit-DghrYjHu.js";import{W as Je}from"./WorkspaceCanvasToolbar-1mCqpdq_.js";import{l as Qe,a as et}from"./projection-CizY2UtH.js";import{u as tt}from"./useProjectionStream-DMf_8m8X.js";import"./el-tooltip-l0sNRNKZ.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */const nt={class:"vehicle-monitor"},st={class:"overview-row"},at={class:"overview-item"},lt={class:"overview-num"},ot={class:"overview-item"},it={class:"overview-num online"},rt={class:"overview-item"},ct={class:"overview-num running"},ut={class:"overview-item"},dt={class:"overview-num charging"},vt={class:"overview-item"},ft={class:"overview-num fault"},mt={class:"toolbar"},pt={class:"vehicle-list"},_t=["onClick"],ht={class:"vehicle-head"},kt={class:"vehicle-id-name"},yt={class:"vid"},gt={class:"vname"},bt={class:"vehicle-meta muted"},wt={key:0,class:"meta-item"},$t={key:1,class:"meta-item"},St={key:2,class:"meta-item"},Ct={class:"battery-row"},It={class:"mission-row"},Nt=["title"],xt={key:0,class:"empty muted"},Mt=ve({__name:"VehicleMonitorPanel",props:{cars:{},missions:{},selectedId:{}},emits:["select"],setup(h,{emit:N}){const l=h,b=N,I=g(""),d=g(""),p=[{value:"idle",label:"空闲"},{value:"running",label:"运行中"},{value:"charging",label:"充电中"},{value:"paused",label:"已暂停"},{value:"fault",label:"故障"},{value:"offline",label:"离线"}],V=p.reduce((a,m)=>(a[m.value]=m.label,a),{});function F(a){return V[a]??a}function O(a){switch(a){case"running":return"success";case"charging":return"primary";case"paused":return"warning";case"fault":return"danger";case"offline":return"info";case"idle":default:return"info"}}const G={queued:"排队",assigned:"已分配",running:"执行中",paused:"暂停",completed:"已完成",cancelled:"已取消",failed:"失败"};function B(a){return G[a]??a}function P(a){switch(a){case"running":return"success";case"assigned":return"primary";case"queued":return"info";case"paused":return"warning";case"completed":return"success";case"cancelled":return"info";case"failed":return"danger";default:return"info"}}const x=S(()=>l.cars.filter(a=>a.state!=="offline").length),v=S(()=>l.cars.filter(a=>a.state==="running").length),j=S(()=>l.cars.filter(a=>a.state==="charging").length),U=S(()=>l.cars.filter(a=>a.state==="fault").length),R=S(()=>{const a=w=>w==="running"?0:w==="paused"?1:w==="assigned"?2:3,m=new Map;for(const w of l.missions){if(!w.carId||w.status!=="running"&&w.status!=="paused"&&w.status!=="assigned")continue;const K=m.get(w.carId);(!K||a(w.status)<a(K.status))&&m.set(w.carId,w)}return m});function M(a){if(a.missionId){const m=l.missions.find(w=>w.id===a.missionId);if(m)return m}return R.value.get(a.id)}function T(a){const m=a.batterySoc??0,w=m>1?m:m*100;return Math.max(0,Math.min(100,Math.round(w)))}function Y(a){return a<20?"#f56c6c":a<50?"#e6a23c":"#67c23a"}function se(a){return a<20?"low":a<50?"mid":"high"}function E(a){const m=a.lastIndexOf(".");return m>=0?a.slice(m+1):a}const A=S(()=>{const a=I.value.trim().toLowerCase(),m=a?a.split(/\s+/).filter(Boolean):[];return l.cars.filter(w=>{if(d.value&&w.state!==d.value)return!1