From df48216098748d6d66856237d1833f8d8eb068bc Mon Sep 17 00:00:00 2001
From: Mr.Shi <1878285526@qq.com>
Date: 星期二, 22 八月 2023 14:58:50 +0800
Subject: [PATCH] 大屏

---
 screen_standard/src/views/index.vue |  201 ++++++++++++++++++++++++++------------------------
 1 files changed, 104 insertions(+), 97 deletions(-)

diff --git a/screen_standard/src/views/index.vue b/screen_standard/src/views/index.vue
index 0dc7ccb..0683d24 100644
--- a/screen_standard/src/views/index.vue
+++ b/screen_standard/src/views/index.vue
@@ -152,7 +152,7 @@
                     <span>杩�7澶╀笉鑹搧鍒嗗竷</span>
                 </div>
                 <div class="content_right_top_nr">
-                    <div class="content_right_top_nr_bottom_yuan">
+                    <div class="content_right_top_nr_bottom_yuan" v-if="data.typeDistribution.length > 0">
                         <span>67</span>
                         <span>涓嶈壇椤瑰垎甯�</span>
                     </div>
@@ -190,7 +190,7 @@
 
 <script setup>
     import { reactive, ref, onMounted, onBeforeUnmount, onUnmounted, nextTick, computed, watch } from 'vue'
-    import { getTop, getStockList, getWorkPlansList, getProcedureProcessList, getRecordLogPage, getDeviceCheckPage } from '@/utils/api.js'
+    import { getTop, getStockList, getWorkPlansList, getProcedureProcessList, getRecordLogPage, getDeviceCheckPage, getUnqualified7DayData, getUnqualifiedCateData } from '@/utils/api.js'
     import { useCounterStore } from '@/stores/counter.js'
     import * as echarts from 'echarts'
 
@@ -201,22 +201,8 @@
         processProgress: [],
         log: [],
         patrolInspection: [],
-        dayDistribution: [
-            { date: '8/1', num: '20' },
-            { date: '8/2', num: '10' },
-            { date: '8/3', num: '20' },
-            { date: '8/4', num: '40' },
-            { date: '8/5', num: '30' },
-            { date: '8/6', num: '10' },
-            { date: '8/7', num: '20' },
-        ],
-        typeDistribution: [
-            { name: '澶栬涓嶈壇', num: 15 },
-            { name: '鏈夋瘺鍒�', num: 12 },
-            { name: '灏哄涓嶈壇', num: 22 },
-            { name: '鏈夊垝鐥�', num: 5 },
-            { name: '鍏朵粬', num: 2 }
-        ]
+        dayDistribution: [],
+        typeDistribution: []
     })
 
     let timer = ref(null)
@@ -307,6 +293,32 @@
                     start4()
                 })
             })
+            // 杩戜竷澶╀笉鑹暟
+            getUnqualified7DayData(companyId.value, departId.value, '')
+                .then(res => {
+                    if (res && res.length > 0) {
+                        data.dayDistribution = res.map(item => {
+                            return {
+                                date: item.createTime,
+                                num: item.unqualifiedNum
+                            }
+                        })
+                        setDayChart()
+                    }
+                })
+            // 杩戜竷澶╀笉鑹」
+            getUnqualifiedCateData(companyId.value, departId.value, '')
+                .then(res => {
+                    if (res && res.length > 0) {
+                        data.typeDistribution = res.map(item => {
+                            return {
+                                name: item.categoryName,
+                                num: item.unqualifiedNum
+                            }
+                        })
+                        setTypeChart()
+                    }
+                })
         }
     })
 
@@ -409,92 +421,87 @@
      * 涓嶈壇绫诲瀷鍒嗗竷
      */
     function setTypeChart() {
-    let dayChartDom = document.getElementById('pieChart');
-    let myChart = echarts.init(dayChartDom);
-    let legendData = []
-    let seriesData = []
-    data.typeDistribution.forEach(item => {
-        legendData.push(item.name)
-        seriesData.push({name:item.name, value:item.num})
-    })
-    let option = {
-        // title: {
-        //   text: '鍚屽悕鏁伴噺缁熻',
-        //   subtext: '绾睘铏氭瀯',
-        //   left: 'center'
-        // },
-        // tooltip: {
-        //   trigger: 'item',
-        //   formatter: '{a} <br/>{b} : {c} ({d}%)'
-        // },
-        legend: {
-        show: false,
-        type: 'scroll',
-        orient: 'vertical',
-        right: 10,
-        top: 20,
-        bottom: 20,
-        data: legendData
-        },
-        series: [
-        {
-            // name: '濮撳悕',
-            type: 'pie',
+        let dayChartDom = document.getElementById('pieChart');
+        let myChart = echarts.init(dayChartDom);
+        let legendData = []
+        let seriesData = []
+        data.typeDistribution.forEach(item => {
+            legendData.push(item.name)
+            seriesData.push({name:item.name, value:item.num})
+        })
+        let option = {
+            // title: {
+            //   text: '鍚屽悕鏁伴噺缁熻',
+            //   subtext: '绾睘铏氭瀯',
+            //   left: 'center'
+            // },
+            // tooltip: {
+            //   trigger: 'item',
+            //   formatter: '{a} <br/>{b} : {c} ({d}%)'
+            // },
+            legend: {
+            show: false,
+            type: 'scroll',
+            orient: 'vertical',
+            right: 10,
+            top: 20,
+            bottom: 20,
+            data: legendData
+            },
+            series: [
+            {
+                // name: '濮撳悕',
+                type: 'pie',
 
-            radius: ['60%', '70%'],
-            // avoidLabelOverlap: false,
-            itemStyle: {
-            borderRadius: 4,
-            borderColor: 'rgba(52, 88, 159, 0.4)',
-            borderWidth: 4
-            },
-            center: ['50%', '50%'],
-            labelLine: {
-            show: false
-            },
-            label: {
-            formatter:'{dot| } {title|{b} {c}}\n\n{per|{d}%}',
-            rich: {
-                title: {
-                color: '#fff'
+                radius: ['60%', '70%'],
+                // avoidLabelOverlap: false,
+                itemStyle: {
+                borderRadius: 4,
+                borderColor: 'rgba(52, 88, 159, 0.4)',
+                borderWidth: 4
                 },
-                per: {
-                color: '#01D9FE'
+                center: ['50%', '50%'],
+                labelLine: {
+                show: false
                 },
-                dot: {
-                backgroundColor: 'inherit',
-                width: 8,
-                height: 8,
-                borderRadius: 4
+                label: {
+                formatter:'{dot| } {title|{b} {c}}\n\n{per|{d}%}',
+                rich: {
+                    title: {
+                    color: '#fff'
+                    },
+                    per: {
+                    color: '#01D9FE'
+                    },
+                    dot: {
+                    backgroundColor: 'inherit',
+                    width: 8,
+                    height: 8,
+                    borderRadius: 4
+                    }
+                }
+                },
+                // labelLayout: {
+                //   hideOverlap: true
+                // },
+                endLabel: {
+                show: true,
+                distance: 5,
+                color: "red"
+                },
+                data: seriesData,
+                emphasis: {
+                itemStyle: {
+                    shadowBlur: 10,
+                    shadowOffsetX: 0,
+                    shadowColor: 'rgba(0, 0, 0, 1)'
+                }
                 }
             }
-            },
-            // labelLayout: {
-            //   hideOverlap: true
-            // },
-            endLabel: {
-            show: true,
-            distance: 5,
-            color: "red"
-            },
-            data: seriesData,
-            emphasis: {
-            itemStyle: {
-                shadowBlur: 10,
-                shadowOffsetX: 0,
-                shadowColor: 'rgba(0, 0, 0, 1)'
-            }
-            }
+            ]
         }
-        ]
+        option && myChart.setOption(option);
     }
-    option && myChart.setOption(option);
-    }
-
-    onMounted(() => {
-        setDayChart()
-        setTypeChart()
-    })
 
     onBeforeUnmount(()=>{
         clearTimeout(timer.value)

--
Gitblit v1.9.3