From ab1ea48f5a77cd02ffbadc0622ac2f2ecec45a81 Mon Sep 17 00:00:00 2001
From: gaoshp <291585735@qq.com>
Date: 星期六, 20 四月 2024 19:46:22 +0800
Subject: [PATCH] udpate
---
src/views/mdc/components/Shift.vue | 74 +++++++++-----
src/views/mdc/components/Time.vue | 174 +++++++++++++++++++++++++++++++++-
src/views/mdc/efficiency-analysis.vue | 9 +
3 files changed, 220 insertions(+), 37 deletions(-)
diff --git a/src/views/mdc/components/Shift.vue b/src/views/mdc/components/Shift.vue
index ef36650..9adc08a 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-04-20 11:31:18
+ * @LastEditTime: 2024-04-20 19:40:06
* @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/components/Shift.vue
-->
<template>
@@ -12,7 +12,7 @@
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>
@@ -63,33 +63,7 @@
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,
}
},
methods: {
@@ -133,6 +107,48 @@
}
return this.$HTTP.post('/api/blade-mdc/efficiency-analysis', dataSend, { params }).then(res => {
this.chartsData = res.data.items.records
+ let option2 = {
+ legend: {
+ type: 'plain',
+ },
+ title: {
+ text: '缁熻鍥捐〃',
+ subtext: '',
+ },
+ grid: {
+ top: '80px'
+ },
+ tooltip: {
+ trigger: 'axis'
+ },
+ xAxis: {
+ type: 'category',
+ },
+ yAxis: {
+ type: 'value'
+ },
+ dataZoom: [
+ { type: 'slider' }
+ ],
+ dataset: {
+ source: [
+ ['product', '鐝1', '鐝2'],
+
+ ]
+ },
+ series: [{
+ type: 'bar',
+ },
+ {
+ type: 'bar',
+ }]
+ }
+ 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], v.data[2] === '-' ? 0 : v.data[1]])
+ });
+ this.option2 = option2
+ console.log(option2)
})
},
query(params) {
diff --git a/src/views/mdc/components/Time.vue b/src/views/mdc/components/Time.vue
index 6578296..607b5e9 100644
--- a/src/views/mdc/components/Time.vue
+++ b/src/views/mdc/components/Time.vue
@@ -1,18 +1,182 @@
<!--
- * @Date: 2024-04-18 21:52:28
+ * @Date: 2024-04-18 21:52:18
* @LastEditors: Sneed
- * @LastEditTime: 2024-04-18 21:54:53
+ * @LastEditTime: 2024-04-20 19:43:36
* @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/components/Time.vue
-->
<template>
- <div>
-
- </div>
+ <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-group>
+ </el-col>
+ <el-col style="margin-top: 12px;">
+ <el-card shadow="never">
+ <scEcharts height="300px" :option="option2"></scEcharts>
+ </el-card>
+ </el-col>
+ <el-col>
+ 缁熻鏁版嵁
+ </el-col>
+ <el-col>
+ <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="鐝1">
+ <template #default="scope">
+ <span>{{ scope.row.nameData['1'] }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="" label="鏁堢巼">
+ <template #default="scope">
+ <span>{{ scope.row.data['1'] }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="" label="鐝2">
+ <template #default="scope">
+ <span>{{ scope.row.nameData['2'] }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="" label="鏁堢巼">
+ <template #default="scope">
+ <span>{{ scope.row.data['2'] }}</span>
+ </template>
+ </el-table-column>
+ </scTable>
+ </el-col>
+ </el-row>
</template>
<script>
+import scEcharts from '@/components/scEcharts';
export default {
+ components: {
+ scEcharts
+ },
+ data() {
+ return {
+ apiObj: '',
+ params: {},
+ statisticalMethod: 'SHIFT',
+ btnList: [],
+ btnListActive: '',
+ chartsData: [],
+ option2: null,
+ }
+ },
+ methods: {
+ init(params) {
+ this.getTime({
+ endDate: params.endDate,
+ startDate: params.startDate,
+ statisticalMethod: this.statisticalMethod
+ }).then(res => {
+ this.query({
+ ...params,
+ startDate: this.btnListActive,
+ endDate: this.btnListActive
+ })
+ this.queryChart({
+ ...params,
+ startDate: this.btnListActive,
+ endDate: this.btnListActive
+ })
+ })
+ },
+ getTime(data) {
+ return this.$HTTP.post('/api/blade-mdc/efficiency-analysis/interval', {
+ ...data
+ }).then(res => {
+ if (res.code === 200) {
+ this.btnList = res.data
+ this.btnListActive = res?.data?.[0]?.id
+ }
+ })
+ },
+ queryChart(data) {
+ let params = {
+ size: -1
+ }
+ let dataSend = {
+ ...data,
+ queryType: 0,
+ statisticalMethod: this.statisticalMethod
+ }
+ return this.$HTTP.post('/api/blade-mdc/efficiency-analysis', dataSend, { params }).then(res => {
+ this.chartsData = res.data.items.records
+ let option2 = {
+ legend: {
+ type: 'plain',
+ },
+ title: {
+ text: '缁熻鍥捐〃',
+ subtext: '',
+ },
+ grid: {
+ top: '80px'
+ },
+ tooltip: {
+ trigger: 'axis'
+ },
+ xAxis: {
+ type: 'category',
+ },
+ yAxis: {
+ type: 'value'
+ },
+ dataZoom: [
+ { type: 'slider' }
+ ],
+ dataset: {
+ source: [
+ ['product', '鐝1', '鐝2'],
+
+ ]
+ },
+ series: [{
+ type: 'bar',
+ },
+ {
+ type: 'bar',
+ }]
+ }
+ 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], v.data[2] === '-' ? 0 : v.data[1]])
+ });
+ this.option2 = option2
+ })
+ },
+ query(params) {
+ this.params = params
+ this.apiObj = {
+ get: async (data) => {
+ let params = {
+ current: data.current,
+ size: data.size
+ }
+ let dataSend = {
+ ...data,
+ queryType: 1,
+ statisticalMethod: this.statisticalMethod
+ }
+ delete dataSend.current
+ delete dataSend.size
+ delete dataSend.order
+ delete dataSend.prop
+ return await this.$HTTP.post('/api/blade-mdc/efficiency-analysis', dataSend, { params }).then(res => {
+ return {
+ ...res,
+ data: res.data.items
+ }
+ })
+ }
+ }
+ }
+ }
}
</script>
diff --git a/src/views/mdc/efficiency-analysis.vue b/src/views/mdc/efficiency-analysis.vue
index a8ebf55..56beb57 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-04-18 22:47:36
+ * @LastEditTime: 2024-04-20 19:41:25
* @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/efficiency-analysis.vue
* 鏁堢巼鍒嗘瀽
-->
@@ -67,8 +67,11 @@
Time
},
watch: {
- treeChecked(value) {
- // this.query(value)
+ activeName() {
+ this.$nextTick(() => {
+ this.query()
+ })
+
}
},
data() {
--
Gitblit v1.9.3