修改冀北现场反馈问题
This commit is contained in:
@@ -1,15 +1,16 @@
|
||||
<template>
|
||||
<!-- 综合评估详情 -->
|
||||
<el-dialog draggable title="区域污染水平评估" v-model="dialogVisible" width="1400px">
|
||||
<el-dialog draggable title="稳态电能质量水平评估" v-model="dialogVisible" width="1400px">
|
||||
<div style="display: flex">
|
||||
<div style="width: 400px">
|
||||
<vxe-table
|
||||
v-bind="defaultAttribute"
|
||||
ref="tableRef"
|
||||
@current-change="currentChangeEvent"
|
||||
@cell-click="currentChangeEvent"
|
||||
height="250px"
|
||||
:row-config="{ isCurrent: true, isHover: true }"
|
||||
:data="tableData"
|
||||
style="cursor: pointer"
|
||||
>
|
||||
<vxe-column field="deptName" title="地市" />
|
||||
<vxe-column field="score" title="污染值" sortable>
|
||||
@@ -26,7 +27,15 @@
|
||||
</vxe-table>
|
||||
</div>
|
||||
<div class="ml10" style="width: 990px">
|
||||
<vxe-table v-bind="defaultAttribute" v-loading="loadingTab" ref="vxeRef" height="250px" :data="subdata">
|
||||
<vxe-table
|
||||
v-bind="defaultAttribute"
|
||||
@cell-click="clickAttribute"
|
||||
v-loading="loadingTab"
|
||||
ref="vxeRef"
|
||||
height="250px"
|
||||
:data="subdata"
|
||||
style="cursor: pointer"
|
||||
>
|
||||
<vxe-column type="seq" width="70" title="序号"></vxe-column>
|
||||
<vxe-column field="subName" title="变电站名称" min-width="120"></vxe-column>
|
||||
<vxe-column field="lineName" title="监测点名称" align="center" min-width="120"></vxe-column>
|
||||
@@ -59,7 +68,7 @@
|
||||
</el-radio-group>
|
||||
</div> -->
|
||||
|
||||
<MyEChart style="height: 300px" :options="picEChart" @echartClick="echartClick"/>
|
||||
<MyEChart style="height: 300px" :options="picEChart" @echartClick="echartClick" />
|
||||
</div>
|
||||
</el-dialog>
|
||||
</template>
|
||||
@@ -121,7 +130,7 @@ const analysis = () => {
|
||||
name: '',
|
||||
data: first10Items.map((item: any) => item.projectName.split('(')[0].trim()),
|
||||
axisLabel: {
|
||||
rotate: 30 // 核心:倾斜 45 度(推荐 30/45/60,角度太大易读性差)
|
||||
rotate: 20 // 核心:倾斜 45 度(推荐 30/45/60,角度太大易读性差)
|
||||
}
|
||||
},
|
||||
grid: {
|
||||
@@ -171,16 +180,25 @@ const setColor = val => {
|
||||
? '#00B07D'
|
||||
: ''
|
||||
}
|
||||
const echartClick = (res:any) => {
|
||||
router.push({
|
||||
const echartClick = (res: any) => {
|
||||
router.push({
|
||||
name: 'harmonic-boot/qydetailedAnalysis/pollutionReport',
|
||||
query: {
|
||||
type: '4',
|
||||
name: res.name,
|
||||
t: Date.now()
|
||||
}
|
||||
})
|
||||
}
|
||||
const clickAttribute = (row: any) => {
|
||||
router.push({
|
||||
name: 'harmonic-boot/qydetailedAnalysis/pollutionReport',
|
||||
query: {
|
||||
type: '1',
|
||||
name: row.row.lineName,
|
||||
t: Date.now()
|
||||
}
|
||||
})
|
||||
console.log("🚀 ~ echartClick ~ res:", res)
|
||||
|
||||
}
|
||||
defineExpose({ open })
|
||||
</script>
|
||||
|
||||
@@ -2,9 +2,16 @@
|
||||
<div class="propInfo" v-if="show">
|
||||
<div class="top">
|
||||
<el-form :inline="false" label-width="auto">
|
||||
<el-form-item label=" 筛选:">
|
||||
<el-form-item label=" 筛选数据">
|
||||
<el-input v-model="value" size="small" clearable placeholder="请输入关键字进行筛选"></el-input>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="电网标志">
|
||||
<el-select v-model="powerFlag" placeholder="请选择电网标志">
|
||||
<el-option label="全部" value="0"></el-option>
|
||||
<el-option label="电网侧" value="1"></el-option>
|
||||
<el-option label="非电网侧" value="2"></el-option>
|
||||
</el-select>
|
||||
</el-form-item> -->
|
||||
</el-form>
|
||||
<Close class="ico" @click="show = false" />
|
||||
</div>
|
||||
@@ -19,8 +26,8 @@
|
||||
v-loading="loading"
|
||||
:row-config="{ isCurrent: true, isHover: true }"
|
||||
:columnConfig="{ resizable: true }"
|
||||
@current-change="currentChangeEvent"
|
||||
style="z-index: 0;"
|
||||
@cell-click="currentChangeEvent"
|
||||
style="z-index: 0"
|
||||
>
|
||||
<vxe-column type="seq" title="序号" width="70px"></vxe-column>
|
||||
<vxe-column field="gdName" title="供电公司"></vxe-column>
|
||||
@@ -28,6 +35,11 @@
|
||||
<!-- <vxe-column field="deviceName" title="终端名称"></vxe-column> -->
|
||||
<!-- <vxe-column field="ip" title="IP"></vxe-column> -->
|
||||
<vxe-column field="lineName" title="监测点名称"></vxe-column>
|
||||
<vxe-column field="powerFlag" title="电网标志">
|
||||
<template #default="{ row }">
|
||||
{{ row.powerFlag == 0 ? '电网侧' : '非电网侧' }}
|
||||
</template>
|
||||
</vxe-column>
|
||||
<!-- <vxe-column field="loadType" title="干扰源"></vxe-column> -->
|
||||
<vxe-column field="loadType" title="干扰源类型"></vxe-column>
|
||||
<vxe-column field="objName" title="监测对象"></vxe-column>
|
||||
@@ -40,9 +52,10 @@ import { defaultAttribute } from '@/components/table/defaultAttribute'
|
||||
import { Close } from '@element-plus/icons-vue'
|
||||
const emit = defineEmits(['flyTo'])
|
||||
const value = ref('')
|
||||
const tableRef=ref()
|
||||
const tableRef = ref()
|
||||
const dataList = ref([])
|
||||
const loading = ref(false)
|
||||
const powerFlag = ref('0')
|
||||
const open = (data: any) => {
|
||||
dataList.value = []
|
||||
loading.value = true
|
||||
@@ -99,11 +112,11 @@ function filterDataByKeyword(data, keyword) {
|
||||
})
|
||||
})
|
||||
}
|
||||
const currentChangeEvent=()=>{
|
||||
const currentChangeEvent = () => {
|
||||
// tableRef.value.getCurrentRecord()
|
||||
console.log("🚀 ~ currentChangeEvent ~ tableRef.value.getCurrentRecord():", tableRef.value.getCurrentRecord())
|
||||
let data=tableRef.value.getCurrentRecord()
|
||||
emit('flyTo',{ coordinate: [data.lng, data.lat] }, 16)
|
||||
console.log('🚀 ~ currentChangeEvent ~ tableRef.value.getCurrentRecord():', tableRef.value.getCurrentRecord())
|
||||
let data = tableRef.value.getCurrentRecord()
|
||||
emit('flyTo', { coordinate: [data.lng, data.lat] }, 16)
|
||||
}
|
||||
|
||||
const show = ref(false)
|
||||
|
||||
@@ -496,7 +496,7 @@ const jump = () => {
|
||||
name: 'harmonic-boot/qydetailedAnalysis/pollutionReport',
|
||||
query: {
|
||||
type: '2',
|
||||
statisticalType:contaminate.value,
|
||||
statisticalType: contaminate.value,
|
||||
t: Date.now()
|
||||
}
|
||||
})
|
||||
@@ -536,5 +536,7 @@ defineExpose({ open })
|
||||
.text-style {
|
||||
cursor: pointer;
|
||||
text-decoration: underline;
|
||||
text-decoration-color: var(--el-color-primary);
|
||||
text-underline-offset: 4px;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -1,7 +1,14 @@
|
||||
<!-- 暂态 -->
|
||||
<template>
|
||||
<el-dialog draggable :title="title" v-model="dialogVisible" width="800px">
|
||||
<vxe-table v-bind="defaultAttribute" ref="vxeRef" height="360px" :data="tableData">
|
||||
<vxe-table
|
||||
v-bind="defaultAttribute"
|
||||
ref="vxeRef"
|
||||
height="360px"
|
||||
:data="tableData"
|
||||
@cell-click="currentChangeEvent"
|
||||
style="cursor: pointer;"
|
||||
>
|
||||
<vxe-column title="序号" width="70" type="seq"></vxe-column>
|
||||
<vxe-column field="lineName" title="监测点名称" />
|
||||
<vxe-column field="subName" title="变电站名称"></vxe-column>
|
||||
@@ -16,6 +23,8 @@ import MyEChart from '@/components/echarts/MyEchart.vue'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
import { defaultAttribute } from '@/components/table/defaultAttribute'
|
||||
import { getEventDetailByList } from '@/api/device-boot/panorama'
|
||||
import { useRouter } from 'vue-router'
|
||||
const router = useRouter()
|
||||
const dictData = useDictData()
|
||||
const dialogVisible: any = ref(false)
|
||||
const list = dictData.getBasicData('Event_Statis')
|
||||
@@ -30,6 +39,19 @@ const open = async (row: any, name: string, type: string) => {
|
||||
|
||||
dialogVisible.value = true
|
||||
}
|
||||
const currentChangeEvent = (row: any) => {
|
||||
router.push({
|
||||
name: 'Descentsystem/transientList',
|
||||
query: {
|
||||
type: '1',
|
||||
name:row.row.lineName,
|
||||
dicData: types.value,
|
||||
t: Date.now()
|
||||
}
|
||||
})
|
||||
}
|
||||
// 跳转暂态列表
|
||||
|
||||
// 查看详情
|
||||
|
||||
defineExpose({ open })
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
<template #content>
|
||||
<span style="">{{ dropList.gdName }}_{{ dropList.bdName }}_{{ dropList.lineName }}</span>
|
||||
<span style="font-weight: 500" class="ml20">最新数据时间:</span>
|
||||
<span style="color: var(--color-primary-default)">{{ dropList.updateTime }}</span>
|
||||
<span style="color: var(--el-color-primary)">{{ dropList.updateTime }}</span>
|
||||
<span style="font-weight: 500" class="ml20">统计日期:</span>
|
||||
<span style="color: var(--color-primary-default)">
|
||||
<span style="color: var(--el-color-primary)">
|
||||
{{ getTimeOfTheMonth('3')[0] + '至' + getTimeOfTheMonth('3')[1] }}
|
||||
</span>
|
||||
</template>
|
||||
@@ -88,7 +88,7 @@
|
||||
</el-descriptions>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<h3 class="mb10 iconBox text-style" @click="clickAlarm(8)" >
|
||||
<h3 class="mb10 iconBox text-style" @click="clickAlarm(8)">
|
||||
<span></span>
|
||||
告警明细
|
||||
</h3>
|
||||
@@ -107,11 +107,11 @@
|
||||
<vxe-column field="xz" title="最大限值"></vxe-column>
|
||||
|
||||
</vxe-table> -->
|
||||
<el-table :data="evaluationData" size="small" border>
|
||||
<el-table :data="evaluationData.filter((item) => item.avg != 3.14159)" height="200px" size="small" border>
|
||||
<el-table-column prop="targetName" align="center" label="指标名称" />
|
||||
<el-table-column prop="avg" align="center" label="最大幅值">
|
||||
<el-table-column prop="avg" align="center" label="最大越限幅值">
|
||||
<template #default="{ row }">
|
||||
{{ row.avg == 3.14159 ? '/' : Math.floor(row.avg * 100) / 100 }}
|
||||
{{ Math.floor(row.avg * 100) / 100 }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="xz" align="center" label="限值">
|
||||
@@ -190,7 +190,6 @@ import {
|
||||
} from '@/api/device-boot/panorama'
|
||||
import { formatter } from 'element-plus'
|
||||
|
||||
|
||||
const emit = defineEmits(['back'])
|
||||
const dropList: any = ref({})
|
||||
const TargetData: any = ref({})
|
||||
@@ -382,8 +381,7 @@ const open = async (id: string) => {
|
||||
searchBeginTime: datePickerRef.value.timeValue[0],
|
||||
searchEndTime: datePickerRef.value.timeValue[1],
|
||||
searchState: 0,
|
||||
lineRunFlag: 0,
|
||||
|
||||
lineRunFlag: 0
|
||||
}).then((res: any) => {
|
||||
// dropList.value.assessData = res.data.assessLevel
|
||||
evaluationData.value = [
|
||||
@@ -398,19 +396,40 @@ const open = async (id: string) => {
|
||||
xz: res.data.vdevLimit
|
||||
},
|
||||
{
|
||||
targetName: '电压总谐波畸变率',
|
||||
avg: res.data.udevData,
|
||||
xz: res.data.uaberranceLimit
|
||||
targetName: '谐波电流',
|
||||
avg: res.data.iharmData,
|
||||
xz: res.data.iharmLimit
|
||||
},
|
||||
{
|
||||
targetName: '三相电压不平衡度',
|
||||
avg: res.data.unbalanceData,
|
||||
xz: res.data.unbalanceLimit
|
||||
targetName: '负序电流',
|
||||
avg: res.data.inegData,
|
||||
xz: res.data.inegLimit
|
||||
},
|
||||
{
|
||||
targetName: '间谐波电压',
|
||||
avg: res.data.inuharmData,
|
||||
xz: res.data.inuharmLimit
|
||||
},
|
||||
|
||||
{
|
||||
targetName: '电压总谐波畸变率',
|
||||
avg: res.data.uaberranceData,
|
||||
xz: res.data.uaberranceLimit
|
||||
},
|
||||
{
|
||||
targetName: '闪变',
|
||||
avg: res.data.flickerData,
|
||||
xz: res.data.flickerLimit
|
||||
},
|
||||
{
|
||||
targetName: '谐波电压',
|
||||
avg: res.data.uharmData,
|
||||
xz: res.data.uharmLimit
|
||||
},
|
||||
{
|
||||
targetName: '三相电压不平衡度',
|
||||
avg: res.data.unbalanceData,
|
||||
xz: res.data.unbalanceLimit
|
||||
}
|
||||
]
|
||||
})
|
||||
@@ -770,7 +789,7 @@ defineExpose({ open })
|
||||
|
||||
.iconBox {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
align-items: center;
|
||||
span {
|
||||
display: inline-block;
|
||||
width: 3px;
|
||||
@@ -808,5 +827,7 @@ align-items: center;
|
||||
.text-style {
|
||||
cursor: pointer;
|
||||
text-decoration: underline;
|
||||
text-decoration-color: var(--el-color-primary);
|
||||
text-underline-offset: 4px;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -118,7 +118,7 @@
|
||||
{{ linList[0].lineNumOne || 0 }}
|
||||
</span>
|
||||
告警:
|
||||
<span style="color: #a52a2a" @click="LookMap(linList[0].lineListOne, [], 0)">
|
||||
<span style="color: #a52a2a" @click="LookMap(linList[0].lineListTwo, [], 1)">
|
||||
{{ linList[0].lineNumTwo || 0 }}
|
||||
</span>
|
||||
)
|
||||
|
||||
@@ -4,34 +4,7 @@
|
||||
<!-- 综合评估 -->
|
||||
<div style="height: 110px">
|
||||
<div class="title">
|
||||
<span>
|
||||
区域污染水平评估
|
||||
<el-popover placement="right" :width="190" trigger="hover">
|
||||
<template #reference>
|
||||
<WarningFilled class="WarningFilled" />
|
||||
</template>
|
||||
<div class="text">
|
||||
<span style="color: #00b07d">无污染:0</span>
|
||||
<br />
|
||||
<span style="color: #3399ff">轻微污染:(0 , 100]</span>
|
||||
<br />
|
||||
<span style="color: #ffcc33">轻度污染:(100 , 1000]</span>
|
||||
<br />
|
||||
<span style="color: #ff9900">中度污染:(1000 , 10000]</span>
|
||||
<br />
|
||||
<span style="color: #a52a2a">重度污染:(10000</span>
|
||||
</div>
|
||||
</el-popover>
|
||||
<el-switch
|
||||
v-model="heat"
|
||||
class="ml5"
|
||||
@change="changeHeat"
|
||||
size="small"
|
||||
inline-prompt
|
||||
active-text="热力图"
|
||||
inactive-text="热力图"
|
||||
/>
|
||||
</span>
|
||||
<span>稳态电能质量水平评估</span>
|
||||
<span class="info" @click="open(0)">
|
||||
详情
|
||||
<ArrowRight style="width: 12px" />
|
||||
@@ -41,29 +14,33 @@
|
||||
<img src="@/assets/img/FGX.png" />
|
||||
</div>
|
||||
<div class="mt10 TJTop">
|
||||
<!-- <img src="@/assets/img/TJ.png" />
|
||||
综合评估得分:
|
||||
<span
|
||||
:style="{
|
||||
color:
|
||||
assessList.score == 3.14159
|
||||
? ''
|
||||
: assessList.score > 4.5
|
||||
? '#339966'
|
||||
: assessList.score > 4
|
||||
? '#2b7fd3'
|
||||
: assessList.score > 3
|
||||
? '#ffcc33'
|
||||
: assessList.score > 2
|
||||
? '#97017e'
|
||||
: assessList.score > 0
|
||||
? '#A52a2a'
|
||||
: ''
|
||||
}"
|
||||
>
|
||||
{{ assessList.score == 3.14159 ? '/' : assessList.score }}
|
||||
|
||||
</span> -->
|
||||
<img src="@/assets/img/TJ.png" />
|
||||
区域污染水平评估
|
||||
<el-popover placement="right" :width="190" trigger="hover">
|
||||
<template #reference>
|
||||
<WarningFilled class="WarningFilled ml5 " />
|
||||
</template>
|
||||
<div class="text">
|
||||
<span style="color: #00b07d">无污染:0</span>
|
||||
<br />
|
||||
<span style="color: #3399ff">轻微污染:(0 , 100]</span>
|
||||
<br />
|
||||
<span style="color: #ffcc33">轻度污染:(100 , 1000]</span>
|
||||
<br />
|
||||
<span style="color: #ff9900">中度污染:(1000 , 10000]</span>
|
||||
<br />
|
||||
<span style="color: #a52a2a">重度污染:(10000</span>
|
||||
</div>
|
||||
</el-popover>
|
||||
<el-switch
|
||||
v-model="heat"
|
||||
class="ml5"
|
||||
@change="changeHeat"
|
||||
size="small"
|
||||
inline-prompt
|
||||
active-text="热力图"
|
||||
inactive-text="热力图"
|
||||
/>
|
||||
</div>
|
||||
<div class="evaluate">
|
||||
<div v-for="item in assessList" style="min-width: 60px">
|
||||
@@ -89,16 +66,16 @@
|
||||
</div>
|
||||
<!-- 稳态电能质量水平评估 -->
|
||||
<div>
|
||||
<div class="title">
|
||||
<!-- <div class="title">
|
||||
<span>稳态电能质量水平评估</span>
|
||||
<span class="info" @click="open(1)">
|
||||
详情
|
||||
<ArrowRight style="width: 12px" />
|
||||
</span>
|
||||
</div>
|
||||
<div style="display: flex" class="mt2">
|
||||
</div> -->
|
||||
<!-- <div style="display: flex" class="mt2">
|
||||
<img src="@/assets/img/FGX.png" />
|
||||
</div>
|
||||
</div> -->
|
||||
<div :style="boxHeight" class="boxR">
|
||||
<div class="top">
|
||||
<div class="TJTop">
|
||||
@@ -386,10 +363,10 @@ const open = (e: number) => {
|
||||
techniqueRef.value.open(formRow.value)
|
||||
}
|
||||
}
|
||||
const changeHeat = (e:any) => {
|
||||
const changeHeat = (e: any) => {
|
||||
emit('changeHeat', e)
|
||||
}
|
||||
const setColor = (val:any) => {
|
||||
const setColor = (val: any) => {
|
||||
return val == 3.14159
|
||||
? ''
|
||||
: val > 10000
|
||||
@@ -404,7 +381,7 @@ const setColor = (val:any) => {
|
||||
? '#00B07D'
|
||||
: ''
|
||||
}
|
||||
const setVal = (val:any) => {
|
||||
const setVal = (val: any) => {
|
||||
return val == 3.14159
|
||||
? '/'
|
||||
: val > 10000
|
||||
@@ -511,14 +488,15 @@ defineExpose({ info, show })
|
||||
cursor: pointer;
|
||||
color: #757575;
|
||||
}
|
||||
.WarningFilled {
|
||||
width: 12px;
|
||||
font-weight: 500;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
.WarningFilled {
|
||||
width: 12px;
|
||||
font-weight: 500;
|
||||
cursor: pointer;
|
||||
}
|
||||
.TJTop {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
img {
|
||||
height: 1.2rem;
|
||||
width: 1.2rem;
|
||||
@@ -526,7 +504,7 @@ defineExpose({ info, show })
|
||||
}
|
||||
}
|
||||
.evaluate {
|
||||
margin: 10px 0;
|
||||
margin: 5px 0 10px 0;
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
text-align: center;
|
||||
|
||||
Reference in New Issue
Block a user