从 Simple-FR 拆出 Platform.Server 并重命名为 MiGu.Server;frontends 源码与构建脚本迁入本仓库。地图监控在 projection/cars 失败或为空时回退 reflection 车辆列表;Simple 仓库已移除旧 Platform.Server。 Co-authored-by: Cursor <cursoragent@cursor.com>
2 lines
8.7 KiB
JavaScript
2 lines
8.7 KiB
JavaScript
import{aG as A,bo as G,b3 as n,aA as m,bB as e,aF as t,a0 as ce,aE as u,bq as j,av as b,a1 as pe,Y as ue,br as q,az as a,bm as l,a_ as U,bj as s,R as J,ar as X,L as H,aC as g,ai as E,bd as N,K,aZ as I,as as me,aB as R,J as Q,al as Y,aD as _e,B as be,n as fe,W as he,X as ge,bg as D,Q as ve,aN as we,aJ as ke,q as ye,r as Ee,o as Ce,V as Se,ak as xe,N as Me,a7 as Te,bf as $e,bp as De,aP as Ne,aW as W,bk as Ie,a$ as O,bi as Re,aX as Ae,b8 as Be}from"./index-DrvLDslf.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-l0sNRNKZ.js";/* empty css */const Pe="/FRLD-logo-white-no_title.png",Ve="/FRLD-logo-white.png",Le=A({__name:"ScopeSwitcher",setup(B){const i=G(),k=j(),r=b({get:()=>i.scope??"Platform",set:d=>{f(d)}});async function c(d){await f(d)}async function f(d){try{await i.switchScope(d),k.push(d==="Platform"?"/admin/map-monitor":"/monitor/map")}catch(p){ue.error(p?.message??`切换到 ${d} 失败`)}}return(d,p)=>{const v=ce,C=pe;return n(),m(C,{modelValue:r.value,"onUpdate:modelValue":p[0]||(p[0]=S=>r.value=S),size:"small",onChange:c},{default:e(()=>[t(v,{label:"Platform"},{default:e(()=>[...p[1]||(p[1]=[u("管理员",-1)])]),_:1}),t(v,{label:"RCSMonitor"},{default:e(()=>[...p[2]||(p[2]=[u("运营",-1)])]),_:1})]),_:1},8,["modelValue"])}}}),ze=["title"],Fe={class:"theme-label"},Ue={class:"option-text"},We={class:"option-name"},Oe={class:"option-desc"},Ge=A({__name:"ThemeSwitcher",setup(B){const i=q(),k=b(()=>({background:`linear-gradient(135deg, ${i.activeTheme.preview} 0%, ${i.activeTheme.previewAccent} 100%)`}));function r(f){const d=i.getMergedTheme(f);return{background:`linear-gradient(135deg, ${d.preview} 0%, ${d.previewAccent} 100%)`}}function c(f){i.setThemeId(f)}return(f,d)=>{const p=J,v=K,C=H,S=Q;return n(),m(S,{trigger:"click",onCommand:c},{dropdown:e(()=>[t(C,{class:"theme-menu"},{default:e(()=>[(n(!0),g(E,null,N(l(i).availableThemes,h=>(n(),m(v,{key:h.id,command:h.id,class:I({"is-active":h.id===l(i).themeId})},{default:e(()=>[a("span",{class:"option-swatch",style:U(r(h))},null,4),a("span",Ue,[a("span",We,s(h.name),1),a("span",Oe,s(h.description),1)]),h.id===l(i).themeId?(n(),m(p,{key:0,class:"check"},{default:e(()=>[t(l(me))]),_:1})):R("",!0)]),_:2},1032,["command","class"]))),128))]),_:1})]),default:e(()=>[a("button",{class:"theme-trigger",type:"button",title:`当前主题:${l(i).activeTheme.name}`},[a("span",{class:"swatch",style:U(k.value)},null,4),a("span",Fe,s(l(i).activeTheme.name),1),t(p,{class:"caret"},{default:e(()=>[t(l(X))]),_:1})],8,ze)]),_:1})}}}),je=Y(Ge,[["__scopeId","data-v-28ea4aeb"]]),qe={class:"app-shell"},Je={class:"aside-footer"},Xe={key:0},He={class:"header-left"},Ke={class:"header-right"},Qe={class:"user-link"},Ye={class:"user-name"},Ze=A({__name:"AppShell",setup(B){const i=De(),k=j(),r=G(),c=q(),f=b(()=>"localhost:8223".split(":")[1]??"8223"),d=b(()=>"/api"),p=b(()=>(r.user?.displayName??r.user?.username??"?").slice(0,1).toUpperCase()),v=b(()=>r.scope==="Platform"?"管理员 (Platform)":"运营 (RCSMonitor)"),C=b(()=>{switch(r.runMode){case"WebOnly":return"Web-Only";case"WebEnabled":return"Web + Desktop";case"Detached":return"SimpleLite 未连接";default:return String(r.runMode??"Unknown")}}),S=[{path:"/admin/dashboard",label:"总览",icon:Ne},{path:"/admin/map-monitor",label:"地图监控",icon:W},{path:"/admin/design",label:"设计与编排",icon:Ie,children:[{path:"/admin/map-editor",label:"地图编辑"},{path:"/admin/project-properties",label:"项目属性"},{path:"/admin/tracks",label:"场景管理"},{path:"/admin/cars",label:"车辆管理"},{path:"/admin/processes",label:"进程管理"},{path:"/admin/scripts",label:"脚本管理"},{path:"/admin/missions",label:"任务编排"}]},{path:"/admin/playback",label:"调度回放",icon:O},{path:"/admin/config",label:"平台配置中心",icon:Re,children:[{path:"/admin/config/system",label:"系统级配置"},{path:"/admin/config/integrations",label:"外部系统对接"},{path:"/admin/config/routing",label:"路径规划"},{path:"/admin/config/vehicle",label:"车辆维护"},{path:"/admin/config/charge",label:"充电策略"},{path:"/admin/config/task",label:"任务分配"},{path:"/admin/config/traffic",label:"交通管制"},{path:"/admin/config/auth",label:"权限与角色"},{path:"/admin/config/device",label:"设备接入"},{path:"/admin/config/fleet",label:"车队生命周期"},{path:"/admin/config/scenario",label:"场景模板"},{path:"/admin/config/location",label:"库位管理"},{path:"/admin/config/ops",label:"运营维护"},{path:"/admin/config/widget",label:"自定义控件"}]}],h=[{path:"/monitor/dashboard",label:"运营总览",icon:Ae},{path:"/monitor/map",label:"地图监控",icon:W},{path:"/monitor/ops",label:"运维操作",icon:Be},{path:"/monitor/notes",label:"运营备注",icon:O}],P=b(()=>r.scope==="Platform"?S:h),Z=b(()=>{const y=i.path,o=[],w=x=>{x.forEach(M=>{o.push(M),M.children&&w(M.children)})};return w(P.value),o.find(x=>x.path===y)?.path??y}),V=b(()=>i.meta.title??"");function ee(y){y==="logout"?(r.logout(),k.push("/login")):y==="status"&&k.push("/status")}return(y,o)=>{const w=J,T=ge,x=Te,M=he,ae=fe,L=Ee,te=ye,oe=Ce,z=K,ne=H,le=Q,se=ve,ie=$e("router-view"),re=Se,de=Me,F=be;return n(),g("div",qe,[o[8]||(o[8]=_e('<div class="bg-orbs" aria-hidden="true" data-v-a0d39774><div class="bg-orb bg-orb-a" data-v-a0d39774></div><div class="bg-orb bg-orb-b" data-v-a0d39774></div><div class="bg-orb bg-orb-c" data-v-a0d39774></div><div class="bg-orb bg-orb-d" data-v-a0d39774></div></div>',1)),t(F,{class:"app-container"},{default:e(()=>[t(ae,{width:l(c).sidebarCollapsed?"76px":"240px",class:"aside"},{default:e(()=>[a("div",{class:I(["logo",{collapsed:l(c).sidebarCollapsed}])},[l(c).sidebarCollapsed?(n(),g(E,{key:0},[o[1]||(o[1]=a("img",{src:Pe,alt:"FRLD",class:"logo-img-small"},null,-1)),o[2]||(o[2]=a("span",{class:"logo-abbr"},"迷毂",-1))],64)):(n(),g(E,{key:1},[o[3]||(o[3]=a("img",{src:Ve,alt:"FRLD",class:"logo-img-full"},null,-1)),o[4]||(o[4]=a("div",{class:"logo-titles"},[a("span",{class:"logo-title-zh"},"迷 毂 · 智能调度平台"),a("span",{class:"logo-title-en"},[a("b",null,"M"),u("i "),a("b",null,"G"),u("u · "),a("b",null,"I"),u("ntelligent "),a("b",null,"D"),u("ispatch "),a("b",null,"P"),u("latform ")])],-1))],64))],2),t(M,{"default-active":Z.value,collapse:l(c).sidebarCollapsed,"collapse-transition":!1,"background-color":"transparent","text-color":"rgba(255, 255, 255, 0.72)","active-text-color":"#fff",router:"",class:"menu"},{default:e(()=>[(n(!0),g(E,null,N(P.value,_=>(n(),g(E,{key:_.path},[_.children?(n(),m(x,{key:0,index:_.path},{title:e(()=>[t(w,null,{default:e(()=>[(n(),m(D(_.icon)))]),_:2},1024),a("span",null,s(_.label),1)]),default:e(()=>[(n(!0),g(E,null,N(_.children,$=>(n(),m(T,{key:$.path,index:$.path},{default:e(()=>[a("span",null,s($.label),1)]),_:2},1032,["index"]))),128))]),_:2},1032,["index"])):(n(),m(T,{key:1,index:_.path},{title:e(()=>[u(s(_.label),1)]),default:e(()=>[t(w,null,{default:e(()=>[(n(),m(D(_.icon)))]),_:2},1024)]),_:2},1032,["index"]))],64))),128))]),_:1},8,["default-active","collapse"]),a("div",Je,[o[5]||(o[5]=a("span",{class:"aside-footer-badge"},"v1.6",-1)),l(c).sidebarCollapsed?R("",!0):(n(),g("span",Xe,s(l(c).activeTheme.name)+" · "+s(l(c).activeTheme.preview),1))])]),_:1},8,["width"]),t(F,{class:"container-right"},{default:e(()=>[t(se,{class:"header"},{default:e(()=>[a("div",He,[a("button",{class:"icon-btn",onClick:o[0]||(o[0]=_=>l(c).toggleSidebar()),title:"切换侧栏"},[t(w,{size:"18"},{default:e(()=>[l(c).sidebarCollapsed?(n(),m(l(ke),{key:1})):(n(),m(l(we),{key:0}))]),_:1})]),t(te,{separator:"/"},{default:e(()=>[t(L,null,{default:e(()=>[u(s(v.value),1)]),_:1}),V.value?(n(),m(L,{key:0},{default:e(()=>[u(s(V.value),1)]),_:1})):R("",!0)]),_:1})]),a("div",Ke,[t(je),t(Le),a("span",{class:I(["runmode-tag",l(r).runMode])},s(C.value),3),t(le,{trigger:"click",onCommand:ee},{dropdown:e(()=>[t(ne,null,{default:e(()=>[t(z,{command:"status"},{default:e(()=>[...o[6]||(o[6]=[u("服务状态",-1)])]),_:1}),t(z,{command:"logout",divided:""},{default:e(()=>[...o[7]||(o[7]=[u("退出登录",-1)])]),_:1})]),_:1})]),default:e(()=>[a("span",Qe,[t(oe,{size:"small"},{default:e(()=>[u(s(p.value),1)]),_:1}),a("span",Ye,s(l(r).user?.displayName??"未登录"),1),t(w,null,{default:e(()=>[t(l(X))]),_:1})])]),_:1})])]),_:1}),t(re,{class:"main mg-content"},{default:e(()=>[t(ie,null,{default:e(({Component:_})=>[t(xe,{name:"fade-up",mode:"out-in"},{default:e(()=>[(n(),m(D(_)))]),_:2},1024)]),_:1})]),_:1}),t(de,{class:"footer"},{default:e(()=>[a("span",null,s(v.value)+" · webVRender :"+s(f.value)+" · API "+s(d.value),1)]),_:1})]),_:1})]),_:1})])}}}),da=Y(Ze,[["__scopeId","data-v-a0d39774"]]);export{da as default};
|