From e081f232138b318338ffca07e7c9fcd941ac20b4 Mon Sep 17 00:00:00 2001
From: zhuzhuanzhuan
Date: 星期五, 12 四月 2024 09:54:17 +0800
Subject: [PATCH] 1、设备综合效率分析以及设备加工工件报表页面表格高度设置为页面进入时即可拖动水平滚动条的高度 2、首页 (1)OEE标题增加月份展示,利用率等效率标题增加日期展示 (2)公司及车间级看板单击OEE车间图表跳转至设备综合效率分析页面并根据唯一编号筛选页面对应数据 (3)工段级看板单击设备效率统计仪表盘图标跳转至统计分析页面并根据唯一编号筛选页面对应数据 (4)调整折线图数据展示维度,通过当前工段下各个设备前7天的利用率、开动率和开机率轮播展示

---
 src/views/dashboard/BranchFactorySignage.vue |   90 +++++++++++++++++++++++++++-----------------
 1 files changed, 55 insertions(+), 35 deletions(-)

diff --git a/src/views/dashboard/BranchFactorySignage.vue b/src/views/dashboard/BranchFactorySignage.vue
index 066d3f9..fa20fd7 100644
--- a/src/views/dashboard/BranchFactorySignage.vue
+++ b/src/views/dashboard/BranchFactorySignage.vue
@@ -1,25 +1,18 @@
 <template>
   <div class="page-container">
-    <!--<div class="page-title">-->
-    <!--<slot name="index_signage_nav"></slot>-->
-    <!--&lt;!&ndash;<dv-decoration-11 class="workshop-nav" v-for="item in workshopList">&ndash;&gt;-->
-    <!--&lt;!&ndash;{{item.workshopName}}&ndash;&gt;-->
-    <!--&lt;!&ndash;</dv-decoration-11>&ndash;&gt;-->
-    <!--</div>-->
     <div class="content-container">
       <div style="width: 25%" class="left-col">
         <div class="back-nav" @click="$emit('backToLastSignage','Index')" v-if="userType===4">
           <dv-decoration-7>涓婁竴绾�</dv-decoration-7>
         </div>
         <dv-border-box-9 style="padding: 30px 20px 0">
-          <!--<div class="first-title">M D C 鍏� 缃� 鎬� 鏁� : 6 0 3 鍙�</div>-->
           <div id="running_state_chart" style="width:100%;height: 400px;"></div>
           <div id="efficiency_chart" style="width: 100%;height: 350px"></div>
         </dv-border-box-9>
       </div>
+
       <div style="width: 42%" class="middle-col">
         <dv-border-box-9 style="padding: 30px 20px 0">
-          <!--<div class="first-title">璁� 澶� 鍙� 璐� 鎬� 鏁� : 1 0 2 2 鍙�</div>-->
           <div style="display: flex">
             <div id="tech_condition_chart" style="width:50%;height: 420px;"></div>
             <div id="warranty_malfunction_chart" style="width:50%;height: 420px;"></div>
@@ -59,6 +52,7 @@
           </div>
         </dv-border-box-9>
       </div>
+
       <div style="width: 32%">
         <dv-border-box-9 style="padding: 30px 0 20px">
           <div id="bar_chart" style="width:100%;height: 280px;"></div>
@@ -116,7 +110,20 @@
         nextNextMonthMaintenancePlanNum: 0,
         twoMaintenanceChartData: [['-', '-', '-']],
         barChart: '',
-        barChartData: [],
+        barChartData: [
+          {
+            'value': '34',
+            'name': '401涓�宸ユ',
+            'productionCode': '4215215621',
+            'productionId': '1729761410329280513'
+          },
+          {
+            'value': '77',
+            'name': '401浜屽伐娈�',
+            'productionCode': '8563354643',
+            'productionId': '1729783206308302849'
+          }
+        ],
         doubleBarChart: '',
         doubleBarChartData: {},
         maintenanceConfig: {},
@@ -139,7 +146,7 @@
         this.getWarrantyMalfunctionDataByApi()
         this.getMonthMaintenanceNumByApi()
         this.getTwoMaintenanceChartDataByApi()
-        this.getBarChartDataByApi()
+        // this.getBarChartDataByApi()
         this.getDoubleBarChartDataByApi()
       },
 
@@ -733,10 +740,11 @@
       /* 缁樺埗鍗曟煴鍥� */
       drawBarChart() {
         this.barChart = this.$echarts.init(document.getElementById('bar_chart'))
+        const defaultData = [100, 100, 100, 100, 100, 100, 100, 100, 100, 100]
         const option = {
           title: {
             show: true, // 鏄惁鏄剧ず鏍囬锛岄粯璁や负true
-            text: 'OEE杞﹂棿', // 涓绘爣棰樻枃鏈�
+            text: '', // 涓绘爣棰樻枃鏈�
             x: 'center', // 鏍囬姘村钩瀹夋斁浣嶇疆锛屽彲閫夊�间负'left'銆�'center'銆�'right'鎴栧叿浣撶殑姘村钩鍧愭爣鍊�
             y: 'top', // 鏍囬鍨傜洿瀹夋斁浣嶇疆锛屽彲閫夊�间负'top'銆�'bottom'銆�'center'鎴栧叿浣撶殑鍨傜洿鍧愭爣鍊�
             textStyle: {
@@ -750,6 +758,10 @@
             trigger: 'axis',
             axisPointer: {
               type: 'shadow'
+            },
+            formatter: function(params) {
+              return '<span style="font-weight:bolder;">' + params[0].name + '</span><br/>' +
+                '<span style="display:inline-block; width:10px; height:10px; border-radius:100px; margin-right:5px; background:' + params[0].color + '"></span>' + ' OEE: ' + params[0].value + '%'
             },
             // backgroundColor: 'rgba(9, 24, 48, 0.5)',
             borderColor: 'rgba(75, 253, 238, 0.4)',
@@ -767,7 +779,7 @@
             nameLocation: 'middle',
             nameGap: 40, // x杞磏ame涓庢í鍧愭爣杞寸嚎鐨勯棿璺�
             type: 'category',
-            data: this.barChartData.map(item => item.name),
+            data: this.barChartData.map(item => item.productionId),
             axisLine: {
               lineStyle: {
                 color: '#FFFFFF'
@@ -778,7 +790,9 @@
               interval: 0, // 鍧愭爣杞村埢搴︽爣绛剧殑鏄剧ず闂撮殧锛屽湪绫荤洰杞翠腑鏈夋晥锛涢粯璁や細閲囩敤鏍囩涓嶉噸鍙犵殑绛栫暐闂撮殧鏄剧ず鏍囩锛涘彲浠ヨ缃垚0寮哄埗鏄剧ず鎵�鏈夋爣绛撅紱濡傛灉璁剧疆涓�1锛岃〃绀恒�庨殧涓�涓爣绛炬樉绀轰竴涓爣绛俱�忥紝濡傛灉鍊间负2锛岃〃绀洪殧涓や釜鏍囩鏄剧ず涓�涓爣绛撅紝浠ユ绫绘帹銆�
               rotate: this.barChartData.length >= 5 ? -30 : 0, // 鍒诲害鏍囩鏃嬭浆鐨勮搴︼紝鍦ㄧ被鐩酱鐨勭被鐩爣绛炬樉绀轰笉涓嬬殑鏃跺�欏彲浠ラ�氳繃鏃嬭浆闃叉鏍囩涔嬮棿閲嶅彔锛涙棆杞殑瑙掑害浠�-90搴﹀埌90搴�
               inside: false, // 鍒诲害鏍囩鏄惁鏈濆唴锛岄粯璁ゆ湞澶�
-              margin: 6 // 鍒诲害鏍囩涓庤酱绾夸箣闂寸殑璺濈
+              formatter: value => {
+                return `${this.barChartData.find(item => item.productionId === value).name}`
+              }
             },
             axisTick: {
               show: true,
@@ -786,9 +800,8 @@
             }
           }],
           yAxis: [{
-            name: '鏁伴噺',
-            nameLocation: 'middle',
-            nameGap: 30, // x杞磏ame涓庢í鍧愭爣杞寸嚎鐨勯棿璺�
+            name: '%',
+            max: 100,
             axisLabel: {
               formatter: '{value}',
               color: '#e2e9ff'
@@ -816,7 +829,7 @@
             itemStyle: {
               color: '#55D6A5'
             },
-            showBackground: true,
+            zlevel: 1,
             label: {
               show: true,
               lineHeight: 10,
@@ -830,9 +843,33 @@
                 fontSize: 18
               }
             }
-          }]
+          },
+            {
+              name: '鑳屾櫙',
+              type: 'bar',
+              barWidth: '15%',
+              barGap: '-100%',
+              data: defaultData,
+              itemStyle: {
+                color: '#11294d'
+              }
+            }]
         }
+        option.title.text = moment().subtract(1, 'months').format('M鏈�') + `OEE杞﹂棿`
         this.barChart.setOption(option, true)
+
+        this.barChart.on('click', params => {
+          console.log('params', params)
+          let productionId
+          // 鐐瑰嚮鐨勬槸鏌变綋鐨勫�硷紝鍚﹀垯鐐瑰嚮鐨勪负鏌变綋鑳屾櫙闃村奖
+          if (params.seriesIndex === 0) productionId = params.data.productionId
+          else productionId = params.name
+
+          this.$router.push({
+            name: 'mdc-base-OEEAnalysis',
+            params: { isEquipment: false, productionId }
+          })
+        })
       },
 
       /* 缁樺埗鍙屾煴鍥� */
@@ -1033,12 +1070,6 @@
       color: #fff;
       margin-bottom: 10px;
 
-      .workshop-nav {
-        width: 120px;
-        height: 40px;
-        font-size: 12px;
-        cursor: pointer;
-      }
     }
 
     .content-container {
@@ -1047,17 +1078,6 @@
       justify-content: space-between;
 
       .left-col {
-        .back-nav {
-          width: 100px;
-          height: 30px;
-          color: #fff;
-          position: absolute;
-          top: 25px;
-          left: 25px;
-          cursor: pointer;
-          z-index: 9999
-        }
-
         .first-title {
           color: #00A8AC;
           font-size: 20px;

--
Gitblit v1.9.3