|
|
import{E as e,F as t,I as n,M as r,S as i,T as a,_ as ee,b as o,g as s,h as c,i as l,k as u,m as d,o as f,p,w as m,x as te,y as h,z as g}from"./index-yNQwsZKK.js";import{t as _}from"./useMockMode-CGiTg8lx.js";import{t as v}from"./request-CbM-LIzp.js";import{t as y}from"./echarts-W_05fbm-.js";var ne={class:`dashboard-page`},re={class:`stat-card`},ie={class:`stat-label`},ae={class:`stat-value`},oe={class:`stat-unit`},se={class:`stat-card`},ce={class:`stat-label`},le={class:`stat-value`},ue={class:`stat-card`},de={class:`stat-label`},fe={class:`stat-value`},pe={key:0,class:`stat-sub`},me={class:`collector-actions`},he={class:`stat-card`},ge={class:`stat-label`},_e={class:`stat-value`},ve={class:`card-title`},ye={class:`card-header`},be={class:`card-title`},xe={class:`date-filter`},Se={class:`card-header`},Ce={class:`card-title`},we={class:`date-filter`},Te={class:`card-header`},Ee={class:`card-title`},De={class:`date-filter`},Oe={class:`card-header`},ke={class:`card-title`},Ae={class:`date-filter`},je={class:`card-header`},Me={class:`card-title`},Ne={class:`date-filter`},b=l(te({__name:`DashboardPage`,setup(l){let{isMock:te}=_(),b={today:`今日`,yesterday:`昨日`,last3:`近3天`,last7:`近7天`,custom:`自定义`};function x(e,t){let n=new Date,r=e=>`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`,i=r(n);switch(e){case`today`:return{startDate:i,endDate:i};case`yesterday`:{let e=new Date(n);e.setDate(e.getDate()-1);let t=r(e);return{startDate:t,endDate:t}}case`last3`:{let e=new Date(n);return e.setDate(e.getDate()-2),{startDate:r(e),endDate:i}}case`last7`:{let e=new Date(n);return e.setDate(e.getDate()-6),{startDate:r(e),endDate:i}}case`custom`:return{startDate:t?.[0]||i,endDate:t?.[1]||i}}}let S=t({onlineCount:0,totalMachines:0,todayProduction:0,activeAlerts:0,collectSuccessRate:0,runningMachines:0,dataMissingMachines:0}),C=t({status:`stopped`,uptimeSeconds:0,serviceStatus:`NotInstalled`,serviceName:``}),w=t(!1),T=t(!1),E=t(!1),D=t([]),O=t([]),Pe=t([]),Fe=t([]),Ie=t([]),k=t([]),A=t(`today`),j=t(),M=t(`today`),N=t(),P=t(`today`),F=t(),I=t(`today`),L=t(),R=t(`today`),z=t(),B=t(10),V=t(`desc`),H=t(10),U=t(10),W=t(`desc`),Le=p(()=>b[R.value]),G=p(()=>{let{startDate:e,endDate:t}=x(R.value,z.value);return Math.max(1,Math.round((new Date(t).getTime()-new Date(e).getTime())/864e5)+1)}),Re=p(()=>G.value>1?`件/台/天`:`件/台`),ze=p(()=>G.value>1?`日均`:`平均`),Be=p(()=>{let{status:e}=C.value;return e===`running`?`success`:e===`paused`?`info`:e===`timeout`?`warning`:e===`stopped`?`info`:e===`not_installed`?`danger`:`warning`}),Ve=p(()=>{let{status:e}=C.value;return e===`running`?`运行中`:e===`paused`?`已暂停`:e===`timeout`?`心跳超时`:e===`stopped`?`已停止`:e===`not_installed`?`未安装`:e||`-`});function He(e){if(!e)return`-`;let t=Math.floor(e/86400),n=Math.floor(e%86400/3600);return t>0?`${t}天${n}时`:`${n}时`}function K(e){return e==null?`-`:Number(e).toFixed(2)}function Ue(){R.value!==`custom`&&ot()}function We(){M.value!==`custom`&&Z()}function Ge(){I.value!==`custom`&&Q()}function Ke(){A.value!==`custom`&&at()}function qe(){P.value!==`custom`&&X()}async function Je(){if(!w.value){w.value=!0;try{if(C.value.serviceStatus&&C.value.serviceStatus===`Running`){f.info(`采集服务已在运行中`);return}if(C.value.serviceStatus&&C.value.serviceStatus===`NotInstalled`){f.warning(`采集服务未安装,请运行 install.ps1 安装脚本`);return}await v.post(`/admin/collector/start`),f.success(`采集服务已启动`),await $()}catch{}finally{w.value=!1}}}async function Ye(){if(!T.value){T.value=!0;try{await v.post(`/admin/collector/stop`),f.success(`采集服务已停止`),await $()}catch{}finally{T.value=!1}}}async function Xe(){if(!E.value){E.value=!0;try{await v.post(`/admin/collector/refresh`),f.success(`配置已刷新`),await $()}catch{}finally{E.value=!1}}}let Ze=t(),Qe=t(),$e=t(),q=null,J=null,Y=null;function et(){Ze.value&&D.value.length&&(q=y.init(Ze.value),q.setOption({tooltip:{trigger:`axis`},grid:{left:50,right:20,top:20,bottom:30},xAxis:{type:`category`,data:D.value.map(e=>e.date.slice(5)),axisLabel:{fontSize:12}},yAxis:{type:`value`,axisLabel:{fontSize:12}},series:[{type:`line`,data:D.value.map(e=>e.quantity),smooth:!0,areaStyle:{opacity:.15},itemStyle:{color:`#409EFF`}}]}))}function tt(){Qe.value&&O.value.length&&(J=y.init(Qe.value),J.setOption({tooltip:{trigger:`item`,formatter:e=>`${e.name}: ${e.value}件 (${e.percent}%)`},legend:{type:`scroll`,bottom:0,itemWidth:12,itemHeight:12,textStyle:{fontSize:12}},series:[{type:`pie`,radius:[`40%`,`65%`],center:[`50%`,`45%`],label:{show:!0,formatter:`{b}: {c}件 ({d}%)`,fontSize:12},data:O.value.map(e=>({value:e.totalQuantity,name:e.programName}))}]}))}function nt(){if($e.value&&k.value.length){let e=Re.value,t=ze.value;Y=y.init($e.value),Y.setOption({tooltip:{trigger:`axis`,formatter:n=>{let r=k.value[n[0].dataIndex];return`${r.workshopName}<br/>${t}产量: ${Number(n[0].value).toFixed(2)} ${e}<br/>总产量: ${r.quantity} 件<br/>机床数: ${r.machineCount} 台`}},grid:{left:60,right:20,top:20,bottom:30},xAxis:{type:`category`,data:k.value.map(e=>e.workshopName),axisLabel:{fontSize:12}},yAxis:{type:`value`,name:e,axisLabel:{fontSize:12}},series:[{type:`bar`,data:k.value.map(e=>e.avgQuantity),itemStyle:{color:`#67C23A`,borderRadius:[4,4,0,0]},barWidth:`40%`,label:{show:!0,position:`top`,formatter:t=>`${Number(t.value).toFixed(2)} ${e}`,fontSize:12}}]})}}function rt(){et(),tt()}function it(){q?.dispose(),J?.dispose(),Y?.dispose(),q=null,J=null,Y=null}async function at(){try{let{startDate:e,endDate:t}=x(A.value,j.value);O.value=(await v.get(`/admin/dashboard/program-distribution`,{params:{startDate:e,endDate:t}})).data?.items||[],J?.dispose(),J=null,await i(),tt()}catch{}}async function X(){try{let{startDate:e,endDate:t}=x(P.value,F.value);Fe.value=(await v.get(`/admin/dashboard/program-rank`,{params:{startDate:e,endDate:t,top:H.value}})).data?.items||[]}catch{}}async function Z(){try{let{startDate:e,endDate:t}=x(M.value,N.value);Pe.value=(await v.get(`/admin/dashboard/machine-rank`,{params:{startDate:e,endDate:t,top:B.value,sortOrder:V.value}})).data?.items||[]}catch{}}async function Q(){try{let{startDate:e,endDate:t}=x(I.value,L.value);Ie.value=(await v.get(`/admin/dashboard/worker-rank`,{params:{startDate:e,endDate:t,top:U.value,sortOrder:W.value}})).data?.items||[]}catch{}}async function ot(){try{let{startDate:e,endDate:t}=x(R.value,z.value);k.value=(await v.get(`/admin/dashboard/workshop-production`,{params:{startDate:e,endDate:t}})).data?.items||[],Y?.dispose(),Y=null,await i(),nt()}catch{}}async function $(){try{let[e,t,n]=await Promise.all([v.get(`/admin/dashboard/summary`),v.get(`/admin/collector/status`),v.get(`/admin/dashboard/trend`)]);S.value=e.data||S.value,C.value=t.data||C.value,D.value=n.data?.items||[],it(),await i(),rt(),await Promise.all([at(),ot(),Z(),Q(),X()])}catch{}}return m(()=>{$()}),a(()=>{it()}),(t,i)=>{let a=u(`el-tooltip`),l=u(`el-card`),f=u(`el-col`),p=u(`el-tag`),m=u(`el-button`),_=u(`el-row`),v=u(`el-radio-button`),y=u(`el-radio-group`),b=u(`el-date-picker`),x=u(`el-option`),D=u(`el-select`),O=u(`el-table-column`),k=u(`router-link`),G=u(`el-table`);return e(),ee(`div`,ne,[o(_,{gutter:16,class:`stat-row`},{default:r(()=>[o(f,{span:6},{default:r(()=>[o(l,{shadow:`hover`},{default:r(()=>[d(`div`,re,[d(`div`,ie,[i[16]||=h(` 在线机床数 `,-1),o(a,{content:`当前网络连通的机床数量占所有已启用机床总数的比例。`,placement:`top`},{default:r(()=>[...i[15]||=[d(`span`,{class:`info-icon`},`ⓘ`,-1)]]),_:1})]),d(`div`,ae,[h(g(S.value.onlineCount),1),d(`span`,oe,` / `+g(S.value.totalMachines),1)])])]),_:1})]),_:1}),o(f,{span:6},{default:r(()=>[o(l,{shadow:`hover`},{default:r(()=>[d(`div`,se,[d(`div`,ce,[i[18]||=h(` 今日总产量 `,-1),o(a,{content:`今日所有机床加工完成的零件总数。`,placement:`top`},{default:r(()=>[...i[17]||=[d(`span`,{class:`info-icon`},`ⓘ`,-1)]]),_:1})]),d(`div`,le,g(S.value.todayProduction?.toLocaleString()),1)])]),_:1})]),_:1}),o(f,{span:6},{default:r(()=>[o(l,{shadow:`hover`},{default:r(()=>[d(`div`,ue,[d(`div`,de,[i[20]||=h(` 采集服务 `,-1),o(a,{content:`数据采集服务的运行状态。`,placement:`top`},{default:r(()=>[...i[19]||=[d(`span`,{class:`info-icon`},`ⓘ`,-1)]]),_:1})]),d(`div`,fe,[o(p,{type:Be.value,size:`small`},{default:r(()=>[h(g(Ve.value),1)]),_:1},8,[`type`])]),C.value.status===`running`?(e(),ee(`div`,pe,`运行 `+g(He(C.value.uptimeSeconds)),1)):s(``,!0)]),d(`div`,me,[C.value.status===`stopped`||C.value.status===`not_installed`?(e(),c(m,{key:0,size:`small`,type:`success`,disabled:``},{default:r(()=>[...i[21]||=[h(`需手动启动服务`,-1)]]),_:1})):s(``,!0),C.value.status===`paused`||C.value.status===`timeout`?(e(),c(m,{key:1,size:`small`,type:`success`,loading:w.value,onClick:Je},{default:r(()=>[...i[22]||=[h(`恢复采集`,-1)]]),_:1},8,[`loading`])):s(``,!0),C.value.status===`running`?(e(),c(m,{key:2,size:`small`,type:`danger`,loading:T.value,onClick:Ye},{default:r(()=>[...i[23]||=[h(`暂停采集`,-1)]]),_:1},8,[`loading`])):s(``,!0),o(m,{size:`small`,type:`warning`,loading:E.value,onClick:Xe},{default:r(()=>[...i[24]||=[h(`刷新配置`,-1)]]),_:1},8,[`loading`])])]),_:1})]),_:1}),o(f,{span:6},{default:r(()=>[o(l,{shadow:`hover`},{default:r(()=>[d(`div`,he,[d(`div`,ge,[i[26]||=h(` 今日运行机床数 `,-1),o(a,{content:`当前正在执行加工程序的机床数量。`,placement:`top`},{default:r(()=>[...i[25]||=[d(`span`,{class:`info-icon`},`ⓘ`,-1)]]),_:1})]),d(`div`,_e,[h(g(S.value.runningMachines),1),i[27]||=d(`span`,{class:`stat-unit`},` 台`,-1)])])]),_:1})]),_:1})]),_:1}),o(_,{gutter:16,class:`chart-row`},{default:r(()=>[o(f,{span:12},{default:r(()=>[o(l,{shadow:`hover`},{header:r(()=>[d(`span`,ve,[i[29]||=h(` 产量趋势(近7天) `,-1),o(a,{content:`最近7天每天的零件总产量变化趋势。`,placement:`top`},{default:r(()=>[...i[28]||=[d(`span`,{class:`info-icon`},`ⓘ`,-1)]]),_:1})])]),default:r(()=>[d(`div`,{ref_key:`trendChartRef`,ref:Ze,style:{height:`260px`}},null,512)]),_:1})]),_:1}),o(f,{span:12},{default:r(()=>[o(l,{shadow:`hover`},{header:r(()=>[d(`div`,ye,[d(`span`,be,[i[31]||=h(` NC程序产量分布 `,-1),o(a,{content:`按NC程序名统计的产量占比分布。`,placement:`top`},{default:r(()=>[...i[30]||=[d(`span`,{class:`info-icon`},`ⓘ`,-1)]]),_:1})]),d(`div`,xe,[o(y,{modelValue:A.value,"onUpdate:modelValue":i[0]||=e=>A.value=e,size:`small`,onChange:Ke},{default:r(()=>[o(v,{value:`today`},{default:r(()=>[...i[32]||=[h(`今日`,-1)]]),_:1}),o(v,{value:`yesterday`},{default:r(()=>[...i[33]||=[h(`昨日`,-1)]]),_:1}),o(v,{value:`last3`},{default:r(()=>[...i[34]||=[h(`近3天`,-1)]]),_:1}),o(v,{value:`last7`},{default:r(()=>[...i[35]||=[h(`近7天`,-1)]]),_:1}),o(v,{value:`custom`},{default:r(()=>[...i[36]||=[h(`自定义`,-1)]]),_:1})]),_:1},8,[`modelValue`]),A.value===`custom`?(e(),c(b,{key:0,modelValue:j.value,"onUpdate:modelValue":i[1]||=e=>j.value=e,type:`daterange`,"range-separator":`至`,"start-placeholder":`开始日期`,"end-placeholder":`结束日期`,size:`small`,"value-format":`YYYY-MM-DD`,"disabled-date":e=>e>new Date,style:{"margin-left":`8px`},onChange:at},null,8,[`modelValue`,`disabled-date`])):s(``,!0)])])]),default:r(()=>[d(`div`,{ref_key:`programDistChartRef`,ref:Qe,style:{height:`260px`}},null,512)]),_:1})]),_:1})]),_:1}),o(_,{gutter:16,class:`rank-row`},{default:r(()=>[o(f,{span:12},{default:r(()=>[o(l,{shadow:`hover`},{header:r(()=>[d(`div`,Se,[d(`span`,Ce,[i[38]||=h(` 机床产量排行 TOP `,-1),o(D,{modelValue:B.value,"onUpdate:modelValue":i[2]||=e=>B.value=e,size:`small`,style:{width:`72px`},onChange:Z},{default:r(()=>[o(x,{value:5,label:`5`}),o(x,{value:10,label:`10`}),o(x,{value:20,label:`20`}),o(x,{value:50,label:`50`}),o(x,{value:100,label:`100`})]),_:1},8,[`modelValue`]),o(a,{content:`单台机床加工零件数排列。`,placement:`top`},{default:r(()=>[...i[37]||=[d(`span`,{class:`info-icon`},`ⓘ`,-1)]]),_:1})]),d(`div`,we,[o(D,{modelValue:V.value,"onUpdate:modelValue":i[3]||=e=>V.value=e,size:`small`,style:{width:`90px`,"margin-right":`8px`},onChange:Z},{default:r(()=>[o(x,{value:`desc`,label:`降序`}),o(x,{value:`asc`,label:`升序`})]),_:1},8,[`modelValue`]),o(y,{modelValue:M.value,"onUpdate:modelValue":i[4]||=e=>M.value=e,size:`small`,onChange:We},{default:r(()=>[o(v,{value:`today`},{default:r(()=>[...i[39]||=[h(`今日`,-1)]]),_:1}),o(v,{value:`yesterday`},{default:r(()=>[...i[40]||=[h(`昨日`,-1)]]),_:1}),o(v,{value:`last3`},{default:r(()=>[...i[41]||=[h(`近3天`,-1)]]),_:1}),o(v,{value:`last7`},{default:r(()=>[...i[42]||=[h(`近7天`,-1)]]),_:1}),o(v,{value:`custom`},{default:r(()=>[...i[43]||=[h(`自定义`,-1)]]),_:1})]),_:1},8,[`modelValue`]),M.value===`custom`?(e(),c(b,{key:0,modelValue:N.value,"onUpdate:modelValue":i[5]||=e=>N.value=e,type:`daterange`,"range-separator":`至`,"start-placeholder":`开始日期`,"end-placeholder":`结束日期`,size:`small`,"value-format":`YYYY-MM-DD`,"disabled-date":e=>e>new Date,style:{"margin-left":`8px`},onChange:Z},null,8,[`modelValue`,`disabled-date`])):s(``,!0)])])]),default:r(()=>[o(G,{data:Pe.value,stripe:``,size:`small`,style:{width:`100%`}},{default:r(()=>[o(O,{prop:`rank`,label:`排名`,width:`60`,align:`center`}),o(O,{label:`机床名称`,width:`120`},{default:r(({row:e})=>[o(k,{to:n(te)?`/mock/machine/`+e.id:`/machine/`+e.id,class:`machine-link`},{default:r(()=>[h(g(e.machineName),1)]),_:2},1032,[`to`])]),_:1}),o(O,{prop:`program`,label:`当前程序`,"show-overflow-tooltip":``}),o(O,{label:`产量`,width:`80`,align:`center`},{default:r(({row:e})=>[h(g(K(e.quantity)),1)]),_:1}),o(O,{label:`状态`,width:`70`,align:`center`},{default:r(({row:e})=>[o(p,{type:e.status===1?`success`:`danger`,size:`small`},{default:r(()=>[h(g(e.status===1?`在线`:`离线`),1)]),_:2},1032,[`type`])]),_:1})]),_:1},8,[`data`])]),_:1})]),_:1}),o(f,{span:12},{default:r(()=>[o(l,{shadow:`hover`},{header:r(()=>[d(`div`,Te,[d(`span`,Ee,[i[45]||=h(` NC程序产量排行 TOP `,-1),o(D,{modelValue:H.value,"onUpdate:modelValue":i[6]||=e=>H.value=e,size:`small`,style:{width:`72px`},onChange:X},{default:r(()=>[o(x,{value:5,label:`5`}),o(x,{value:10,label:`10`}),o(x,{value:20,label:`20`}),o(x,{value:50,label:`50`}),o(x,{value:100,label:`100`})]),_:1},8,[`modelValue`]),o(a,{content:`按NC程序名统计的产量排行。`,placement:`top`},{default:r(()=>[...i[44]||=[d(`span`,{class:`info-icon`},`ⓘ`,-1)]]),_:1})]),d(`div`,De,[o(y,{modelValue:P.value,"onUpdate:modelValue":i[7]||=e=>P.value=e,size:`small`,onChange:qe},{default:r(()=>[o(v,{value:`today`},{default:r(()=>[...i[46]||=[h(`今日`,-1)]]),_:1}),o(v,{value:`yesterday`},{default:r(()=>[...i[47]||=[h(`昨日`,-1)]]),_:1}),o(v,{value:`last3`},{default:r(()=>[...i[48]||=[h(`近3天`,-1)]]),_:1}),o(v,{value:`last7`},{default:r(()=>[...i[49]||=[h(`近7天`,-1)]]),_:1}),o(v,{value:`custom`},{default:r(()=>[...i[50]||=[h(`自定义`,-1)]]),_:1})]),_:1},8,[`modelValue`]),P.value===`custom`?(e(),c(b,{key:0,modelValue:F.value,"onUpdate:modelValue":i[8]||=e=>F.value=e,type:`daterange`,"range-separator":`至`,"start-placeholder":`开始日期`,"end-placeholder":`结束日期`,size:`small`,"value-format":`YYYY-MM-DD`,"disabled-date":e=>e>new Date,style:{"margin-left":`8px`},onChange:X},null,8,[`modelValue`,`disabled-date`])):s(``,!0)])])]),default:r(()=>[o(G,{data:Fe.value,stripe:``,size:`small`,style:{width:`100%`}},{default:r(()=>[o(O,{prop:`rank`,label:`排名`,width:`60`,align:`center`}),o(O,{prop:`programName`,label:`程序名`,"show-overflow-tooltip":``}),o(O,{label:`总产量`,width:`100`,align:`center`},{default:r(({row:e})=>[h(g(K(e.totalQuantity)),1)]),_:1}),o(O,{prop:`machineCount`,label:`涉及机床数`,width:`120`,align:`center`})]),_:1},8,[`data`])]),_:1})]),_:1})]),_:1}),o(_,{gutter:16,class:`rank-row`},{default:r(()=>[o(f,{span:12},{default:r(()=>[o(l,{shadow:`hover`},{header:r(()=>[d(`div`,Oe,[d(`span`,ke,[i[52]||=h(` 工人产量排行 TOP `,-1),o(D,{modelValue:U.value,"onUpdate:modelValue":i[9]||=e=>U.value=e,size:`small`,style:{width:`72px`},onChange:Q},{default:r(()=>[o(x,{value:5,label:`5`}),o(x,{value:10,label:`10`}),o(x,{value:20,label:`20`}),o(x,{value:50,label:`50`}),o(x,{value:100,label:`100`})]),_:1},8,[`modelValue`]),o(a,{content:`工人所绑定的所有机床产量合计。`,placement:`top`},{default:r(()=>[...i[51]||=[d(`span`,{class:`info-icon`},`ⓘ`,-1)]]),_:1})]),d(`div`,Ae,[o(D,{modelValue:W.value,"onUpdate:modelValue":i[10]||=e=>W.value=e,size:`small`,style:{width:`90px`,"margin-right":`8px`},onChange:Q},{default:r(()=>[o(x,{value:`desc`,label:`降序`}),o(x,{value:`asc`,label:`升序`})]),_:1},8,[`modelValue`]),o(y,{modelValue:I.value,"onUpdate:modelValue":i[11]||=e=>I.value=e,size:`small`,onChange:Ge},{default:r(()=>[o(v,{value:`today`},{default:r(()=>[...i[53]||=[h(`今日`,-1)]]),_:1}),o(v,{value:`yesterday`},{default:r(()=>[...i[54]||=[h(`昨日`,-1)]]),_:1}),o(v,{value:`last3`},{default:r(()=>[...i[55]||=[h(`近3天`,-1)]]),_:1}),o(v,{value:`last7`},{default:r(()=>[...i[56]||=[h(`近7天`,-1)]]),_:1}),o(v,{value:`custom`},{default:r(()=>[...i[57]||=[h(`自定义`,-1)]]),_:1})]),_:1},8,[`modelValue`]),I.value===`custom`?(e(),c(b,{key:0,modelValue:L.value,"onUpdate:modelValue":i[12]||=e=>L.value=e,type:`daterange`,"range-separator":`至`,"start-placeholder":`开始日期`,"end-placeholder":`结束日期`,size:`small`,"value-format":`YYYY-MM-DD`,"disabled-date":e=>e>new Date,style:{"margin-left":`8px`},onChange:Q},null,8,[`modelValue`,`disabled-date`])):s(``,!0)])])]),default:r(()=>[o(G,{data:Ie.value,stripe:``,size:`small`,style:{width:`100%`}},{default:r(()=>[o(O,{prop:`rank`,label:`排名`,width:`60`,align:`center`}),o(O,{prop:`workerName`,label:`工人姓名`}),o(O,{prop:`machineCount`,label:`绑定机床`,width:`100`,align:`center`}),o(O,{label:`总产量`,width:`100`,align:`center`},{default:r(({row:e})=>[h(g(K(e.totalQuantity)),1)]),_:1})]),_:1},8,[`data`])]),_:1})]),_:1}),o(f,{span:12},{default:r(()=>[o(l,{shadow:`hover`},{header:r(()=>[d(`div`,je,[d(`span`,Me,[h(` 车间平均单机产量(`+g(Le.value)+`) `,1),o(a,{placement:`top`},{content:r(()=>[...i[58]||=[d(`div`,{style:{"max-width":`360px`,"line-height":`1.6`}},[d(`b`,null,`统计规则:`),h(`车间总产量 ÷ 车间机床数 ÷ 天数`),d(`br`),d(`br`),d(`b`,null,`数据来源:`),h(`系统每日凌晨1:00自动执行日终汇总,将每台机床当天所有产量分段按程序名合并计算,生成日产量记录。多天范围取日均单机产量。`),d(`br`),d(`br`),d(`b`,null,`产量计算:`),h(`以NC程序名标识零件,程序切换时自动结算上一段产量。同程序多次出现时分段记录、日汇总合并。含手工修正值。 `)],-1)]]),default:r(()=>[i[59]||=d(`span`,{class:`info-icon`},`ⓘ`,-1)]),_:1})]),d(`div`,Ne,[o(y,{modelValue:R.value,"onUpdate:modelValue":i[13]||=e=>R.value=e,size:`small`,onChange:Ue},{default:r(()=>[o(v,{value:`today`},{default:r(()=>[...i[60]||=[h(`今日`,-1)]]),_:1}),o(v,{value:`yesterday`},{default:r(()=>[...i[61]||=[h(`昨日`,-1)]]),_:1}),o(v,{value:`last3`},{default:r(()=>[...i[62]||=[h(`近3天`,-1)]]),_:1}),o(v,{value:`last7`},{default:r(()=>[...i[63]||=[h(`近7天`,-1)]]),_:1}),o(v,{value:`custom`},{default:r(()=>[...i[64]||=[h(`自定义`,-1)]]),_:1})]),_:1},8,[`modelValue`]),R.value===`custom`?(e(),c(b,{key:0,modelValue:z.value,"onUpdate:modelValue":i[14]||=e=>z.value=e,type:`daterange`,"range-separator":`至`,"start-placeholder":`开始日期`,"end-placeholder":`结束日期`,size:`small`,"value-format":`YYYY-MM-DD`,"disabled-date":e=>e>new Date,style:{"margin-left":`8px`},onChange:ot},null,8,[`modelValue`,`disabled-date`])):s(``,!0)])])]),default:r(()=>[d(`div`,{ref_key:`workshopChartRef`,ref:$e,style:{height:`260px`}},null,512)]),_:1})]),_:1})]),_:1})])}}}),[[`__scopeId`,`data-v-d17a88a7`]]);export{b as default}; |