Merge branch 'main' of http://192.168.1.22:3000/Web/admin-govern
This commit is contained in:
@@ -3,7 +3,7 @@ import request from '@/utils/request'
|
|||||||
// 主要监测点列表查询>>分页
|
// 主要监测点列表查询>>分页
|
||||||
export function mainLineList(data: any) {
|
export function mainLineList(data: any) {
|
||||||
return request({
|
return request({
|
||||||
url: '/harmonic-boot/mainLine/list',
|
url: '/cs-harmonic-boot/mainLine/list',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
@@ -11,7 +11,7 @@ export function mainLineList(data: any) {
|
|||||||
// 主要监测点指标越限详情
|
// 主要监测点指标越限详情
|
||||||
export function statLimitRateDetails(data: any) {
|
export function statLimitRateDetails(data: any) {
|
||||||
return request({
|
return request({
|
||||||
url: '/harmonic-boot/mainLine/statLimitRateDetails',
|
url: '/cs-harmonic-boot/mainLine/statLimitRateDetails',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
@@ -38,7 +38,7 @@ export function trendData(data: any) {
|
|||||||
// 每日越限占比统计
|
// 每日越限占比统计
|
||||||
export function totalLimitStatisticsDetails(data: any) {
|
export function totalLimitStatisticsDetails(data: any) {
|
||||||
return request({
|
return request({
|
||||||
url: '/harmonic-boot/totalLimitStatistics/details',
|
url: '/cs-harmonic-boot/totalLimitStatistics/details',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
@@ -47,7 +47,7 @@ export function totalLimitStatisticsDetails(data: any) {
|
|||||||
// 总体指标越限统计列表
|
// 总体指标越限统计列表
|
||||||
export function totalLimitStatisticsList(data: any) {
|
export function totalLimitStatisticsList(data: any) {
|
||||||
return request({
|
return request({
|
||||||
url: '/harmonic-boot/totalLimitStatistics/list',
|
url: '/cs-harmonic-boot/totalLimitStatistics/list',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
@@ -56,7 +56,7 @@ export function totalLimitStatisticsList(data: any) {
|
|||||||
// 总体指标越限统计数据
|
// 总体指标越限统计数据
|
||||||
export function totalLimitStatisticsData(data: any) {
|
export function totalLimitStatisticsData(data: any) {
|
||||||
return request({
|
return request({
|
||||||
url: '/harmonic-boot/totalLimitStatistics/data',
|
url: '/cs-harmonic-boot/totalLimitStatistics/data',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
@@ -65,7 +65,7 @@ export function totalLimitStatisticsData(data: any) {
|
|||||||
// 指标越限程度数据
|
// 指标越限程度数据
|
||||||
export function limitExtentData(data: any) {
|
export function limitExtentData(data: any) {
|
||||||
return request({
|
return request({
|
||||||
url: '/harmonic-boot/limitRateDetailD/limitExtentData',
|
url: '/cs-harmonic-boot/limitRateDetailD/limitExtentData',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
@@ -73,7 +73,7 @@ export function limitExtentData(data: any) {
|
|||||||
// 指标日趋势图数据
|
// 指标日趋势图数据
|
||||||
export function limitExtentDayData(data: any) {
|
export function limitExtentDayData(data: any) {
|
||||||
return request({
|
return request({
|
||||||
url: '/harmonic-boot/limitRateDetailD/limitExtentDayData',
|
url: '/cs-harmonic-boot/limitRateDetailD/limitExtentDayData',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
@@ -82,7 +82,7 @@ export function limitExtentDayData(data: any) {
|
|||||||
// 指标越限明细日历数据
|
// 指标越限明细日历数据
|
||||||
export function limitCalendarData(data: any) {
|
export function limitCalendarData(data: any) {
|
||||||
return request({
|
return request({
|
||||||
url: '/harmonic-boot/limitRateDetailD/limitCalendarData',
|
url: '/cs-harmonic-boot/limitRateDetailD/limitCalendarData',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
@@ -100,7 +100,7 @@ export function fittingData(data: any) {
|
|||||||
//指标越限时间概率分布
|
//指标越限时间概率分布
|
||||||
export function limitTimeProbabilityData(data: any) {
|
export function limitTimeProbabilityData(data: any) {
|
||||||
return request({
|
return request({
|
||||||
url: '/harmonic-boot/limitRateDetailD/limitTimeProbabilityData',
|
url: '/cs-harmonic-boot/limitRateDetailD/limitTimeProbabilityData',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
@@ -109,7 +109,7 @@ export function limitTimeProbabilityData(data: any) {
|
|||||||
//指标越限程度概率分布
|
//指标越限程度概率分布
|
||||||
export function limitProbabilityData(data: any) {
|
export function limitProbabilityData(data: any) {
|
||||||
return request({
|
return request({
|
||||||
url: '/harmonic-boot/limitRateDetailD/limitProbabilityData',
|
url: '/cs-harmonic-boot/limitRateDetailD/limitProbabilityData',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
@@ -119,7 +119,7 @@ export function limitProbabilityData(data: any) {
|
|||||||
// 电网侧指标越限统计列表
|
// 电网侧指标越限统计列表
|
||||||
export function gridSideLimitStatisticsList(data: any) {
|
export function gridSideLimitStatisticsList(data: any) {
|
||||||
return request({
|
return request({
|
||||||
url: '/harmonic-boot/gridSideLimitStatistics/list',
|
url: '/cs-harmonic-boot/gridSideLimitStatistics/list',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
@@ -128,7 +128,7 @@ export function gridSideLimitStatisticsList(data: any) {
|
|||||||
// 电网侧指标越限统计数据
|
// 电网侧指标越限统计数据
|
||||||
export function gridSideLimitStatisticsData(data: any) {
|
export function gridSideLimitStatisticsData(data: any) {
|
||||||
return request({
|
return request({
|
||||||
url: '/harmonic-boot/gridSideLimitStatistics/data',
|
url: '/cs-harmonic-boot/gridSideLimitStatistics/data',
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
@@ -252,4 +252,13 @@ export function analyseWave(data: any) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 暂态监测点下拉框接口
|
||||||
|
export function getSimpleLine() {
|
||||||
|
return request({
|
||||||
|
url: '/cs-device-boot/csline/getSimpleLine',
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -34,12 +34,8 @@
|
|||||||
import { ref, onMounted, provide, reactive, watch, h } from 'vue'
|
import { ref, onMounted, provide, reactive, watch, h } from 'vue'
|
||||||
import TableStore from '@/utils/tableStore'
|
import TableStore from '@/utils/tableStore'
|
||||||
import MyEchart from '@/components/echarts/MyEchart.vue'
|
import MyEchart from '@/components/echarts/MyEchart.vue'
|
||||||
import { ElMessage, ElMessageBox } from 'element-plus'
|
|
||||||
import { getTimeOfTheMonth } from '@/utils/formatTime'
|
|
||||||
import waveFormAnalysis from '@/views/govern/device/control/tabs/components/waveFormAnalysis.vue'
|
import waveFormAnalysis from '@/views/govern/device/control/tabs/components/waveFormAnalysis.vue'
|
||||||
import TableHeader from '@/components/table/header/index.vue'
|
import TableHeader from '@/components/table/header/index.vue'
|
||||||
import { useRoute } from 'vue-router'
|
|
||||||
import { useTimeCacheStore } from '@/stores/timeCache'
|
|
||||||
import { analyseWave } from '@/api/common'
|
import { analyseWave } from '@/api/common'
|
||||||
|
|
||||||
const prop = defineProps({
|
const prop = defineProps({
|
||||||
@@ -76,7 +72,7 @@ const fullscreen = computed(() => {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
const echartList = ref({})
|
const echartList = ref()
|
||||||
|
|
||||||
const chartRef = ref()
|
const chartRef = ref()
|
||||||
// 波形
|
// 波形
|
||||||
@@ -112,7 +108,6 @@ const tableStore: any = new TableStore({
|
|||||||
data.gs = tableStore.table.data.length
|
data.gs = tableStore.table.data.length
|
||||||
data.krr = gongData.pointI.length
|
data.krr = gongData.pointI.length
|
||||||
data.bkrr = gongData.pointIun.length
|
data.bkrr = gongData.pointIun.length
|
||||||
// console.log(gongData,'789000')
|
|
||||||
echartList.value = {
|
echartList.value = {
|
||||||
title: {
|
title: {
|
||||||
text: `F47曲线`
|
text: `F47曲线`
|
||||||
@@ -262,8 +257,9 @@ function gongfunction(arr: any) {
|
|||||||
let yy = arr[i].eventValue
|
let yy = arr[i].eventValue
|
||||||
let time = arr[i].time
|
let time = arr[i].time
|
||||||
let eventId = arr[i].eventId
|
let eventId = arr[i].eventId
|
||||||
|
let lineName = arr[i].lineName
|
||||||
// let index =arr[i].eventDetailIndex;
|
// let index =arr[i].eventDetailIndex;
|
||||||
point = [xx, yy, time, eventId]
|
point = [xx, yy, time, eventId, lineName]
|
||||||
|
|
||||||
if (xx <= 0.003) {
|
if (xx <= 0.003) {
|
||||||
let line = 0
|
let line = 0
|
||||||
@@ -433,12 +429,16 @@ const handleTolerableEventClick = async (row: any) => {
|
|||||||
waveFormAnalysisRef.value.setHeight(999, 130, 1.6666666)
|
waveFormAnalysisRef.value.setHeight(999, 130, 1.6666666)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
await analyseWave(row.value[3])
|
await analyseWave(row.value[3]) //eventId
|
||||||
.then(res => {
|
.then(res => {
|
||||||
row.loading1 = false
|
row.loading1 = false
|
||||||
if (res != undefined) {
|
if (res != undefined) {
|
||||||
boxoList.value = row
|
boxoList.value = {
|
||||||
boxoList.value.featureAmplitude = row.evtParamVVaDepth != '-' ? row.evtParamVVaDepth - 0 : null
|
persistTime: row.value[0], //持续时间
|
||||||
|
featureAmplitude: (row.value[1] / 100).toFixed(2), //残余电压
|
||||||
|
startTime: row.value[2], //时间
|
||||||
|
lineName: row.value[4] //监测点名称
|
||||||
|
}
|
||||||
boxoList.value.systemType = 'YPT'
|
boxoList.value.systemType = 'YPT'
|
||||||
wp.value = res.data
|
wp.value = res.data
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ const echartList = ref()
|
|||||||
|
|
||||||
const dailyTrendChartRef = ref()
|
const dailyTrendChartRef = ref()
|
||||||
const tableStore: any = new TableStore({
|
const tableStore: any = new TableStore({
|
||||||
url: '/harmonic-boot/limitRateDetailD/limitExtentData',
|
url: '/cs-harmonic-boot/limitRateDetailD/limitExtentData',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
|
|
||||||
showPage: false,
|
showPage: false,
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ const loop50 = (key: string) => {
|
|||||||
return list
|
return list
|
||||||
}
|
}
|
||||||
const tableStore: any = new TableStore({
|
const tableStore: any = new TableStore({
|
||||||
url: '/harmonic-boot/totalLimitStatistics/details',
|
url: '/cs-harmonic-boot/totalLimitStatistics/details',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
publicHeight: 30,
|
publicHeight: 30,
|
||||||
showPage: false,
|
showPage: false,
|
||||||
|
|||||||
@@ -117,7 +117,7 @@ const initEcharts = () => {
|
|||||||
|
|
||||||
const OverLimitDetailsRef = ref()
|
const OverLimitDetailsRef = ref()
|
||||||
const tableStore: any = new TableStore({
|
const tableStore: any = new TableStore({
|
||||||
url: '/harmonic-boot/gridSideLimitStatistics/list',
|
url: '/cs-harmonic-boot/gridSideLimitStatistics/list',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
|
|
||||||
showPage: false,
|
showPage: false,
|
||||||
|
|||||||
@@ -91,7 +91,7 @@ const getTextForDate = (date: string) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const tableStore: any = new TableStore({
|
const tableStore: any = new TableStore({
|
||||||
url: '/harmonic-boot/limitRateDetailD/limitCalendarData',
|
url: '/cs-harmonic-boot/limitRateDetailD/limitCalendarData',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
showPage: false,
|
showPage: false,
|
||||||
column: [],
|
column: [],
|
||||||
|
|||||||
@@ -397,7 +397,7 @@ const initProbabilityData = () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const tableStore: any = new TableStore({
|
const tableStore: any = new TableStore({
|
||||||
url: '/harmonic-boot/limitRateDetailD/limitTimeProbabilityData',
|
url: '/cs-harmonic-boot/limitRateDetailD/limitTimeProbabilityData',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
showPage: false,
|
showPage: false,
|
||||||
column: [],
|
column: [],
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ const loop50 = (key: string) => {
|
|||||||
return list
|
return list
|
||||||
}
|
}
|
||||||
const tableStore: any = new TableStore({
|
const tableStore: any = new TableStore({
|
||||||
url: '/harmonic-boot/mainLine/statLimitRateDetails',
|
url: '/cs-harmonic-boot/mainLine/statLimitRateDetails',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
publicHeight: 30,
|
publicHeight: 30,
|
||||||
showPage: false,
|
showPage: false,
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ const selectChange = (showSelect: any, height: any, datePickerValue?: any) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const tableStore: any = new TableStore({
|
const tableStore: any = new TableStore({
|
||||||
url: '/harmonic-boot/mainLine/list',
|
url: '/cs-harmonic-boot/mainLine/list',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
showPage: fullscreen.value ? true : false,
|
showPage: fullscreen.value ? true : false,
|
||||||
exportName: '主要监测点列表',
|
exportName: '主要监测点列表',
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ const loop50 = (key: string) => {
|
|||||||
return list
|
return list
|
||||||
}
|
}
|
||||||
const tableStore: any = new TableStore({
|
const tableStore: any = new TableStore({
|
||||||
url: '/harmonic-boot/totalLimitStatistics/details',
|
url: '/cs-harmonic-boot/totalLimitStatistics/details',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
publicHeight: 30,
|
publicHeight: 30,
|
||||||
showPage: false,
|
showPage: false,
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ const loop50 = (key: string) => {
|
|||||||
return list
|
return list
|
||||||
}
|
}
|
||||||
const tableStore: any = new TableStore({
|
const tableStore: any = new TableStore({
|
||||||
url: '/harmonic-boot/totalLimitStatistics/details',
|
url: '/cs-harmonic-boot/totalLimitStatistics/details',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
publicHeight: 30,
|
publicHeight: 30,
|
||||||
showPage: false,
|
showPage: false,
|
||||||
|
|||||||
@@ -120,7 +120,7 @@ const initEcharts = () => {
|
|||||||
|
|
||||||
const OverLimitDetailsRef = ref()
|
const OverLimitDetailsRef = ref()
|
||||||
const tableStore: any = new TableStore({
|
const tableStore: any = new TableStore({
|
||||||
url: '/harmonic-boot/totalLimitStatistics/list',
|
url: '/cs-harmonic-boot/totalLimitStatistics/list',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
|
|
||||||
showPage: false,
|
showPage: false,
|
||||||
|
|||||||
@@ -1,15 +1,11 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<!-- 暂态事件列表 -->
|
<!-- 暂态事件详情 -->
|
||||||
<el-dialog draggable title="暂态事件列表" v-model="dialogVisible" append-to-body width="70%">
|
<el-dialog draggable title="暂态事件详情 " v-model="dialogVisible" append-to-body width="70%">
|
||||||
<!-- <TableHeader datePicker showExport :showReset="false">
|
<TableHeader datePicker showExport :showReset="false" ref="tableHeaderRef" @selectChange="selectChange">
|
||||||
<template v-slot:select>
|
<template v-slot:select>
|
||||||
<el-form-item label="监测点名称">
|
<el-form-item label="监测点">
|
||||||
<el-select
|
<el-select v-model="tableStore.table.params.lineId" placeholder="请选择监测点名称">
|
||||||
v-model="tableStore.table.params.searchValue"
|
|
||||||
placeholder="请选择监测点名称"
|
|
||||||
style="width: 240px"
|
|
||||||
>
|
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in options"
|
v-for="item in options"
|
||||||
:key="item.value"
|
:key="item.value"
|
||||||
@@ -19,8 +15,25 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</template>
|
</template>
|
||||||
</TableHeader> -->
|
</TableHeader>
|
||||||
<Table ref="tableRef" isGroup :height="height"></Table>
|
<Table ref="tableRef" isGroup :height="heightRef"></Table>
|
||||||
|
</el-dialog>
|
||||||
|
<!-- 查看波形 -->
|
||||||
|
<el-dialog
|
||||||
|
v-model="isWaveCharts"
|
||||||
|
draggable
|
||||||
|
title="波形分析"
|
||||||
|
append-to-body
|
||||||
|
width="70%"
|
||||||
|
@close="handleHideCharts"
|
||||||
|
>
|
||||||
|
<waveFormAnalysis
|
||||||
|
v-loading="loading"
|
||||||
|
v-if="isWaveCharts"
|
||||||
|
ref="waveFormAnalysisRef"
|
||||||
|
@handleHideCharts="handleHideCharts"
|
||||||
|
:wp="wp"
|
||||||
|
/>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -30,21 +43,36 @@ import Table from '@/components/table/index.vue'
|
|||||||
import TableHeader from '@/components/table/header/index.vue'
|
import TableHeader from '@/components/table/header/index.vue'
|
||||||
import TableStore from '@/utils/tableStore'
|
import TableStore from '@/utils/tableStore'
|
||||||
import { mainHeight } from '@/utils/layout'
|
import { mainHeight } from '@/utils/layout'
|
||||||
|
import waveFormAnalysis from '@/views/govern/device/control/tabs/components/waveFormAnalysis.vue'
|
||||||
|
import { analyseWave } from '@/api/common'
|
||||||
|
import { getSimpleLine } from '@/api/harmonic-boot/cockpit/cockpit'
|
||||||
|
|
||||||
const dialogVisible: any = ref(false)
|
const dialogVisible: any = ref(false)
|
||||||
const harmonicRatioRef: any = ref(null)
|
const waveFormAnalysisRef: any = ref(null)
|
||||||
const options = [
|
// 波形
|
||||||
{
|
const isWaveCharts = ref(false)
|
||||||
value: '35kV进线',
|
const loading = ref(false)
|
||||||
label: '35kV进线'
|
const wp = ref({})
|
||||||
|
const boxoList: any = ref({})
|
||||||
|
|
||||||
|
const tableHeaderRef = ref()
|
||||||
|
|
||||||
|
const options = ref()
|
||||||
|
const heightRef = ref(mainHeight(168, 2.1).height)
|
||||||
|
const selectChange = (flag: boolean, h: any) => {
|
||||||
|
heightRef.value = mainHeight(h, 2.1).height
|
||||||
}
|
}
|
||||||
]
|
|
||||||
const height = mainHeight(0, 2).height as any
|
const getSimpleLineList = async () => {
|
||||||
|
const res = await getSimpleLine()
|
||||||
|
options.value = res.data
|
||||||
|
}
|
||||||
|
|
||||||
const tableStore: any = new TableStore({
|
const tableStore: any = new TableStore({
|
||||||
url: '/user-boot/role/selectRoleDetail?id=0',
|
url: '/cs-harmonic-boot/event/pageEvent',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
publicHeight: 30,
|
showPage: true,
|
||||||
showPage: false,
|
exportName: '暂态事件详情',
|
||||||
exportName: '主要监测点列表',
|
|
||||||
column: [
|
column: [
|
||||||
{
|
{
|
||||||
field: 'index',
|
field: 'index',
|
||||||
@@ -56,75 +84,141 @@ const tableStore: any = new TableStore({
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '暂态时间',
|
title: '暂态时间',
|
||||||
field: 'time',
|
field: 'startTime',
|
||||||
|
minWidth: '150'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '测点名称',
|
title: '测点名称',
|
||||||
field: 'name',
|
field: 'lineName',
|
||||||
width: '150'
|
width: '150'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '暂态类型',
|
title: '暂态类型',
|
||||||
field: 'flicker',
|
field: 'tag',
|
||||||
width: '100',
|
width: '100'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '特征幅值(%)',
|
title: '特征幅值(%)',
|
||||||
field: 'flicker',
|
field: 'amplitude',
|
||||||
width: '100'
|
width: '100'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '暂降深度(%)',
|
title: '暂降深度(%)',
|
||||||
field: 'flicker',
|
field: 'depth',
|
||||||
width: '100'
|
width: '100',
|
||||||
|
formatter: (row: any) => {
|
||||||
|
// 当暂态类型不是电压暂升时,计算暂降深度 = 100 - 特征幅值
|
||||||
|
if (row.row.tag !== '电压暂升') {
|
||||||
|
const amplitude = parseFloat(row.row.amplitude)
|
||||||
|
if (!isNaN(amplitude)) {
|
||||||
|
return 100 - amplitude
|
||||||
|
}
|
||||||
|
return '-'
|
||||||
|
} else {
|
||||||
|
// 电压暂升时不显示暂降深度
|
||||||
|
return '/'
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '持续时间(S)',
|
title: '持续时间(S)',
|
||||||
field: 'flicker',
|
field: 'persistTime',
|
||||||
width: '100'
|
width: '100'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '严重度',
|
title: '严重度',
|
||||||
field: 'flicker',
|
field: 'severity',
|
||||||
width: '80'
|
width: '80'
|
||||||
},
|
},
|
||||||
],
|
|
||||||
beforeSearchFun: () => {},
|
|
||||||
loadCallback: () => {
|
|
||||||
tableStore.table.data = [
|
|
||||||
{
|
{
|
||||||
time: '2024-01-01 00:00:00',
|
title: '波形',
|
||||||
name: '35kV进线',
|
width: '100',
|
||||||
flicker: '0'
|
render: 'buttons',
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
name: 'edit',
|
||||||
|
text: '波形分析',
|
||||||
|
type: 'primary',
|
||||||
|
icon: 'el-icon-DataLine',
|
||||||
|
render: 'basicButton',
|
||||||
|
disabled: row => {
|
||||||
|
return !row.wavePath
|
||||||
|
},
|
||||||
|
|
||||||
|
click: async row => {
|
||||||
|
row.loading1 = true
|
||||||
|
loading.value = true
|
||||||
|
isWaveCharts.value = true
|
||||||
|
dialogVisible.value = false
|
||||||
|
// 在打开弹窗时立即设置高度
|
||||||
|
nextTick(() => {
|
||||||
|
if (waveFormAnalysisRef.value) {
|
||||||
|
// waveFormAnalysisRef.value.setHeight(false, 360)
|
||||||
|
waveFormAnalysisRef.value.setHeight(999, 130, 1.6666666)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
await analyseWave(row.id)
|
||||||
|
.then(res => {
|
||||||
|
row.loading1 = false
|
||||||
|
if (res != undefined) {
|
||||||
|
boxoList.value = row
|
||||||
|
// boxoList.value = {
|
||||||
|
// ...row,
|
||||||
|
// duration: row.persistTime // 将 persistTime 值赋给 duration
|
||||||
|
// }
|
||||||
|
boxoList.value.featureAmplitude =
|
||||||
|
row.evtParamVVaDepth != '-' ? row.evtParamVVaDepth - 0 : null
|
||||||
|
boxoList.value.systemType = 'YPT'
|
||||||
|
wp.value = res.data
|
||||||
|
}
|
||||||
|
loading.value = false
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
row.loading1 = false
|
||||||
|
loading.value = false
|
||||||
|
})
|
||||||
|
|
||||||
|
nextTick(() => {
|
||||||
|
waveFormAnalysisRef.value &&
|
||||||
|
waveFormAnalysisRef.value.getWpData(wp.value, boxoList.value, true)
|
||||||
|
})
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
time: '2024-01-01 00:00:00',
|
name: 'edit',
|
||||||
name: '35kV进线',
|
text: '暂无波形',
|
||||||
flicker: '0'
|
type: 'info',
|
||||||
},
|
icon: 'el-icon-DataLine',
|
||||||
{
|
render: 'basicButton',
|
||||||
time: '2024-01-01 00:00:00',
|
disabled: row => {
|
||||||
name: '35kV进线',
|
return !!row.wavePath
|
||||||
flicker: '0'
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
],
|
||||||
|
beforeSearchFun: () => {},
|
||||||
|
loadCallback: () => {}
|
||||||
})
|
})
|
||||||
|
|
||||||
tableStore.table.params.searchValue = ''
|
|
||||||
provide('tableStore', tableStore)
|
provide('tableStore', tableStore)
|
||||||
const open = async (row: any) => {
|
const open = async (time: any) => {
|
||||||
dialogVisible.value = true
|
dialogVisible.value = true
|
||||||
|
getSimpleLineList()
|
||||||
|
tableStore.table.params.lineId = ''
|
||||||
|
nextTick(() => {
|
||||||
|
tableHeaderRef.value.setInterval(5)
|
||||||
|
tableHeaderRef.value.setTimeInterval([time, time])
|
||||||
|
tableStore.table.params.searchBeginTime = time
|
||||||
|
tableStore.table.params.searchEndTime = time
|
||||||
tableStore.index()
|
tableStore.index()
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 点击行
|
const handleHideCharts = () => {
|
||||||
const cellClickEvent = ({ row, column }: any) => {
|
isWaveCharts.value = false
|
||||||
if (column.field != 'name') {
|
dialogVisible.value = true
|
||||||
harmonicRatioRef.value.openDialog(row)
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
defineExpose({ open })
|
defineExpose({ open })
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -41,8 +41,9 @@
|
|||||||
style="text-decoration: underline"
|
style="text-decoration: underline"
|
||||||
class="details"
|
class="details"
|
||||||
v-for="item in list?.filter((item:any) => item.name == data.day)"
|
v-for="item in list?.filter((item:any) => item.name == data.day)"
|
||||||
|
@click="descentClick(item)"
|
||||||
>
|
>
|
||||||
<div @click="descentClick">电压暂降:{{ item.eventDown || 0 }}</div>
|
<div>电压暂降:{{ item.eventDown || 0 }}</div>
|
||||||
<div>电压中断:{{ item.eventOff || 0 }}</div>
|
<div>电压中断:{{ item.eventOff || 0 }}</div>
|
||||||
<div>电压暂升:{{ item.eventUp || 0 }}</div>
|
<div>电压暂升:{{ item.eventUp || 0 }}</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -182,8 +183,8 @@ watch(
|
|||||||
)
|
)
|
||||||
|
|
||||||
// 电压暂降点击事件
|
// 电压暂降点击事件
|
||||||
const descentClick = () => {
|
const descentClick = (item:any) => {
|
||||||
transientListRef.value.open()
|
transientListRef.value.open(item.name)
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
|||||||
@@ -45,6 +45,8 @@ import TableStore from '@/utils/tableStore'
|
|||||||
import { mainHeight } from '@/utils/layout'
|
import { mainHeight } from '@/utils/layout'
|
||||||
import waveFormAnalysis from '@/views/govern/device/control/tabs/components/waveFormAnalysis.vue'
|
import waveFormAnalysis from '@/views/govern/device/control/tabs/components/waveFormAnalysis.vue'
|
||||||
import { analyseWave } from '@/api/common'
|
import { analyseWave } from '@/api/common'
|
||||||
|
import { getSimpleLine } from '@/api/harmonic-boot/cockpit/cockpit'
|
||||||
|
|
||||||
const dialogVisible: any = ref(false)
|
const dialogVisible: any = ref(false)
|
||||||
const waveFormAnalysisRef: any = ref(null)
|
const waveFormAnalysisRef: any = ref(null)
|
||||||
// 波形
|
// 波形
|
||||||
@@ -55,16 +57,18 @@ const boxoList: any = ref({})
|
|||||||
|
|
||||||
const tableHeaderRef = ref()
|
const tableHeaderRef = ref()
|
||||||
|
|
||||||
const options = [
|
const options = ref()
|
||||||
{
|
const heightRef = ref(mainHeight(168, 2.1).height)
|
||||||
value: '35kV进线',
|
|
||||||
label: '35kV进线'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
const heightRef = ref(mainHeight(57, 2.3).height)
|
|
||||||
const selectChange = (flag: boolean, h: any) => {
|
const selectChange = (flag: boolean, h: any) => {
|
||||||
heightRef.value = mainHeight(h, 2.3).height
|
heightRef.value = mainHeight(h, 2.1).height
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const getSimpleLineList = async () => {
|
||||||
|
const res = await getSimpleLine()
|
||||||
|
options.value = res.data
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
const tableStore: any = new TableStore({
|
const tableStore: any = new TableStore({
|
||||||
url: '/cs-harmonic-boot/event/pageEvent',
|
url: '/cs-harmonic-boot/event/pageEvent',
|
||||||
method: 'POST',
|
method: 'POST',
|
||||||
@@ -105,7 +109,7 @@ const tableStore: any = new TableStore({
|
|||||||
width: '100',
|
width: '100',
|
||||||
formatter: (row: any) => {
|
formatter: (row: any) => {
|
||||||
// 当暂态类型不是电压暂升时,计算暂降深度 = 100 - 特征幅值
|
// 当暂态类型不是电压暂升时,计算暂降深度 = 100 - 特征幅值
|
||||||
if (row.tag !== '电压暂升') {
|
if (row.row.tag !== '电压暂升') {
|
||||||
const amplitude = parseFloat(row.row.amplitude)
|
const amplitude = parseFloat(row.row.amplitude)
|
||||||
if (!isNaN(amplitude)) {
|
if (!isNaN(amplitude)) {
|
||||||
return 100 - amplitude
|
return 100 - amplitude
|
||||||
@@ -195,13 +199,13 @@ const tableStore: any = new TableStore({
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
beforeSearchFun: () => {},
|
beforeSearchFun: () => {},
|
||||||
loadCallback: () => {
|
loadCallback: () => {}
|
||||||
}
|
|
||||||
})
|
})
|
||||||
|
|
||||||
provide('tableStore', tableStore)
|
provide('tableStore', tableStore)
|
||||||
const open = async (row: any, searchBeginTime: any, searchEndTime: any) => {
|
const open = async (row: any, searchBeginTime: any, searchEndTime: any) => {
|
||||||
dialogVisible.value = true
|
dialogVisible.value = true
|
||||||
|
getSimpleLineList()
|
||||||
tableStore.table.params.lineId = row.id
|
tableStore.table.params.lineId = row.id
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
tableHeaderRef.value.setTimeInterval([searchBeginTime, searchEndTime])
|
tableHeaderRef.value.setTimeInterval([searchBeginTime, searchEndTime])
|
||||||
|
|||||||
@@ -112,8 +112,6 @@ const getWpData = (val: any, list: any) => {
|
|||||||
wp.value = val
|
wp.value = val
|
||||||
isWp.value = true
|
isWp.value = true
|
||||||
boxoList.value = list
|
boxoList.value = list
|
||||||
|
|
||||||
console.log(wp.value, val, 'ggggghhhh')
|
|
||||||
}
|
}
|
||||||
const changeView = () => {
|
const changeView = () => {
|
||||||
showBoxi.value = false
|
showBoxi.value = false
|
||||||
|
|||||||
Reference in New Issue
Block a user