From cbc3dfa01846e836a18face51e329fa600f5e3d0 Mon Sep 17 00:00:00 2001
From: gaoshp <291585735@qq.com>
Date: 星期一, 17 六月 2024 22:04:50 +0800
Subject: [PATCH] update

---
 src/views/mdc/components/Shift.vue    |   13 +++++-
 src/views/mdc/components/Time.vue     |   31 +++++++++++++--
 src/views/mdc/output-statistics.vue   |   13 ++++--
 src/views/mdc/efficiency-analysis.vue |   43 ++++++++++++++++++++-
 4 files changed, 86 insertions(+), 14 deletions(-)

diff --git a/src/views/mdc/components/Shift.vue b/src/views/mdc/components/Shift.vue
index ed721e5..62f0181 100644
--- a/src/views/mdc/components/Shift.vue
+++ b/src/views/mdc/components/Shift.vue
@@ -1,7 +1,7 @@
 <!--
  * @Date: 2024-04-18 21:52:18
  * @LastEditors: Sneed
- * @LastEditTime: 2024-06-16 14:58:00
+ * @LastEditTime: 2024-06-17 21:55:33
  * @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/components/Shift.vue
 -->
 <template>
@@ -32,7 +32,7 @@
                 </el-table-column>
                 <el-table-column prop="" :label="colname">
                     <template #default="scope">
-                        <span>{{ (scope.row.data['1'] ? scope.row.data['1'] * 100 : 0).toFixed(2) }}%</span>
+                        <span>{{ colnameFn(scope.row.data['1']) }}</span>
                     </template>
                 </el-table-column>
                 <el-table-column prop="" label="鐝2">
@@ -42,7 +42,7 @@
                 </el-table-column>
                 <el-table-column prop="" :label="colname">
                     <template #default="scope">
-                        <span>{{ scope.row.data['2'] }}</span>
+                        <span>{{ colnameFn(scope.row.data['2']) }}</span>
                     </template>
                 </el-table-column>
             </scTable>
@@ -62,6 +62,13 @@
             default: '',
             type: String,
         },
+        colnameFn: {
+            type: Function,
+            default: val => {
+                if (isNaN(val)) return '-'
+                return `${(val ? val * 100 : 0).toFixed(2)}%`
+            }
+        },
         options: {
             default() {
                 return {}
diff --git a/src/views/mdc/components/Time.vue b/src/views/mdc/components/Time.vue
index 17d160d..acb1f5c 100644
--- a/src/views/mdc/components/Time.vue
+++ b/src/views/mdc/components/Time.vue
@@ -1,7 +1,7 @@
 <!--
  * @Date: 2024-04-18 21:52:18
  * @LastEditors: Sneed
- * @LastEditTime: 2024-04-27 23:30:06
+ * @LastEditTime: 2024-06-17 22:02:38
  * @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/components/Time.vue
 -->
 <template>
@@ -26,9 +26,9 @@
             <scTable ref="table" row-key="id" border :params="params" :apiObj="apiObj" stripe>
                 <el-table-column prop="workstationCode" label="宸ヤ綅缂栫爜" />
                 <el-table-column prop="workstationName" label="宸ヤ綅鍚嶇О" />
-                <el-table-column prop="" :label="item" v-for="item in cols">
+                <el-table-column prop="" :label="item" v-for="item in cols" :key="item">
                     <template #default="scope">
-                        <span>{{ scope.row.data[item] }}</span>
+                        <span>{{ colnameFn(scope.row.data[item]) }}</span>
                     </template>
                 </el-table-column>
 
@@ -44,6 +44,25 @@
         url: {
             default: '/api/blade-mdc/efficiency-analysis',
             type: String,
+        },
+        options: {
+            default() {
+                return {}
+            },
+        },
+        colnameFn: {
+            type: Function,
+            default: val => {
+                if (isNaN(val)) return '-'
+                return `${(val ? val * 100 : 0).toFixed(2)}%`
+            }
+        },
+        resFn: {
+            type: Function,
+            default: val => {
+                if (isNaN(val)) return 0
+                return (val - 0) * 100
+            }
         }
     },
     components: {
@@ -157,7 +176,8 @@
                     dataset: {
                         source: []
                     },
-                    series: []
+                    series: [],
+                    ...this.options
                 }
                 let source1 = ['product']
                 let row = res.data.items.records[0]
@@ -171,7 +191,8 @@
                 res.data.items.records.forEach(v => {
                     let current = [v.id]
                     Object.keys(v.nameData).forEach(key => {
-                        current.push((v.data[key] - 0) * 100)
+                        current.push(this.resFn(v.data[key]))
+                        // current.push((v.data[key] - 0) * 100)
                     })
                     option2.dataset.source.push(current)
                 });
diff --git a/src/views/mdc/efficiency-analysis.vue b/src/views/mdc/efficiency-analysis.vue
index 8fcd468..268f2c4 100644
--- a/src/views/mdc/efficiency-analysis.vue
+++ b/src/views/mdc/efficiency-analysis.vue
@@ -1,7 +1,7 @@
 <!--
  * @Date: 2024-04-09 22:11:21
  * @LastEditors: Sneed
- * @LastEditTime: 2024-06-16 15:06:31
+ * @LastEditTime: 2024-06-17 21:53:34
  * @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/efficiency-analysis.vue
  * 鏁堢巼鍒嗘瀽
 -->
@@ -44,7 +44,7 @@
                                 <Shift :options="chartOption" colname="鏁堢巼" ref="shift" v-if="activeName == 'shift'" />
                             </el-tab-pane>
                             <el-tab-pane label="鎸夋椂闂村懆鏈熺粺璁�" name="time">
-                                <Time ref="time" v-if="activeName == 'time'" />
+                                <Time :options="chartOption1" ref="time" v-if="activeName == 'time'" />
                             </el-tab-pane>
                         </el-tabs>
                     </el-main>
@@ -80,6 +80,45 @@
             productivityType: 'OEE',
             time: [],
             treeChecked: [],
+            chartOption1: {
+                title: {
+                    text: '缁熻鍥捐〃',
+                    subtext: '',
+                },
+                grid: {
+                    top: '80px'
+                },
+                tooltip: {
+                    trigger: 'axis'
+                },
+                tooltip: {
+                    trigger: 'axis',
+                    valueFormatter: (params) => {
+                        return params.toFixed(2) + '%'
+                    }
+                },
+                xAxis: {
+                    type: 'category',
+                    axisLabel: {
+                        interval: 'auto',
+                    }
+                },
+                yAxis: {
+                    type: 'value',
+                    axisLabel: {
+                        formatter: (value) => {
+                            return value + '%'
+                        }
+                    },
+                },
+                dataZoom: [
+                    { type: 'slider' }
+                ],
+                dataset: {
+                    source: []
+                },
+                series: []
+            },
             chartOption: {
                 legend: {
                     type: 'plain',
diff --git a/src/views/mdc/output-statistics.vue b/src/views/mdc/output-statistics.vue
index 0c19a39..1d9c0d0 100644
--- a/src/views/mdc/output-statistics.vue
+++ b/src/views/mdc/output-statistics.vue
@@ -1,7 +1,7 @@
 <!--
  * @Date: 2024-04-09 22:11:21
  * @LastEditors: Sneed
- * @LastEditTime: 2024-06-04 21:23:21
+ * @LastEditTime: 2024-06-17 22:01:34
  * @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/output-statistics.vue
  * 鏁堢巼鍒嗘瀽
 -->
@@ -34,12 +34,14 @@
                     <el-main>
                         <el-tabs tab-position="top" v-model="activeName" type="card">
                             <el-tab-pane label="鎸夌彮娆$粺璁�" name="shift">
-                                <Shift :options="chartOption" :datasetNum="1" colname="浜ч噺" url="/api/blade-mdc/output"
-                                    ref="shift" v-if="activeName == 'shift'">
+                                <Shift :options="chartOption" :datasetNum="1" colname="浜ч噺"
+                                    :colnameFn="val => { return val }" url="/api/blade-mdc/output" ref="shift"
+                                    v-if="activeName == 'shift'">
                                 </Shift>
                             </el-tab-pane>
                             <el-tab-pane label="鎸夋椂闂村懆鏈熺粺璁�" name="time">
-                                <Time url="/api/blade-mdc/output" ref="time" v-if="activeName == 'time'">
+                                <Time :resFn="val => val" :options="chartOption1" :colnameFn="val => { return val }"
+                                    url="/api/blade-mdc/output" ref="time" v-if="activeName == 'time'">
 
                                 </Time>
                             </el-tab-pane>
@@ -76,6 +78,9 @@
             activeName: 'shift',
             time: [],
             treeChecked: [],
+            chartOption1: {
+
+            },
             chartOption: {
                 legend: {
                     type: 'plain',

--
Gitblit v1.9.3