feat: add run.ps1 script to start projects easily

add a powershell script that supports starting MES, WMS, WMSClient, Workstation and Dashboard projects with one command, includes build and run logic for backend services and npm dev for dashboard
This commit is contained in:
SunYF
2026-08-28 17:03:03 +08:00
parent a9c3fbeb41
commit cbd55338f1
30 changed files with 592 additions and 61 deletions
@@ -0,0 +1 @@
import{m as f,w as l,r as a,o as c,a as t,g as D,f as s,p as g,c as k,F as x,t as n,l as F,d as V,h as G,i as v}from"./index-DK0Mia3I.js";const L={__name:"Trace",setup(I){const p=v(""),o=v(null),_=v("");async function w(){if(p.value){_.value="",o.value=null;try{o.value=await G.get("/trace",{params:{sn:p.value}})}catch(u){_.value=u.message||"查询失败"}}}function d(u){return u?String(u).replace("T"," ").slice(0,19):"-"}return(u,m)=>{const K=a("el-input"),y=a("el-form-item"),S=a("el-button"),T=a("el-form"),C=a("el-alert"),i=a("el-descriptions-item"),A=a("el-descriptions"),B=a("el-timeline-item"),O=a("el-timeline"),b=a("el-tab-pane"),r=a("el-table-column"),q=a("el-tag"),h=a("el-table"),j=a("el-tabs"),z=a("el-card");return c(),f(z,null,{default:l(()=>[t(T,{inline:""},{default:l(()=>[t(y,{label:"工件SN"},{default:l(()=>[t(K,{modelValue:p.value,"onUpdate:modelValue":m[0]||(m[0]=e=>p.value=e),style:{width:"220px"},placeholder:"输入SN查询追溯",onKeyup:D(w,["enter"])},null,8,["modelValue"])]),_:1}),t(y,null,{default:l(()=>[t(S,{type:"primary",onClick:w},{default:l(()=>[...m[1]||(m[1]=[s("追溯查询",-1)])]),_:1})]),_:1})]),_:1}),_.value?(c(),f(C,{key:0,title:_.value,type:"error","show-icon":"",closable:"",style:{"margin-bottom":"10px"}},null,8,["title"])):g("",!0),o.value?(c(),k(x,{key:1},[t(A,{column:4,border:"",style:{"margin-bottom":"12px"}},{default:l(()=>[t(i,{label:"SN"},{default:l(()=>{var e;return[s(n((e=o.value.workpiece)==null?void 0:e.sn),1)]}),_:1}),t(i,{label:"工单号"},{default:l(()=>{var e;return[s(n((e=o.value.workpiece)==null?void 0:e.orderNo),1)]}),_:1}),t(i,{label:"状态"},{default:l(()=>{var e;return[s(n((e=o.value.workpiece)==null?void 0:e.status),1)]}),_:1}),t(i,{label:"当前工序"},{default:l(()=>{var e;return[s(n((e=o.value.workpiece)==null?void 0:e.currentProcess),1)]}),_:1}),t(i,{label:"进线时间"},{default:l(()=>{var e;return[s(n(d((e=o.value.workpiece)==null?void 0:e.onlineAt)),1)]}),_:1}),t(i,{label:"完工时间"},{default:l(()=>{var e;return[s(n(d((e=o.value.workpiece)==null?void 0:e.doneAt)),1)]}),_:1})]),_:1}),t(j,null,{default:l(()=>[t(b,{label:"工序时间线"},{default:l(()=>[t(O,null,{default:l(()=>[(c(!0),k(x,null,F(o.value.processTimeline||[],e=>(c(),f(B,{key:e.id,timestamp:e.operator?e.operator+" · "+d(e.endedAt):d(e.endedAt),type:e.result==="NG"?"danger":"success"},{default:l(()=>[s(n(e.processName)+"(工序 "+n(e.processCode)+",工位 "+n(e.stationNo)+")— "+n(e.result),1)]),_:2},1032,["timestamp","type"]))),128))]),_:1})]),_:1}),t(b,{label:"步骤考核数据"},{default:l(()=>[t(h,{data:o.value.stepData||[],border:"",size:"small"},{default:l(()=>[t(r,{prop:"stepName",label:"步骤","min-width":"110"}),t(r,{prop:"criterionName",label:"考核项","min-width":"110"}),t(r,{prop:"value",label:"数值",width:"100"}),t(r,{prop:"isOK",label:"合格",width:"80"},{default:l(({row:e})=>[t(q,{type:e.isOK?"success":"danger"},{default:l(()=>[s(n(e.isOK?"OK":"NG"),1)]),_:2},1032,["type"])]),_:1}),t(r,{prop:"operator",label:"操作人",width:"90"})]),_:1},8,["data"])]),_:1}),t(b,{label:"拧紧数据"},{default:l(()=>[t(h,{data:o.value.torqueRecords||[],border:"",size:"small"},{default:l(()=>[t(r,{prop:"stationNo",label:"工位",width:"80"}),t(r,{prop:"torque",label:"扭矩",width:"100"}),t(r,{prop:"angle",label:"角度",width:"90"}),t(r,{prop:"result",label:"结果",width:"80"}),t(r,{prop:"operator",label:"操作人",width:"90"}),t(r,{prop:"time",label:"时间","min-width":"160"})]),_:1},8,["data"])]),_:1}),t(b,{label:"成品关联"},{default:l(()=>{var e,N;return[V("p",null,"批次号:"+n((((e=o.value.associationTrace)==null?void 0:e.batchItems)||[]).join(", ")||"无"),1),V("p",null,"精密件SN"+n((((N=o.value.associationTrace)==null?void 0:N.serialItems)||[]).join(", ")||"无"),1)]}),_:1})]),_:1})],64)):g("",!0)]),_:1})}}};export{L as default};