联调终端运行评价
This commit is contained in:
@@ -13,9 +13,17 @@
|
||||
<div v-for="(item, i) in list" class="cardBox" :style="i == 1 ? 'flex:1.3' : ''">
|
||||
<div class="card">
|
||||
<span style="cursor: pointer" @click="GridDiagram(i)">{{ item.title }}:</span>
|
||||
<span :style="`color: ${item.color[0]}; cursor:pointer`"
|
||||
@click="LookMap(item.list[4].numOneList, item.list[4].numTwoList, 0)">
|
||||
{{ item.list[4].numOne }}
|
||||
<span
|
||||
:style="`color: ${item.color[0]}; cursor:pointer`"
|
||||
@click="
|
||||
LookMap(
|
||||
item.list[item.list.length - 1].numOneList,
|
||||
item.list[item.list.length - 1].numTwoList,
|
||||
0
|
||||
)
|
||||
"
|
||||
>
|
||||
{{ item.list[item.list.length - 1]?.numOne }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
@@ -23,8 +31,10 @@
|
||||
<!-- 监测规模 列表 -->
|
||||
<div>
|
||||
<div class="vcl mt5">
|
||||
<p v-for="(item, i) in vList"
|
||||
:style="i == 0 ? 'width: 60px' : i == 5 ? 'width: 32px' : 'flex:1'">
|
||||
<p
|
||||
v-for="(item, i) in vList"
|
||||
:style="i == 0 ? 'width: 60px' : 'flex:1'"
|
||||
>
|
||||
{{ item }}
|
||||
</p>
|
||||
</div>
|
||||
@@ -36,7 +46,14 @@
|
||||
详情
|
||||
</span> -->
|
||||
</p>
|
||||
<p class="numOne" @click="LookMap(item.list[0].numOneList, item.list[0].numTwoList, 0)">
|
||||
<p
|
||||
v-for="(k, i) in vList?.slice(0, vList.length - 1)"
|
||||
class="numOne"
|
||||
@click="LookMap(item.list[i].numOneList, item.list[i].numTwoList, 0)"
|
||||
>
|
||||
{{ item.list[i]?.numOne }}
|
||||
</p>
|
||||
<!-- <p class="numOne" @click="LookMap(item.list[0].numOneList, item.list[0].numTwoList, 0)">
|
||||
{{ item.list[0].numOne }}
|
||||
</p>
|
||||
<p class="numOne" @click="LookMap(item.list[1].numOneList, item.list[1].numTwoList, 0)">
|
||||
@@ -47,7 +64,7 @@
|
||||
</p>
|
||||
<p class="numOne" @click="LookMap(item.list[3].numOneList, item.list[3].numTwoList, 0)">
|
||||
{{ item.list[3].numOne }}
|
||||
</p>
|
||||
</p> -->
|
||||
<!-- <p
|
||||
style="font-size: 12px; width: 32px; cursor: pointer; color: var(--el-color-primary)"
|
||||
@click.stop="open(i)"
|
||||
@@ -71,8 +88,11 @@
|
||||
<img src="@/assets/img/TJ.png" />
|
||||
{{ item.title }}
|
||||
</div>
|
||||
<div class="card-Box" :style="`height:calc((${boxHeight.height} - 50px )/ 3);`"
|
||||
v-for="val in item.children">
|
||||
<div
|
||||
class="card-Box"
|
||||
:style="`height:calc((${boxHeight.height} - 50px )/ 3);`"
|
||||
v-for="val in item.children"
|
||||
>
|
||||
<div>
|
||||
<span class="line"></span>
|
||||
<span class="vol">{{ val.title }}</span>
|
||||
@@ -129,8 +149,12 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<img class="imgL" :style="show ? 'transform: rotate(0deg);' : 'transform: rotate(180deg);'"
|
||||
@click="show = !show" src="@/assets/img/QH.png" />
|
||||
<img
|
||||
class="imgL"
|
||||
:style="show ? 'transform: rotate(0deg);' : 'transform: rotate(180deg);'"
|
||||
@click="show = !show"
|
||||
src="@/assets/img/QH.png"
|
||||
/>
|
||||
|
||||
<!-- 变电站详情 -->
|
||||
<stand ref="standRef" />
|
||||
@@ -307,7 +331,8 @@ const linList: any = ref([
|
||||
title: ['电能质量指标', '未超标', '超标']
|
||||
}
|
||||
])
|
||||
const vList = ['', '500kV', '220kV', '110kV', '35kV',]
|
||||
const panoramicVoltage: any = dictData.getBasicData('Dev_Voltage_Stand')
|
||||
const vList =ref( ['', '500kV', '220kV', '110kV', '35kV'])
|
||||
const formRow: any = ref({})
|
||||
const height = mainHeight(30)
|
||||
const boxHeight = mainHeight(290, 2)
|
||||
@@ -335,10 +360,14 @@ const info = async (row: any) => {
|
||||
}
|
||||
countList.value[0].title = row.areaName
|
||||
formRow.value = form
|
||||
|
||||
vList.value = ['']
|
||||
// 变电站
|
||||
getSubLineGiveAnAlarm(form).then(res => {
|
||||
let data = row.isUpToGrid == 1 ? res.data.gwInfo : res.data.info
|
||||
data[0].data.forEach((item: any) => {
|
||||
if (item.columnName) vList.value.push(panoramicVoltage.find((v: any) => v.id == item.columnName).name)
|
||||
})
|
||||
|
||||
list.value[0].list = data[0].data
|
||||
})
|
||||
// 终端
|
||||
@@ -359,10 +388,10 @@ const info = async (row: any) => {
|
||||
}
|
||||
})
|
||||
|
||||
list.value[2].list.push({
|
||||
numOne: 0,
|
||||
numOneList: []
|
||||
})
|
||||
// list.value[2].list.push({
|
||||
// numOne: 0,
|
||||
// numOneList: []
|
||||
// })
|
||||
})
|
||||
// 监测点指标统计
|
||||
getGridDiagramStatistics(form).then(res => {
|
||||
@@ -392,7 +421,7 @@ const LookMap = (coutList: object, alarmList: object, key?: any) => {
|
||||
const GridDiagram = (k: any) => {
|
||||
emit('GridDiagram', k, 3)
|
||||
}
|
||||
onMounted(() => { })
|
||||
onMounted(() => {})
|
||||
defineExpose({ info, show })
|
||||
</script>
|
||||
|
||||
|
||||
@@ -34,15 +34,15 @@
|
||||
<div class="monitoringPoints">
|
||||
<div>
|
||||
<span class="line"></span>
|
||||
在线监测点数:{{ monitorList.onlineNum }}
|
||||
在线监测点数:{{ monitorList?.onlineNum }}
|
||||
</div>
|
||||
<div>
|
||||
<span class="line"></span>
|
||||
超标监测点数:{{ monitorList.overNum }}
|
||||
超标监测点数:{{ monitorList?.overNum }}
|
||||
</div>
|
||||
<div>
|
||||
<span class="line"></span>
|
||||
超标监测点占比:{{ monitorList.overRatio }}
|
||||
超标监测点占比:{{ monitorList?.overRatio }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -262,7 +262,7 @@ const info = (row: any) => {
|
||||
},
|
||||
|
||||
options: {
|
||||
toolbox:null,
|
||||
toolbox: null,
|
||||
dataZoom: null,
|
||||
series: optionData.series
|
||||
}
|
||||
@@ -350,7 +350,7 @@ const info = (row: any) => {
|
||||
},
|
||||
xAxis: {
|
||||
type: 'category',
|
||||
data: res.data[0].list?.map((item: any) => {
|
||||
data: res.data[0]?.list?.map((item: any) => {
|
||||
return item.targetName.length > 4
|
||||
? item.targetName.slice(0, 4) + '\n ' + item.targetName.slice(4)
|
||||
: item.targetName
|
||||
@@ -367,12 +367,12 @@ const info = (row: any) => {
|
||||
},
|
||||
|
||||
options: {
|
||||
toolbox:null,
|
||||
toolbox: null,
|
||||
series: [
|
||||
{
|
||||
name: '超标监测点数',
|
||||
type: 'bar',
|
||||
data: res.data[0].list?.map((item: any) => item.overNum),
|
||||
data: res.data[0]?.list?.map((item: any) => item.overNum),
|
||||
label: {
|
||||
show: true,
|
||||
position: 'top',
|
||||
@@ -385,7 +385,7 @@ const info = (row: any) => {
|
||||
{
|
||||
name: '超标天数',
|
||||
type: 'bar',
|
||||
data: res.data[0].list?.map((item: any) => item.overDay),
|
||||
data: res.data[0]?.list?.map((item: any) => item.overDay),
|
||||
label: {
|
||||
show: true,
|
||||
position: 'top',
|
||||
@@ -451,7 +451,7 @@ const info = (row: any) => {
|
||||
},
|
||||
color: [config.layout.elementUiPrimary[0], '#FFBF00', '#FF9100'],
|
||||
options: {
|
||||
toolbox:null,
|
||||
toolbox: null,
|
||||
dataZoom: null,
|
||||
series: [
|
||||
{
|
||||
|
||||
@@ -131,7 +131,7 @@
|
||||
<el-option label="年" value="1" />
|
||||
<el-option label="月" value="3" />
|
||||
</el-select> -->
|
||||
<div style="position: absolute; width: 100px; top: 0px; right: 0px; z-index: 1">
|
||||
<div style="position: absolute; width: 100px; top: 0px; right: 15px; z-index: 1">
|
||||
<el-radio-group v-model="city" size="small" @change="analysis">
|
||||
<el-radio-button label="0">省</el-radio-button>
|
||||
<el-radio-button label="1">市</el-radio-button>
|
||||
@@ -176,7 +176,7 @@ const analysis = () => {
|
||||
text: '各地市综合评估趋势对比'
|
||||
},
|
||||
legend: {
|
||||
right: 120,
|
||||
right: 125,
|
||||
top: 20
|
||||
},
|
||||
// tooltip: {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<DatePicker ref="datePickerRef" style="display: none" theCurrentTime />
|
||||
<el-select class="conditions" v-model="formData.conditions" placeholder="请选择指标" style="width: 200px"
|
||||
<el-select class="conditions mr20" v-model="formData.conditions" placeholder="请选择指标" style="width: 200px"
|
||||
@change="History">
|
||||
<el-option-group v-for="group in indexOptions" :key="group.label" :label="group.label">
|
||||
<el-option v-for="item in group.options" :key="item.value" :label="item.label"
|
||||
@@ -1351,7 +1351,7 @@ const getEcharts = () => {
|
||||
}
|
||||
],
|
||||
toolbox: {
|
||||
show: true,
|
||||
show: false,
|
||||
feature: {
|
||||
dataZoom: {
|
||||
// bottom: '10px',
|
||||
|
||||
@@ -653,6 +653,7 @@ const echart = (row: any) => {
|
||||
data: [item.ratioList]
|
||||
})
|
||||
})
|
||||
console.log("🚀 ~ echart ~ option:", option)
|
||||
|
||||
chart.setOption(option)
|
||||
}
|
||||
|
||||
@@ -235,7 +235,7 @@ const AreaData: any = ref([])
|
||||
const PopKey: any = ref(2)
|
||||
const imgUrl0 = new URL('@/assets/img/BDZ-ZS.png', import.meta.url).href
|
||||
const imgUrl1 = new URL('@/assets/img/ZD-ZS.png', import.meta.url).href
|
||||
const imgUrl2 = new URL('@/assets/img/JCD-ZS.png', import.meta.url).hre
|
||||
const imgUrl2 = new URL('@/assets/img/JCD-ZS.png', import.meta.url).href
|
||||
const boundaryList: any = ref([
|
||||
// {
|
||||
// orgName: '唐山',
|
||||
@@ -534,7 +534,6 @@ const grids = (row: any) => {
|
||||
|
||||
getGridDiagramAreaData({ ...form, deptIndex: deptIndex.value }).then((res: any) => {
|
||||
AreaData.value = res.data
|
||||
console.log('🚀 ~ getGridDiagramAreaData ~ AreaData.value:', AreaData.value)
|
||||
GridDiagramArea()
|
||||
})
|
||||
// if (powerManageGridMap.value) powerLoad()
|
||||
@@ -546,22 +545,24 @@ const radiusPop = (k: any) => {
|
||||
}
|
||||
const GridDiagramArea = () => {
|
||||
boundaryList.value.forEach((item: any) => {
|
||||
assessList.value.forEach((y: any) => {
|
||||
if (item.orgName == y.name) {
|
||||
if (y.score == 3.14159) {
|
||||
} else if (y.score > 4.5) {
|
||||
item.background = '#33996699'
|
||||
} else if (y.score > 4) {
|
||||
item.background = '#3399ff99'
|
||||
} else if (y.score > 3) {
|
||||
item.background = '#ffcc3399'
|
||||
} else if (y.score > 2) {
|
||||
item.background = '#db088799'
|
||||
} else if (y.score > 0) {
|
||||
item.background = '#ff000099'
|
||||
|
||||
assessList.value &&
|
||||
assessList.value.forEach((y: any) => {
|
||||
if (item.orgName == y.name) {
|
||||
if (y.score == 3.14159) {
|
||||
} else if (y.score > 4.5) {
|
||||
item.background = '#33996699'
|
||||
} else if (y.score > 4) {
|
||||
item.background = '#3399ff99'
|
||||
} else if (y.score > 3) {
|
||||
item.background = '#ffcc3399'
|
||||
} else if (y.score > 2) {
|
||||
item.background = '#db088799'
|
||||
} else if (y.score > 0) {
|
||||
item.background = '#ff000099'
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
AreaData.value.forEach((k: any, i: any) => {
|
||||
if (item.orgName == k.orgName) {
|
||||
for (let kk in item) {
|
||||
|
||||
@@ -13,9 +13,17 @@
|
||||
<div v-for="(item, i) in list" class="cardBox" :style="i == 1 ? 'flex:1.3' : ''">
|
||||
<div class="card">
|
||||
<span style="cursor: pointer" @click="GridDiagram(i)">{{ item.title }}:</span>
|
||||
<span :style="`color: ${item.color[0]}; cursor:pointer`"
|
||||
@click="LookMap(item.list[4].numOneList, item.list[4].numTwoList, 0)">
|
||||
{{ item.list[4].numOne }}
|
||||
<span
|
||||
:style="`color: ${item.color[0]}; cursor:pointer`"
|
||||
@click="
|
||||
LookMap(
|
||||
item.list?.[item.list.length - 1]?.numOneList,
|
||||
item.list?.[item.list.length - 1]?.numTwoList,
|
||||
0
|
||||
)
|
||||
"
|
||||
>
|
||||
{{ item.list?.[item.list.length - 1]?.numOne }}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
@@ -23,8 +31,10 @@
|
||||
<!-- 监测规模 列表 -->
|
||||
<div>
|
||||
<div class="vcl mt5">
|
||||
<p v-for="(item, i) in vList"
|
||||
:style="i == 0 ? 'width: 60px' : i == 5 ? 'width: 32px' : 'flex:1'">
|
||||
<p
|
||||
v-for="(item, i) in vList"
|
||||
:style="i == 0 ? 'width: 60px' : i == vList?.length - 1 ? 'width: 32px' : 'flex:1'"
|
||||
>
|
||||
{{ item }}
|
||||
</p>
|
||||
</div>
|
||||
@@ -32,14 +42,15 @@
|
||||
<div v-for="(item, i) in list" class="vcl">
|
||||
<p style="width: 60px">
|
||||
{{ item.title }}
|
||||
<!-- <span style="position: absolute; font-size: 10px; top: -10px; right: -5px; color: #575757">
|
||||
详情
|
||||
</span> -->
|
||||
</p>
|
||||
<p class="numOne" @click="LookMap(item.list[0].numOneList, item.list[0].numTwoList, 0)">
|
||||
{{ item.list[0].numOne }}
|
||||
<p
|
||||
v-for="(k, i) in vList?.slice(0, vList.length - 2)"
|
||||
class="numOne"
|
||||
@click="LookMap(item.list[i].numOneList, item.list[i].numTwoList, 0)"
|
||||
>
|
||||
{{ item.list[i]?.numOne }}
|
||||
</p>
|
||||
<p class="numOne" @click="LookMap(item.list[1].numOneList, item.list[1].numTwoList, 0)">
|
||||
<!-- <p class="numOne" @click="LookMap(item.list[1].numOneList, item.list[1].numTwoList, 0)">
|
||||
{{ item.list[1].numOne }}
|
||||
</p>
|
||||
<p class="numOne" @click="LookMap(item.list[2].numOneList, item.list[2].numTwoList, 0)">
|
||||
@@ -47,9 +58,11 @@
|
||||
</p>
|
||||
<p class="numOne" @click="LookMap(item.list[3].numOneList, item.list[3].numTwoList, 0)">
|
||||
{{ item.list[3].numOne }}
|
||||
</p>
|
||||
<p style="font-size: 12px; width: 32px; cursor: pointer; color: var(--el-color-primary)"
|
||||
@click.stop="open(i)">
|
||||
</p> -->
|
||||
<p
|
||||
style="font-size: 12px; width: 32px; cursor: pointer; color: var(--el-color-primary)"
|
||||
@click.stop="open(i)"
|
||||
>
|
||||
详情
|
||||
</p>
|
||||
</div>
|
||||
@@ -69,8 +82,11 @@
|
||||
<img src="@/assets/img/TJ.png" />
|
||||
{{ item.title }}
|
||||
</div>
|
||||
<div class="card-Box" :style="`height:calc((${boxHeight.height} - 50px )/ 3);`"
|
||||
v-for="val in item.children">
|
||||
<div
|
||||
class="card-Box"
|
||||
:style="`height:calc((${boxHeight.height} - 50px )/ 3);`"
|
||||
v-for="val in item.children"
|
||||
>
|
||||
<div>
|
||||
<span class="line"></span>
|
||||
<span class="vol">{{ val.title }}</span>
|
||||
@@ -127,8 +143,12 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<img class="imgL" :style="show ? 'transform: rotate(0deg);' : 'transform: rotate(180deg);'"
|
||||
@click="show = !show" src="@/assets/img/QH.png" />
|
||||
<img
|
||||
class="imgL"
|
||||
:style="show ? 'transform: rotate(0deg);' : 'transform: rotate(180deg);'"
|
||||
@click="show = !show"
|
||||
src="@/assets/img/QH.png"
|
||||
/>
|
||||
<div class="legeng">
|
||||
<div v-for="item in legengList">
|
||||
<span :style="`background-color: ${item.color};`"></span>
|
||||
@@ -333,7 +353,8 @@ const legengList = [
|
||||
title: '极差'
|
||||
}
|
||||
]
|
||||
const vList = ['', '500kV', '220kV', '110kV', '35kV', '']
|
||||
const panoramicVoltage: any = dictData.getBasicData('Dev_Voltage_Stand')
|
||||
const vList = ref(['', '500kV', '220kV', '110kV', '35kV', ''])
|
||||
const formRow: any = ref({})
|
||||
const height = mainHeight(30)
|
||||
const boxHeight = mainHeight(290, 2)
|
||||
@@ -361,10 +382,14 @@ const info = async (row: any) => {
|
||||
}
|
||||
countList.value[0].title = row.areaName
|
||||
formRow.value = form
|
||||
|
||||
vList.value = ['']
|
||||
// 变电站
|
||||
getSubLineGiveAnAlarm(form).then(res => {
|
||||
let data = row.isUpToGrid == 1 ? res.data.gwInfo : res.data.info
|
||||
data[0].data.forEach((item: any) => {
|
||||
if (item.columnName) vList.value.push(panoramicVoltage.find((v: any) => v.id == item.columnName).name)
|
||||
})
|
||||
vList.value.push('')
|
||||
list.value[0].list = data[0].data
|
||||
})
|
||||
// 终端
|
||||
@@ -385,10 +410,10 @@ const info = async (row: any) => {
|
||||
}
|
||||
})
|
||||
|
||||
list.value[2].list.push({
|
||||
numOne: 0,
|
||||
numOneList: []
|
||||
})
|
||||
// list.value[2].list.push({
|
||||
// numOne: 0,
|
||||
// numOneList: []
|
||||
// })
|
||||
})
|
||||
// 监测点指标统计
|
||||
getGridDiagramStatistics(form).then(res => {
|
||||
@@ -418,7 +443,7 @@ const LookMap = (coutList: object, alarmList: object, key?: any) => {
|
||||
const GridDiagram = (k: any) => {
|
||||
emit('GridDiagram', k)
|
||||
}
|
||||
onMounted(() => { })
|
||||
onMounted(() => {})
|
||||
defineExpose({ info, show })
|
||||
</script>
|
||||
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
<Area ref="areaRef" :show-all-levels="false" v-model="form.orgNo" style="width: 100px"
|
||||
@changeValue="changeValue" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<!-- <el-form-item>
|
||||
<el-select v-model="form.isUpToGrid" style="width: 100px" @change="info">
|
||||
<el-option v-for="item in options" :key="item.id" :label="item.name" :value="item.id" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form-item> -->
|
||||
<el-form-item>
|
||||
<div class="Icon" @click="reset">
|
||||
<Icon name="fa fa-refresh" />
|
||||
|
||||
Reference in New Issue
Block a user