From f360cde8ff0b28ba677a4693cf45f47f206dd746 Mon Sep 17 00:00:00 2001
From: zhaowei <zhaowei>
Date: 星期三, 21 五月 2025 17:52:54 +0800
Subject: [PATCH] 1、设备管理中设备属性的字段显隐权限调整到设备状态字段 2、设备日志添加批量导出功能

---
 src/views/mdc/base/modules/WorkshopSignage/WorkshopDeviceOverview.vue |   62 ++++++++++++++++++++++++++----
 1 files changed, 53 insertions(+), 9 deletions(-)

diff --git a/src/views/mdc/base/modules/WorkshopSignage/WorkshopDeviceOverview.vue b/src/views/mdc/base/modules/WorkshopSignage/WorkshopDeviceOverview.vue
index 4bf22e8..ce5ba6e 100644
--- a/src/views/mdc/base/modules/WorkshopSignage/WorkshopDeviceOverview.vue
+++ b/src/views/mdc/base/modules/WorkshopSignage/WorkshopDeviceOverview.vue
@@ -1,6 +1,21 @@
 <template>
   <div style="flex:1;display: flex;">
-    <div class="chart-container" :id="chartContainerId"></div>
+    <!--<div style="height: 100%">-->
+    <!--<div class="chart-container" :id="chartContainerId"></div>-->
+
+    <!--</div>-->
+    <div style="flex: 1;display: flex;flex-direction: column">
+      <div class="chart-container" :id="chartContainerId" style="flex: 1"></div>
+      <div class="pie-value-container">
+        <div>
+          <span class="color-square" style="background-color: #00923f"></span>瀹屾垚閲�
+          {{equipmentStatusCountObj.qualifiedQty}}
+        </div>
+        <div>
+          <span class="color-square" style="background-color: #e67817"></span>浠诲姟閲� {{equipmentStatusCountObj.planQty}}
+        </div>
+      </div>
+    </div>
     <div class="equipment-state-container">
       <div>璁惧鎬绘暟锛歿{equipmentStatusCountObj.equipmentCount}}鍙�</div>
       <div>澶т慨銆侀」淇暟閲忥細{{equipmentStatusCountObj.repairCount}}鍙�</div>
@@ -18,16 +33,22 @@
 
       </div>
     </div>
+
+    <SignageModal ref="signageModalRef" :modalTitle="modalTitle" :productionId="currentProductionId"/>
   </div>
 </template>
 
 <script>
   import signageApi from '@/api/signage'
+  import SignageModal from './SignageModal'
 
   export default {
     name: 'WorkshopDeviceOverview',
-    components: {},
+    components: { SignageModal },
     props: {
+      workshopName: {
+        type: String
+      },
       currentProductionId: {
         type: String
       },
@@ -42,7 +63,8 @@
       return {
         chartContainer: null,
         chartContainerId: 'left-col-chart1',
-        equipmentStatusCountObj: {}
+        equipmentStatusCountObj: {},
+        modalTitle: ''
       }
     },
     mounted() {
@@ -70,9 +92,9 @@
       },
 
       initChart() {
-        const yAxisData1 = this.toDecimal2NoZero((this.equipmentStatusCountObj.runCount / this.equipmentStatusCountObj.equipmentCount) * 100)
+        const yAxisData1 = this.toDecimal2NoZero((+this.equipmentStatusCountObj.planQty !== 0 ? this.equipmentStatusCountObj.qualifiedQty / this.equipmentStatusCountObj.planQty : 0) * 100)
         const yAxisData2 = 100 - yAxisData1
-        const runNum = yAxisData1
+        const finishedNum = yAxisData1
         const option = {
           legend: {
             show: false
@@ -81,13 +103,13 @@
             {
               name: '绫荤洰',
               type: 'pie',
-              radius: '60%',
+              radius: '90%',
               center: ['50%', '50%'],
               hoverAnimation: false,
               data: [
                 {
                   value: 0,
-                  name: '杩愯閲�',
+                  name: '瀹屾垚閲�',
                   itemStyle: { color: '#00923f' },
                   label: {
                     show: true,
@@ -96,13 +118,13 @@
                     position: 'inside',
                     textBorderWidth: 0,
                     formatter: function() {
-                      return runNum + '%'
+                      return finishedNum + '%'
                     }
                   }
                 },
                 {
                   value: 100,
-                  name: '璁惧閲�',
+                  name: '浠诲姟閲�',
                   itemStyle: { color: '#e67817' },
                   label: {
                     show: false
@@ -124,6 +146,12 @@
         }
         option.series[0].data[0].value = yAxisData1
         option.series[0].data[1].value = yAxisData2
+
+        this.chartContainer.on('click', () => {
+          this.modalTitle = this.workshopName + '褰撴湀浠诲姟瀹屾垚鐧惧垎姣�'
+          this.$refs.signageModalRef.visible = true
+        })
+
         this.chartContainer.setOption(option, true)
       },
 
@@ -155,6 +183,22 @@
 </script>
 
 <style lang="less">
+  .pie-value-container {
+    > div {
+      text-align: center;
+      margin-bottom: 5px;
+    }
+
+    .color-square {
+      display: inline-block;
+      width: 0.625vw;
+      height: 0.45vw;
+      border-radius: 0.1vw;
+      background-color: #00ff80;
+      margin-right: 0.4vw;
+    }
+  }
+
   .equipment-state-container {
     display: flex;
     flex-direction: column;

--
Gitblit v1.9.3