同步现场电网一张图

This commit is contained in:
GGJ
2024-05-14 18:28:27 +08:00
parent 25f5272967
commit 91ab15ecab
27 changed files with 1449 additions and 916 deletions

View File

@@ -5,29 +5,29 @@
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="300px" :data="tableData">
<vxe-column field="deptName" title="地市" />
<vxe-column field="assessData" title="综合评估得分" :formatter="formatter" />
<vxe-column field="qualifyData" title="指标合格率" :formatter="formatter" />
<vxe-colgroup title="各项指标得分">
<vxe-column field="qualifyData" title="指标合格率(%)" :formatter="formatter" />
<vxe-colgroup title="电压偏差">
<vxe-column field="vdevAssessData" title="评估得分" :formatter="formatter" />
<vxe-column field="vdevQualifyData" title="指标合格率" :formatter="formatter" />
<vxe-column field="vdevQualifyData" title="指标合格率(%)" :formatter="formatter" />
</vxe-colgroup>
<vxe-colgroup title="频率偏差">
<vxe-column field="freqAssessData" title="评估得分" :formatter="formatter" />
<vxe-column field="freqQualifyData" title="指标合格率" :formatter="formatter" />
<vxe-column field="freqQualifyData" title="指标合格率(%)" :formatter="formatter" />
</vxe-colgroup>
<vxe-colgroup title="谐波含量">
<vxe-colgroup title="电压总谐波畸变率">
<vxe-column field="harmAssessData" title="评估得分" :formatter="formatter" />
<vxe-column field="harmQualifyData" title="指标合格率" :formatter="formatter" />
<vxe-column field="harmQualifyData" title="指标合格率(%)" :formatter="formatter" />
</vxe-colgroup>
<vxe-colgroup title="电压闪变">
<vxe-column field="flickerAssessData" title="评估得分" :formatter="formatter" />
<vxe-column field="flickerQualifyData" title="指标合格率" :formatter="formatter" />
<vxe-column field="flickerQualifyData" title="指标合格率(%)" :formatter="formatter" />
</vxe-colgroup>
<vxe-colgroup title="三相不平衡度">
<vxe-colgroup title="三相电压不平衡度">
<vxe-column field="unbalanceAssessData" title="评估得分" :formatter="formatter" />
<vxe-column field="unbalanceQualifyData" title="指标合格率" :formatter="formatter" />
<vxe-column field="unbalanceQualifyData" title="指标合格率(%)" :formatter="formatter" />
</vxe-colgroup>
</vxe-colgroup>
</vxe-table>
</div>
<div style="height: 300px; margin-top: 10px">

View File

@@ -33,11 +33,11 @@
<div class="title">
<span>区域监测点统计</span>
</div>
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="300px" :data="tableData">
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="320px" :data="tableData">
<vxe-column field="orgName" title="区域" :formatter="formatter" />
<vxe-column field="num" title="监测点个数" :formatter="formatter" />
<vxe-column field="integrityRate" title="数据完整率(%)" />
<vxe-column field="onLineRate" title="数据在线率(%)" />
<vxe-column field="integrityRate" title="完整率(%)" />
<vxe-column field="onLineRate" title="在线率(%)" />
<vxe-column field="outOfStandardRate" title="超标监测点占比(%)" />
</vxe-table>
</div>
@@ -99,7 +99,7 @@ const analysis = (e: any) => {
trendEChart.value = {
title: {
text: '监测点数量'
text: '在线监测点数量'
},
xAxis: {
name: '时间',

View File

@@ -52,7 +52,7 @@
<div class="title mb10">
<span>区域变电站统计</span>
</div>
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="300px" :data="tableData">
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="320px" :data="tableData">
<vxe-column field="name" title="区域" />
<vxe-column field="num" title="变电站总数" />
<vxe-column field="num1" title="无污染数量" :formatter="formatter" />

View File

@@ -2,7 +2,7 @@
<template>
<!-- 终端 -->
<el-dialog draggable title="稳态电能质量水平评估统计" v-model="dialogVisible" width="1400px">
<el-row style="height: 330px" :gutter="20">
<el-row style="height: 300px" :gutter="20">
<el-col :span="12">
<div class="title">
<span>稳态电能质量水平评估</span>
@@ -42,7 +42,7 @@
<span>稳态电能质量水平评估环比变化</span>
</div>
<div class="pie">
<div style="height: 260px; width: 100%" ref="chartRef"></div>
<div style="height: 250px; width: 100%" ref="chartRef"></div>
</div>
</el-col>
</el-row>
@@ -50,7 +50,7 @@
<div class="title">
<span>区域稳态电能质量水平评估</span>
</div>
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="300px" :data="tableData">
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="360px" :data="tableData">
<vxe-column field="deptName" title="区域" />
<vxe-column field="onlineNum" title="在线监测点数量(个)" />
<vxe-column field="overNum" title="超标监测点数量(个)" />
@@ -103,15 +103,21 @@ const tableData: any = ref([])
const title = ['电压偏差', '频率偏差', '电压总谐波畸变率', '闪变', '三相电压不平衡度']
const echart = (row: any) => {
let maxList: any = []
row.forEach((item: any) => {
maxList.push(...(item.ratioList || [0]))
})
let max = Math.max(...maxList) > 50 ? 100 : 50
let chart = echarts.init(chartRef.value as HTMLDivElement)
let dataname = ['频率偏差', '电压偏差', '电压总谐波畸变率', '三相电压不平衡度', '闪变']
let datamax = [100, 100, 100, 100, 100, 100]
// let datamax = [100, 100, 100, 100, 100, 100]
let indicator = []
for (let i = 0; i < dataname.length; i++) {
indicator.push({
name: dataname[i],
max: datamax[i]
max: max
})
}
@@ -150,8 +156,8 @@ const echart = (row: any) => {
}
},
radar: {
center: ['50%', '50%'],
radius: '65%',
center: ['50%', '60%'],
radius: '75%',
startAngle: 90,
splitNumber: 5,
splitArea: {
@@ -252,17 +258,17 @@ defineExpose({ open })
justify-content: space-around;
}
.evaluationData {
height: 40px;
height: 33px;
margin: 8px 30px;
width: 100%;
box-shadow: 1px 1px 1px 1px #e8e3e3;
display: flex;
font-size: 18px;
line-height: 40px;
line-height: 35px;
img {
height: 30px;
width: 30px;
margin: 5px 30px;
height: 25px;
width: 25px;
margin: 4px 20px 0px 30px;
}
}

View File

@@ -2,14 +2,14 @@
<template>
<el-dialog draggable title="技术监督管理统计" v-model="dialogVisible" width="1400px">
<div>
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="300px" :data="tableData">
<vxe-column field="devName" />
<vxe-column field="devName" title="异常问题总数" />
<vxe-column field="devName" title="已关联工单数" />
<vxe-column field="devName" title="工单转换率(%)" />
<vxe-column field="devName" title="工单总数" />
<vxe-column field="devName" title="已处理工单数" />
<vxe-column field="devName" title="工单处置率(%)" />
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="320px" :data="tableData">
<vxe-column field="devName" title="区域" />
<vxe-column field="num" title="异常问题总数" />
<vxe-column field="num" title="已关联工单数" />
<vxe-column field="num" title="工单转换率(%)" />
<vxe-column field="num" title="工单总数" />
<vxe-column field="num" title="已处理工单数" />
<vxe-column field="num" title="工单处置率(%)" />
</vxe-table>
</div>
<div style="height: 300px; margin-top: 10px">
@@ -24,7 +24,36 @@ import { defaultAttribute } from '@/components/table/defaultAttribute'
const dialogVisible: any = ref(false)
const tableData: any = ref([])
const tableData: any = ref([
{
devName: '张家口',
num: ''
},
{
devName: '秦皇岛',
num: ''
},
{
devName: '承德',
num: ''
},
{
devName: '唐山',
num: ''
},
{
devName: '廊坊',
num: ''
},
{
devName: '风光储',
num: ''
},
{
devName: '超高压',
num: ''
}
])
const picEChart = ref({
title: {

View File

@@ -2,7 +2,7 @@
<template>
<el-dialog draggable title="暂态电能质量水平评估统计" v-model="dialogVisible" width="1400px">
<div>
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="300px" :data="tableData">
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="360px" :data="tableData">
<vxe-column field="name" title="区域" />
<vxe-column field="sagTimes" title="暂降次数" />
@@ -16,22 +16,22 @@
</vxe-colgroup>
</vxe-table>
</div>
<div style="height: 300px; margin-top: 10px; display: flex">
<div style="height: 250px; margin-top: 10px; display: flex">
<!--
-->
<div class="statistics-main">
<div class="statistics-box">
<MyEChart style="height: 300px" :options="picEChart" />
<MyEChart style="height: 250px" :options="picEChart" />
<el-table size="small" height="300px" :data="descentData">
<el-table size="small" height="250px" :data="descentData">
<el-table-column prop="name" label="暂降原因" width="80px" align="center" />
<el-table-column prop="value" label="暂降次数" width="80px" align="center" />
</el-table>
</div>
<div class="statistics-box">
<MyEChart style="height: 300px" :options="picEChart1" />
<el-table size="small" height="300px" :data="resembleData">
<MyEChart style="height: 250px" :options="picEChart1" />
<el-table size="small" height="250px" :data="resembleData">
<el-table-column prop="name" label="暂降类型" width="80px" align="center" />
<el-table-column prop="value" label="暂降次数" width="80px" align="center" />
</el-table>

View File

@@ -52,12 +52,12 @@
<div class="title">
<span>区域终端统计</span>
</div>
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="300px" :data="tableData">
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="320px" :data="tableData">
<vxe-column field="orgName" title="区域" />
<vxe-column field="runNum" title="运行个数 " />
<vxe-column field="overhaulNum" title="检修个数 " />
<vxe-column field="refundNum" title="退役个数" />
<vxe-column field="onLineRate" title="数据在线率(%)" />
<vxe-column field="onLineRate" title="终端在线率(%)" />
</vxe-table>
</div>
</el-dialog>
@@ -177,14 +177,16 @@ const analysis = (e: any) => {
getGridDiagramDevTendency({ ...rowList.value, searchBeginTime: time, type: e }).then(res => {
let name = []
let data = []
let num = 0
for (let k in res.data) {
name.push(k)
data.push(res.data[k])
num = num + res.data[k]
data.push(num)
}
trendEChart.value = {
title: {
text: '终端接入数量'
text: '终端接入数量'
},
xAxis: {
name: '时间',