From 8b2a0199527fa2d2f0fd4c420dd374e42c496c48 Mon Sep 17 00:00:00 2001
From: lzhe <lzhe@example.com>
Date: 星期三, 09 十月 2024 11:32:28 +0800
Subject: [PATCH] 1
---
src/views/mdc/alarm-statistics.vue | 128 +++++++++++++++++++++++++++++++++++++++++-
1 files changed, 123 insertions(+), 5 deletions(-)
diff --git a/src/views/mdc/alarm-statistics.vue b/src/views/mdc/alarm-statistics.vue
index 6095b7e..9ada019 100644
--- a/src/views/mdc/alarm-statistics.vue
+++ b/src/views/mdc/alarm-statistics.vue
@@ -1,21 +1,139 @@
<!--
* @Date: 2024-04-09 22:11:21
* @LastEditors: Sneed
- * @LastEditTime: 2024-04-15 23:51:52
+ * @LastEditTime: 2024-06-22 18:50:49
* @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/alarm-statistics.vue
- * 杩囩▼鍙傛暟
+ * 鏁堢巼鍒嗘瀽
-->
<template>
- <el-main>
- <el-card shadow="never">
- 杩囩▼鍙傛暟
+ <el-main style="height: 100%;">
+ <el-card shadow="never" style="height: 100%;" body-style="height: 100%">
+ <el-container style="height: 100%;">
+ <el-aside width="300px" style="height: 100%;">
+ <el-container>
+ <el-main class="nopadding">
+ <el-row>
+ <el-col style="margin-top: 14px;">鏃ユ湡</el-col>
+ <el-col>
+ <el-date-picker value-format="YYYY-MM-DD" style="width: 250px" v-model="time"
+ type="daterange" range-separator="-" start-placeholder="" end-placeholder="" />
+ </el-col>
+ </el-row>
+ <el-row style="margin-top: 14px;">
+ 宸ヤ綅
+ </el-row>
+ <MYTree v-model="treeChecked" @loaded="query"></MYTree>
+ </el-main>
+ <el-footer>
+ <el-button type="primary" @click="query()">鏌ヨ</el-button>
+ <!-- <el-button @click="exportExcel">瀵煎嚭</el-button> -->
+ <exportDialog ref="export" @export="exportExcel"></exportDialog>
+ </el-footer>
+ </el-container>
+ </el-aside>
+ <el-container>
+ <el-main>
+ <el-tabs tab-position="top" v-model="activeName" type="card">
+ <el-tab-pane label="鎸夌彮娆$粺璁�" name="shift">
+ <Shift colname="浜ч噺" url="/api/blade-mdc/alarm/summary-shift-graph" ref="shift"
+ v-if="activeName == 'shift'">
+ </Shift>
+ </el-tab-pane>
+ <el-tab-pane label="鎸夋椂闂村懆鏈熺粺璁�" name="time">
+ <Time url="/api/blade-mdc/alarm/summary-graph" ref="time" v-if="activeName == 'time'">
+ </Time>
+ </el-tab-pane>
+ </el-tabs>
+ </el-main>
+ </el-container>
+ </el-container>
</el-card>
</el-main>
</template>
<script>
+import moment from 'moment';
+import MYTree from './MYTree.vue'
+import Shift from './components/ShiftAlarm.vue'
+import Time from './components/TimeAlarm.vue'
+import exportDialog from '@/layout/components/exportDialog.vue'
export default {
+ components: {
+ MYTree,
+ Shift,
+ Time,
+ exportDialog
+ },
+ watch: {
+ activeName() {
+ this.$nextTick(() => {
+ this.query()
+ })
+ }
+ },
+ data() {
+ return {
+ activeName: 'shift',
+ time: [],
+ treeChecked: [],
+ options: [
+ {
+ label: '绋煎姩鐜�',
+ value: 'OEE',
+ },
+ {
+ label: '鎶ヨ鐜�',
+ value: 'ALARM',
+ },
+ {
+ label: '杩愯鐜�',
+ value: 'RUNNING',
+ },
+ ]
+ }
+ },
+ created() {
+ this.time = [moment().format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')]
+ },
+ mounted() {
+ // this.$nextTick(() => {
+ // this.query()
+ // })
+ },
+ methods: {
+ exportExcel(statisticalMethod) {
+ let { start, end } = this.$refs.export.format(this.time[0], this.time[1], statisticalMethod)
+ this.$HTTP.post(`/api/blade-mdc/alarm/export-alarm`, {
+ startTime: start,
+ endTime: end,
+ enums: statisticalMethod,
+ month: 0,
+ queryTime: '',
+ shiftIndex: 1,
+ week: 0,
+ year: 0,
+ workstationId: this.treeChecked.toString()
+ }).then(res => {
+ if (res.success) {
+ window.open(res.data.link)
+ } else {
+ this.$message.error(res.msg)
+ }
+ })
+ },
+ query(firstWorkKey) {
+ let workstationId = firstWorkKey ? [firstWorkKey] : [...this.treeChecked]
+ this.$nextTick(() => {
+ this.$refs[this.activeName].init({
+ endDate: this.time[1],
+ startDate: this.time[0],
+ workstationId
+ })
+ })
+
+ }
+ }
}
</script>
--
Gitblit v1.9.3