You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
haoliang-net/deploy-web/admin/assets/WorkerDetailPage-JiwJTU0c.js

1 line
4.0 KiB
JavaScript

import{C as e,E as t,F as n,I as r,M as i,S as a,_ as o,b as s,k as c,m as l,n as u,w as d,x as f,y as p,z as m}from"./index-yNQwsZKK.js";import{t as h}from"./request-CbM-LIzp.js";import{t as g}from"./PageHeader-yD9tr7GF.js";import{t as _}from"./useMockPath-CT2FRUTb.js";import{t as v}from"./echarts-W_05fbm-.js";var y=f({__name:`WorkerDetailPage`,setup(f){let y=u(),{isMock:b}=_(),x=n({}),S=n([]),C=n([]),w=n(),T=null;async function E(){let e=y.params.id,[t,n,r]=await Promise.all([h.get(`/admin/worker/${e}`),h.get(`/admin/worker/${e}/machines`),h.get(`/admin/worker/${e}/production/today`)]);x.value=t.data||{},S.value=n.data?.items||[],C.value=r.data?.items||[];let i=await h.get(`/admin/worker/${e}/production/trend`);if(await a(),w.value){T=v.init(w.value);let e=i.data?.items||[];T.setOption({xAxis:{type:`category`,data:e.map(e=>e.date.slice(5))},yAxis:{type:`value`},series:[{type:`line`,data:e.map(e=>e.quantity),smooth:!0,areaStyle:{opacity:.1}}],tooltip:{trigger:`axis`},grid:{left:40,right:20,top:10,bottom:30}})}}d(E),e(()=>{T?.dispose()});function D(e){return(window.location.pathname.startsWith(`/mock`)?`/mock/machine/`:`/machine/`)+(e.machineId??e.id)}return(e,n)=>{let a=c(`router-link`),u=c(`el-breadcrumb-item`),d=c(`el-breadcrumb`),f=c(`el-descriptions-item`),h=c(`el-tag`),_=c(`el-descriptions`),v=c(`el-card`),y=c(`el-col`),T=c(`el-row`),E=c(`el-table-column`),O=c(`el-table`);return t(),o(`div`,null,[s(g,{title:`工人详情:${x.value.name}`,showBack:!0},{breadcrumb:i(()=>[s(d,{separator:`/`,style:{margin:`0 0 12px 0`}},{default:i(()=>[s(u,null,{default:i(()=>[s(a,{to:r(b)?`/mock/dashboard`:`/dashboard`},{default:i(()=>[...n[0]||=[p(`首页`,-1)]]),_:1},8,[`to`])]),_:1}),s(u,null,{default:i(()=>[s(a,{to:r(b)?`/mock/worker`:`/worker`},{default:i(()=>[...n[1]||=[p(`工人管理`,-1)]]),_:1},8,[`to`])]),_:1}),s(u,null,{default:i(()=>[p(m(x.value.name||`工人详情`),1)]),_:1})]),_:1})]),_:1},8,[`title`]),s(T,{gutter:20},{default:i(()=>[s(y,{span:12},{default:i(()=>[s(v,{shadow:`hover`},{header:i(()=>[...n[2]||=[l(`span`,null,`基本信息`,-1)]]),default:i(()=>[s(_,{column:2,border:``,size:`small`},{default:i(()=>[s(f,{label:`工号`},{default:i(()=>[p(m(x.value.code),1)]),_:1}),s(f,{label:`姓名`},{default:i(()=>[p(m(x.value.name),1)]),_:1}),s(f,{label:`状态`},{default:i(()=>[s(h,{type:x.value.isEnabled?`success`:`danger`,size:`small`},{default:i(()=>[p(m(x.value.isEnabled?`启用`:`停用`),1)]),_:1},8,[`type`])]),_:1}),s(f,{label:`绑定机床数`},{default:i(()=>[p(m(x.value.machineCount||0),1)]),_:1})]),_:1})]),_:1})]),_:1}),s(y,{span:12},{default:i(()=>[s(v,{shadow:`hover`},{header:i(()=>[...n[3]||=[l(`span`,null,`7天产量趋势`,-1)]]),default:i(()=>[l(`div`,{ref_key:`chartRef`,ref:w,style:{height:`200px`}},null,512)]),_:1})]),_:1})]),_:1}),s(v,{shadow:`hover`,class:`mt-20`},{header:i(()=>[...n[4]||=[l(`span`,null,`绑定机床`,-1)]]),default:i(()=>[s(O,{data:S.value,border:``,stripe:``,size:`small`},{default:i(()=>[s(E,{label:`机床名称`},{default:i(({row:e})=>[s(a,{to:D(e),style:{color:`var(--el-color-primary)`,cursor:`pointer`,"text-decoration":`none`}},{default:i(()=>[p(m(e.machineName),1)]),_:2},1032,[`to`])]),_:1}),s(E,{prop:`deviceCode`,label:`device_code`}),s(E,{prop:`workshopName`,label:`车间`}),s(E,{prop:`brandName`,label:`品牌`}),s(E,{label:`在线`,align:`center`},{default:i(({row:e})=>[s(h,{type:e.isOnline?`success`:`danger`,size:`small`},{default:i(()=>[p(m(e.isOnline?`在线`:`离线`),1)]),_:2},1032,[`type`])]),_:1}),s(E,{prop:`programName`,label:`当前程序`})]),_:1},8,[`data`])]),_:1}),s(v,{shadow:`hover`,class:`mt-20`},{header:i(()=>[...n[5]||=[l(`span`,null,`今日产量`,-1)]]),default:i(()=>[s(O,{data:C.value,border:``,stripe:``,size:`small`},{default:i(()=>[s(E,{prop:`machineName`,label:`机床名称`}),s(E,{prop:`programName`,label:`程序名`}),s(E,{prop:`quantity`,label:`产量`,align:`center`}),s(E,{prop:`runTime`,label:`运行时间`,align:`center`}),s(E,{prop:`cuttingTime`,label:`切削时间`,align:`center`})]),_:1},8,[`data`])]),_:1})])}}});export{y as default};