From e87012567c674cd69f7a8f87df7202eac60a8208 Mon Sep 17 00:00:00 2001
From: gaoshp <291585735@qq.com>
Date: 星期二, 11 六月 2024 22:28:14 +0800
Subject: [PATCH] update

---
 src/views/mdc/components/Shift.vue |   90 +++++++++++++++++++++++++++------------------
 1 files changed, 54 insertions(+), 36 deletions(-)

diff --git a/src/views/mdc/components/Shift.vue b/src/views/mdc/components/Shift.vue
index ef36650..692a0eb 100644
--- a/src/views/mdc/components/Shift.vue
+++ b/src/views/mdc/components/Shift.vue
@@ -1,18 +1,19 @@
 <!--
  * @Date: 2024-04-18 21:52:18
  * @LastEditors: Sneed
- * @LastEditTime: 2024-04-20 11:31:18
+ * @LastEditTime: 2024-06-04 21:40:52
  * @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/components/Shift.vue
 -->
 <template>
     <el-row>
         <el-col>
             <el-button-group>
-                <el-button :type="btnListActive == item.id ? 'primary' : ''" v-for="item in btnList" :key="item.id">{{
-                    item.title }}</el-button>
+                <el-button size="small" @click="btnListActive = item.id"
+                    :type="btnListActive == item.id ? 'primary' : ''" v-for="item in btnList" :key="item.id">{{
+                        item.title }}</el-button>
             </el-button-group>
         </el-col>
-        <el-col>
+        <el-col style="margin-top: 12px;">
             <el-card shadow="never">
                 <scEcharts height="300px" :option="option2"></scEcharts>
             </el-card>
@@ -29,7 +30,7 @@
                         <span>{{ scope.row.nameData['1'] }}</span>
                     </template>
                 </el-table-column>
-                <el-table-column prop="" label="鏁堢巼">
+                <el-table-column prop="" :label="colname">
                     <template #default="scope">
                         <span>{{ scope.row.data['1'] }}</span>
                     </template>
@@ -39,7 +40,7 @@
                         <span>{{ scope.row.nameData['2'] }}</span>
                     </template>
                 </el-table-column>
-                <el-table-column prop="" label="鏁堢巼">
+                <el-table-column prop="" :label="colname">
                     <template #default="scope">
                         <span>{{ scope.row.data['2'] }}</span>
                     </template>
@@ -52,6 +53,25 @@
 <script>
 import scEcharts from '@/components/scEcharts';
 export default {
+    props: {
+        url: {
+            default: '/api/blade-mdc/efficiency-analysis',
+            type: String,
+        },
+        colname: {
+            default: '',
+            type: String,
+        },
+        options: {
+            default() {
+                return {}
+            },
+        },
+        datasetNum: {
+            type: Number,
+            default: 100
+        }
+    },
     components: {
         scEcharts
     },
@@ -63,37 +83,26 @@
             btnList: [],
             btnListActive: '',
             chartsData: [],
-            option2: {
-                title: {
-                    text: '缁熻鍥捐〃',
-                    subtext: '鍩虹鎶樼嚎鍥�',
-                },
-                grid: {
-                    top: '80px'
-                },
-                tooltip: {
-                    trigger: 'axis'
-                },
-                xAxis: {
-                    type: 'category',
-                    data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
-                },
-                yAxis: {
-                    type: 'value'
-                },
-                series: [{
-                    data: [120, 200, 150, 80, 70, 110, 130],
-                    type: 'line',
-                },
-                {
-                    data: [110, 180, 120, 120, 60, 90, 110],
-                    type: 'line',
-                }]
-            },
+            option2: null,
+        }
+    },
+    watch: {
+        btnListActive(val) {
+            this.query({
+                ...this.params,
+                startDate: val,
+                endDate: val
+            })
+            this.queryChart({
+                ...this.params,
+                startDate: val,
+                endDate: val
+            })
         }
     },
     methods: {
         init(params) {
+            this.params = params
             this.getTime({
                 endDate: params.endDate,
                 startDate: params.startDate,
@@ -117,7 +126,7 @@
                 ...data
             }).then(res => {
                 if (res.code === 200) {
-                    this.btnList = res.data
+                    this.btnList = res.data.reverse()
                     this.btnListActive = res?.data?.[0]?.id
                 }
             })
@@ -131,8 +140,17 @@
                 queryType: 0,
                 statisticalMethod: this.statisticalMethod
             }
-            return this.$HTTP.post('/api/blade-mdc/efficiency-analysis', dataSend, { params }).then(res => {
+            return this.$HTTP.post(this.url, dataSend, { params }).then(res => {
                 this.chartsData = res.data.items.records
+                let option2 = {
+                    ...this.options
+                }
+                option2.dataset.source = [['product', '鐝1', '鐝2']]
+                res.data.items.records.forEach(v => {
+                    option2.dataset.source.push([v.workstationName, v.data[1] === '-' ? 0 : v.data[1] * this.datasetNum, v.data[2] === '-' ? 0 : v.data[2] * this.datasetNum])
+                });
+                this.option2 = option2
+                console.log(option2)
             })
         },
         query(params) {
@@ -152,7 +170,7 @@
                     delete dataSend.size
                     delete dataSend.order
                     delete dataSend.prop
-                    return await this.$HTTP.post('/api/blade-mdc/efficiency-analysis', dataSend, { params }).then(res => {
+                    return await this.$HTTP.post(this.url, dataSend, { params }).then(res => {
                         return {
                             ...res,
                             data: res.data.items

--
Gitblit v1.9.3