2024-03-04 20:33:32 +08:00
|
|
|
<template>
|
|
|
|
|
<div v-if="view2">
|
|
|
|
|
<el-row>
|
|
|
|
|
<el-col :span="12">
|
2024-12-06 16:11:33 +08:00
|
|
|
<span style="font-size: 14px; line-height: 30px">值类型选择:</span>
|
|
|
|
|
<el-select style="min-width: 200px; width: 200px" @change="changeView" v-model="value"
|
|
|
|
|
placeholder="请选择值类型">
|
|
|
|
|
<el-option v-for="item in options" :key="item.value" :label="item.label"
|
|
|
|
|
:value="item.value"></el-option>
|
2024-03-04 20:33:32 +08:00
|
|
|
</el-select>
|
2025-01-15 10:44:57 +08:00
|
|
|
<!-- <el-button v-if="view2 && senior" class="ml10" type="primary"
|
|
|
|
|
@click="AdvancedAnalytics">高级分析</el-button> -->
|
2024-03-04 20:33:32 +08:00
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
2024-12-06 16:11:33 +08:00
|
|
|
<el-button @click="backbxlb" class="el-icon-refresh-right" icon="el-icon-CloseBold"
|
|
|
|
|
style="float: right">
|
2024-03-04 20:33:32 +08:00
|
|
|
返回
|
|
|
|
|
</el-button>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
2024-12-06 16:11:33 +08:00
|
|
|
<div v-loading="loading" style="height: calc(100vh - 190px)">
|
|
|
|
|
<el-tabs v-if="view4" class="default-main" v-model="bxactiveName" @tab-click="bxhandleClick">
|
|
|
|
|
<el-tab-pane label="瞬时波形" name="ssbx" class="boxbx pt10 pb10"
|
|
|
|
|
:style="'height:' + bxecharts + ';overflow-y: scroll;'">
|
|
|
|
|
<shushiboxi ref="shushiboxiRef" v-if="bxactiveName == 'ssbx' && showBoxi" :value="value"
|
|
|
|
|
:boxoList="boxoList" :wp="wp">
|
|
|
|
|
</shushiboxi>
|
|
|
|
|
</el-tab-pane>
|
|
|
|
|
<el-tab-pane label="RMS波形" class="boxbx pt10 pb10" name="rmsbx"
|
|
|
|
|
:style="'height:' + bxecharts + ';overflow-y: scroll;'">
|
|
|
|
|
<rmsboxi ref="rmsboxiRef" v-if="bxactiveName == 'rmsbx' && showBoxi" :value="value"
|
|
|
|
|
:boxoList="boxoList" :wp="wp">
|
|
|
|
|
</rmsboxi>
|
|
|
|
|
</el-tab-pane>
|
|
|
|
|
</el-tabs>
|
|
|
|
|
<el-empty v-else description="暂无数据" style="height: calc(100vh - 190px)" />
|
|
|
|
|
</div>
|
2024-03-04 20:33:32 +08:00
|
|
|
</div>
|
|
|
|
|
<div v-if="view3" class="pd10">
|
|
|
|
|
<span style="font-weight: 500; font-size: 22px">高级分析</span>
|
2024-12-06 16:11:33 +08:00
|
|
|
<el-button icon="el-icon-Back" @click="gaoBack" style="float: right">返回</el-button>
|
2024-03-04 20:33:32 +08:00
|
|
|
<analytics :flag="true" :GJList="GJList" :boxoList="boxoList"></analytics>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
<script setup lang="ts">
|
|
|
|
|
import shushiboxi from '@/components/echarts/shushiboxi.vue'
|
|
|
|
|
import rmsboxi from '@/components/echarts/rmsboxi.vue'
|
2024-12-06 16:11:33 +08:00
|
|
|
import analytics from '@/components/echarts/analytics.vue'
|
2024-03-04 20:33:32 +08:00
|
|
|
import { ref, reactive } from 'vue'
|
|
|
|
|
import { analysis } from '@/api/advance-boot/analyse'
|
|
|
|
|
import { mainHeight } from '@/utils/layout'
|
2024-12-06 16:11:33 +08:00
|
|
|
import { getMonitorEventAnalyseWave, downloadWaveFile } from '@/api/event-boot/transient'
|
2024-03-04 20:33:32 +08:00
|
|
|
const emit = defineEmits(['backbxlb'])
|
|
|
|
|
interface Props {
|
2024-12-06 16:11:33 +08:00
|
|
|
// boxoList: any
|
|
|
|
|
// wp: any,
|
|
|
|
|
senior?: boolean
|
2024-03-04 20:33:32 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const props = withDefaults(defineProps<Props>(), {
|
2024-12-06 16:11:33 +08:00
|
|
|
senior: false
|
2024-03-04 20:33:32 +08:00
|
|
|
})
|
2024-12-06 16:11:33 +08:00
|
|
|
const loading = ref(true)
|
2024-03-04 20:33:32 +08:00
|
|
|
const bxactiveName = ref('ssbx')
|
2024-12-06 16:11:33 +08:00
|
|
|
const rmsboxiRef = ref()
|
2024-03-04 20:33:32 +08:00
|
|
|
const value = ref(1)
|
|
|
|
|
const options = ref([
|
|
|
|
|
{
|
|
|
|
|
value: 1,
|
|
|
|
|
label: '一次值'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
value: 2,
|
|
|
|
|
label: '二次值'
|
|
|
|
|
}
|
|
|
|
|
])
|
2024-12-06 16:11:33 +08:00
|
|
|
const shushiboxiRef = ref()
|
2024-03-04 20:33:32 +08:00
|
|
|
const bxecharts = mainHeight(95).height as any
|
|
|
|
|
const view2 = ref(true)
|
2024-12-06 16:11:33 +08:00
|
|
|
const boxoList = ref(null)
|
|
|
|
|
const wp = ref(null)
|
2024-03-04 20:33:32 +08:00
|
|
|
const showBoxi = ref(true)
|
|
|
|
|
const view3 = ref(false)
|
2024-12-06 16:11:33 +08:00
|
|
|
const view4 = ref(false)
|
2024-03-04 20:33:32 +08:00
|
|
|
const GJList = ref([])
|
|
|
|
|
|
2024-12-06 16:11:33 +08:00
|
|
|
const open = async (row: any) => {
|
|
|
|
|
loading.value = true
|
|
|
|
|
await getMonitorEventAnalyseWave({ id: row.eventId, systemType: 0 })
|
|
|
|
|
.then(res => {
|
|
|
|
|
|
|
|
|
|
row.loading = false
|
|
|
|
|
if (res != undefined) {
|
|
|
|
|
boxoList.value = row
|
|
|
|
|
wp.value = res.data
|
|
|
|
|
loading.value = false
|
|
|
|
|
view4.value = true
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
.catch(() => {
|
|
|
|
|
loading.value = false
|
|
|
|
|
})
|
|
|
|
|
}
|
2024-03-04 20:33:32 +08:00
|
|
|
const bxhandleClick = (tab: any) => {
|
2024-12-06 16:11:33 +08:00
|
|
|
loading.value = true
|
2024-03-04 20:33:32 +08:00
|
|
|
if (tab.name == 'ssbx') {
|
2024-12-06 16:11:33 +08:00
|
|
|
if (rmsboxiRef.value) rmsboxiRef.value.backbxlb()
|
2024-03-04 20:33:32 +08:00
|
|
|
bxactiveName.value = 'ssbx'
|
2024-12-06 16:11:33 +08:00
|
|
|
|
2024-03-04 20:33:32 +08:00
|
|
|
} else if (tab.name == 'rmsbx') {
|
2024-12-06 16:11:33 +08:00
|
|
|
if (shushiboxiRef.value) shushiboxiRef.value.backbxlb()
|
2024-03-04 20:33:32 +08:00
|
|
|
bxactiveName.value = 'rmsbx'
|
2024-12-06 16:11:33 +08:00
|
|
|
|
2024-03-04 20:33:32 +08:00
|
|
|
}
|
2024-12-06 16:11:33 +08:00
|
|
|
setTimeout(() => {
|
|
|
|
|
loading.value = false
|
|
|
|
|
},0)
|
2024-03-04 20:33:32 +08:00
|
|
|
// console.log(tab, event);
|
|
|
|
|
}
|
|
|
|
|
const backbxlb = () => {
|
2024-12-06 16:11:33 +08:00
|
|
|
boxoList.value = null
|
|
|
|
|
wp.value = null
|
|
|
|
|
if (shushiboxiRef.value) shushiboxiRef.value.backbxlb()
|
|
|
|
|
if (rmsboxiRef.value) rmsboxiRef.value.backbxlb()
|
|
|
|
|
|
2024-03-04 20:33:32 +08:00
|
|
|
emit('backbxlb')
|
|
|
|
|
}
|
|
|
|
|
// 高级分析
|
|
|
|
|
const AdvancedAnalytics = () => {
|
|
|
|
|
analysis({
|
2024-12-06 16:11:33 +08:00
|
|
|
eventIndex: boxoList.value.eventId
|
2024-03-04 20:33:32 +08:00
|
|
|
}).then(res => {
|
|
|
|
|
GJList.value = res.data
|
|
|
|
|
view3.value = true
|
|
|
|
|
view2.value = false
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
const changeView = () => {
|
|
|
|
|
showBoxi.value = false
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
showBoxi.value = true
|
|
|
|
|
}, 0)
|
|
|
|
|
}
|
|
|
|
|
const gaoBack = () => {
|
|
|
|
|
view2.value = true
|
|
|
|
|
view3.value = false
|
|
|
|
|
}
|
2024-12-06 16:11:33 +08:00
|
|
|
defineExpose({ open })
|
2024-03-04 20:33:32 +08:00
|
|
|
</script>
|
|
|
|
|
<style lang="scss" scoped></style>
|