联调终端运行评价

This commit is contained in:
GGJ
2025-05-13 15:26:24 +08:00
parent 363c05639b
commit 325aa7d56e
29 changed files with 910 additions and 2075 deletions

View File

@@ -1,19 +1,19 @@
<template>
<div class="default-main" style="position: relative">
<TableHeader date-picker >
<TableHeader date-picker>
<template v-slot:select>
<el-form-item label="对象类型">
<el-form-item label="电网侧标识">
<el-select
v-model="tableStore.table.params.supvObjType"
v-model="tableStore.table.params.powerFlag"
clearable
style="width: 100%"
placeholder="请选择对象类型"
placeholder="请选择电网侧标识"
>
<el-option
v-for="item in supvObjTypeList"
v-for="item in powerFlagList"
:key="item.id"
:label="item.name"
:value="item.id"
:value="item.algoDescribe"
></el-option>
</el-select>
</el-form-item>
@@ -125,17 +125,19 @@
</template>
</TableHeader>
<!-- <div class="mapBox" >
<div class="mapBox">
<el-form :inline="true" class="demo-form-inline">
<el-form-item>
<Area ref="areaRef" :show-all-levels="false" v-model="tableStore.table.params.orgNo" style="width: 100px"
/>
<Area
ref="areaRef"
@change-value="changeValue"
:show-all-levels="false"
v-model="tableStore.table.params.deptIndex"
style="width: 100px"
/>
</el-form-item>
</el-form>
</div> -->
</div>
<Map />
@@ -145,44 +147,44 @@
style="height: 200px"
:color="[color[0], color[0]]"
class="box"
:backgroundColor="`${color[0]}24`"
:backgroundColor="`#f3f1ec90`"
title="终端统计"
>
<div class="title">
<span class="iconfont icon-zhongduantongji-xian"></span>
终端统计
<!-- <el-button link icon="el-icon-View" @click="endpointStatistics">详情</el-button> -->
<!-- <el-button link class="view" icon="el-icon-View" @click="endpointStatistics">详情</el-button> -->
</div>
<statistics />
<statistics :params="tableStore.table.data" />
</BorderBox13>
<BorderBox13
:color="[color[0], color[0]]"
class="box"
style="flex: 1"
:backgroundColor="`${color[0]}24`"
:backgroundColor="`#f3f1ec90`"
title="终端运行评价"
>
<div class="title">
<span class="iconfont icon-daipingjia"></span>
终端运行评价
<el-button link icon="el-icon-View" @click="endpointStatistics">详情</el-button>
<!-- <el-button link class="view" icon="el-icon-View" @click="endpointStatistics">详情</el-button> -->
</div>
<run />
<run :params="tableStore.table.params" ref="runRef" @reviewDetails="reviewDetails" />
</BorderBox13>
<BorderBox13
:style="height3"
:color="[color[0], color[0]]"
class="box"
:backgroundColor="`${color[0]}24`"
:backgroundColor="`#f3f1ec90`"
title="终端运行评价详情"
>
<div class="title">
<span class="iconfont icon-a-qushi1"></span>
终端运行评价详情
<!-- <el-button link icon="el-icon-View">详情</el-button> -->
<!-- <el-button link class="view" icon="el-icon-View">详情</el-button> -->
</div>
<terminalOperation />
<terminalOperation :params="tableStore.table.params" ref="terminalOperationRef" />
</BorderBox13>
</div>
</transition>
@@ -192,13 +194,13 @@
<BorderBox13
:color="[color[0], color[0]]"
class="box box-2"
:backgroundColor="`${color[0]}24`"
:backgroundColor="`#f3f1ec90`"
title="区域终端运行评价"
>
<div class="title">
<span class="iconfont icon-a-ziyuan118"></span>
区域终端运行评价
<el-button link icon="el-icon-View" @click="regionEvaluation">详情</el-button>
<el-button link class="view" icon="el-icon-View" @click="regionEvaluation">详情</el-button>
</div>
<region />
</BorderBox13>
@@ -207,7 +209,7 @@
style="height: 100%"
:color="[color[0], color[0]]"
class="box"
:backgroundColor="`${color[0]}24`"
:backgroundColor="`#f3f1ec90`"
title="最近一周终端评价趋势"
>
<div class="title">
@@ -215,7 +217,7 @@
最近一周终端评价趋势
</div>
<week />
<week ref="weekRef" :params="tableStore.table.params"/>
</BorderBox13>
</div>
</div>
@@ -226,14 +228,14 @@
<BorderBox13
:color="[color[0], color[0]]"
class="box"
:backgroundColor="`${color[0]}24`"
:backgroundColor="`#f3f1ec90`"
title="异常终端详情"
>
<div class="title">
<span class="iconfont icon-yichangxiangqing-xian"></span>
异常终端详情
</div>
<terminalDetails />
<terminalDetails ref="terminalDetailsRef" :params="tableStore.table.params" />
<table />
</BorderBox13>
</div>
@@ -250,7 +252,7 @@ import TableHeader from '@/components/table/header/index.vue'
import TableStore from '@/utils/tableStore'
import { useDictData } from '@/stores/dictData'
import { mainHeight } from '@/utils/layout'
import Area from '@/components/form/area/index.vue'
import Map from './components/map.vue'
import { BorderBox13 } from '@kjgl77/datav-vue3'
import { useConfig } from '@/stores/config'
@@ -266,45 +268,36 @@ import regionDetails from './components/regionDetails.vue'
defineOptions({
name: 'runManage/runEvaluate'
})
const runRef = ref()
const weekRef = ref()
const terminalDetailsRef = ref()
const config = useConfig()
const color = config.layout.elementUiPrimary
const dictData = useDictData()
const height = mainHeight(115)
const height3 = mainHeight(115, 3)
const classificationData = dictData.getBasicData('Statistical_Type', ['Report_Type'])
//字典获取监督对象类型
const supvObjTypeList = dictData.getBasicData('supv_obj_type')
const powerFlagList = dictData.getBasicData('power_flag')
const tableStore = new TableStore({
url: '/user-boot/user/getAllUserSimpleList',
method: 'GET',
isWebPaging: true,
showPage: false,
publicHeight: 480,
column: [
{ title: '序号', width: 80 },
{ title: '监测对象类型', field: 'name3' },
{ title: '监测对象名称', field: 'name4' },
{ title: '电压等级', field: 'name5' },
{
title: '操作',
width: '120',
render: 'buttons',
buttons: [
{
name: 'edit',
title: '工单',
type: 'primary',
icon: 'el-icon-Plus',
render: 'basicButton',
click: row => {}
}
]
}
],
url: '/device-boot/dev/statisticDevNum',
method: 'POST',
column: [],
loadCallback: () => {
tableStore.table.data = []
runRef.value.info()
weekRef.value.info()
terminalDetailsRef.value.info()
}
})
tableStore.table.params.deptIndex = dictData.state.area[0].id
tableStore.table.params.loadType = dictData.getBasicData('Interference_Source')
tableStore.table.params.terminaloption = dictData.getBasicData('Dev_Manufacturers')
tableStore.table.params.scale = dictData.getBasicData('Dev_Voltage_Stand')
tableStore.table.params.statisticalType = classificationData.filter(item => item.name == '电网拓扑')[0] //dictData.getBasicData('Statistical_Type', ['Report_Type'])[0]
tableStore.table.params.monitorFlag = 2
tableStore.table.params.powerFlag = 2
tableStore.table.params.serverName = 'harmonicBoot'
provide('tableStore', tableStore)
const leftVisible = ref(true)
const rightVisible = ref(true)
@@ -317,14 +310,21 @@ const toggle = () => {
rightVisible.value = !rightVisible.value
centerVisible.value = !centerVisible.value
}
// 终端统计详情
const endpointStatistics = () => {
statisticsPopUpBoxRef.value.open()
// 区域变化
const changeValue = (val: any) => {
tableStore.index()
}
// 区域详情
const regionEvaluation = () => {
regionDetailsRef.value.open()
}
const terminalOperationRef = ref()
//渲染 在线率
const reviewDetails = (item: any) => {
terminalOperationRef.value.info(item)
}
onMounted(() => {
// 加载数据
@@ -439,7 +439,7 @@ onMounted(() => {
top: 80px;
left: calc(50% + 45px);
z-index: 1;
z-index: 10;
.el-select {
min-width: 100px;
@@ -473,4 +473,7 @@ onMounted(() => {
margin-right: 15px;
}
}
:deep(.view) {
color: #000 !important;
}
</style>