污染值报表高度,合并查询
This commit is contained in:
@@ -1,10 +1,10 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="default-main">
|
<div class="default-main">
|
||||||
<el-tabs v-model="activeName" type="border-card" @tab-change="handleTabChange">
|
<el-tabs v-model="activeName" type="border-card" @tab-change="handleTabChange">
|
||||||
<el-tab-pane label="谐波阻抗" name="1">
|
<el-tab-pane label="谐波阻抗模型库" name="1">
|
||||||
<HarmonicImpedanceTable ref="harmonicImpedanceRef" />
|
<HarmonicImpedanceTable ref="harmonicImpedanceRef" />
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="谐波源" name="2">
|
<el-tab-pane label="谐波源模型库" name="2">
|
||||||
<HarmonicSourcesTable ref="harmonicSourcesRef" />
|
<HarmonicSourcesTable ref="harmonicSourcesRef" />
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="default-main">
|
<div class="default-main">
|
||||||
<TableHeader datePicker ref="TableHeaderRef">
|
<TableHeader datePicker ref="TableHeaderRef" @selectChange="handleTableHeaderSelectChange">
|
||||||
<template #select>
|
<template #select>
|
||||||
|
|
||||||
<el-form-item label="区域">
|
<el-form-item label="区域">
|
||||||
@@ -33,29 +33,14 @@
|
|||||||
<el-option label="非电网侧" value="2"></el-option>
|
<el-option label="非电网侧" value="2"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 添加其他前端过滤条件 -->
|
<el-form-item label="筛选">
|
||||||
<el-form-item label="变电站">
|
|
||||||
<el-input
|
<el-input
|
||||||
v-model="localFilters.subStationName"
|
v-model="searchKeyword"
|
||||||
placeholder="请输入变电站名称"
|
placeholder="请输入变电站/终端/监测点"
|
||||||
clearable
|
|
||||||
@input="handleFilterChange"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="终端名称">
|
|
||||||
<el-input
|
|
||||||
v-model="localFilters.devName"
|
|
||||||
placeholder="请输入终端名称"
|
|
||||||
clearable
|
|
||||||
@input="handleFilterChange"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="监测点名称">
|
|
||||||
<el-input
|
|
||||||
v-model="localFilters.lineName"
|
|
||||||
placeholder="请输入监测点名称"
|
|
||||||
clearable
|
clearable
|
||||||
@input="handleFilterChange"
|
@input="handleFilterChange"
|
||||||
|
:show-word-limit=true
|
||||||
|
:maxlength="32"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</template>
|
</template>
|
||||||
@@ -86,8 +71,9 @@
|
|||||||
<vxe-column field="lineVoltage" title="监测点电压等级" align="center" min-width="120"></vxe-column>
|
<vxe-column field="lineVoltage" title="监测点电压等级" align="center" min-width="120"></vxe-column>
|
||||||
<vxe-column field="loadType" title="干扰源类型" align="center" min-width="120"></vxe-column>
|
<vxe-column field="loadType" title="干扰源类型" align="center" min-width="120"></vxe-column>
|
||||||
<vxe-column field="objName" title="监测对象名称" align="center" min-width="150"></vxe-column>
|
<vxe-column field="objName" title="监测对象名称" align="center" min-width="150"></vxe-column>
|
||||||
<vxe-column field="onlineRate" title="在线率" align="center" min-width="100"></vxe-column>
|
<vxe-column field="interval" title="统计间隔" align="center" min-width="100"></vxe-column>
|
||||||
<vxe-column field="integrity" title="完整率" align="center" min-width="100"></vxe-column>
|
<vxe-column field="onlineRate" title="在线率(%)" align="center" min-width="100"></vxe-column>
|
||||||
|
<vxe-column field="integrity" title="完整率(%)" align="center" min-width="100"></vxe-column>
|
||||||
<vxe-column field="harmonicValue" :title="harmonicValueTitle" align="center" min-width="120"></vxe-column>
|
<vxe-column field="harmonicValue" :title="harmonicValueTitle" align="center" min-width="120"></vxe-column>
|
||||||
<vxe-column field="upCounts" title="暂升次数(次)" align="center" min-width="100"></vxe-column>
|
<vxe-column field="upCounts" title="暂升次数(次)" align="center" min-width="100"></vxe-column>
|
||||||
<vxe-column field="downCounts" title="电压暂降(次)" align="center" min-width="100"></vxe-column>
|
<vxe-column field="downCounts" title="电压暂降(次)" align="center" min-width="100"></vxe-column>
|
||||||
@@ -134,6 +120,8 @@ const allData = ref<PollutionItem[]>([])
|
|||||||
const TableHeaderRef = ref()
|
const TableHeaderRef = ref()
|
||||||
// 添加响应式标题变量
|
// 添加响应式标题变量
|
||||||
const harmonicValueTitle = ref('谐波电压污染值')
|
const harmonicValueTitle = ref('谐波电压污染值')
|
||||||
|
const searchKeyword = ref('')
|
||||||
|
|
||||||
const cascaderProps = {
|
const cascaderProps = {
|
||||||
label: 'name',
|
label: 'name',
|
||||||
value: 'id',
|
value: 'id',
|
||||||
@@ -154,15 +142,16 @@ interface PollutionItem {
|
|||||||
const formatMonitorId = (row: any) => {
|
const formatMonitorId = (row: any) => {
|
||||||
return row.row.monitorId || '/'
|
return row.row.monitorId || '/'
|
||||||
}
|
}
|
||||||
// 本地过滤参数
|
|
||||||
const localFilters = reactive({
|
|
||||||
gdName: '',
|
|
||||||
subStationName: '',
|
|
||||||
devName: '',
|
|
||||||
lineName: '',
|
|
||||||
powerFlag: '0' // 本地存储电网标志值
|
|
||||||
})
|
|
||||||
|
|
||||||
|
// 处理 TableHeader 展开/收起事件
|
||||||
|
const handleTableHeaderSelectChange = (isExpanded: boolean) => {
|
||||||
|
if(isExpanded){
|
||||||
|
tableHeight.value = tableHeight.value - 55
|
||||||
|
}else{
|
||||||
|
tableHeight.value = tableHeight.value + 55
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
const calculateTableHeight = () => {
|
const calculateTableHeight = () => {
|
||||||
const windowHeight = window.innerHeight
|
const windowHeight = window.innerHeight
|
||||||
@@ -208,29 +197,24 @@ const filteredData = computed(() => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 电网标志过滤
|
// 电网标志过滤
|
||||||
if (localFilters.powerFlag === '1') {
|
if (tableStore.table.params.powerFlag === '1') {
|
||||||
// 电网侧
|
// 电网侧
|
||||||
result = result.filter(item => item.powerFlag && !item.powerFlag.includes('非'))
|
result = result.filter(item => item.powerFlag && !item.powerFlag.includes('非'))
|
||||||
} else if (localFilters.powerFlag === '2') {
|
} else if (tableStore.table.params.powerFlag === '2') {
|
||||||
// 非电网侧
|
// 非电网侧
|
||||||
result = result.filter(item => item.powerFlag && item.powerFlag.includes('非'))
|
result = result.filter(item => item.powerFlag && item.powerFlag.includes('非'))
|
||||||
}
|
}
|
||||||
// '0' 表示全部,不过滤
|
// '0' 表示全部,不过滤
|
||||||
|
|
||||||
// 变电站过滤
|
// 统一搜索过滤
|
||||||
if (localFilters.subStationName) {
|
if (searchKeyword.value) {
|
||||||
result = result.filter(item => item.subStationName && item.subStationName.includes(localFilters.subStationName))
|
const keyword = searchKeyword.value.toLowerCase()
|
||||||
}
|
result = result.filter(item =>
|
||||||
|
(item.subStationName && item.subStationName.toLowerCase().includes(keyword)) ||
|
||||||
// 终端名称过滤
|
(item.devName && item.devName.toLowerCase().includes(keyword)) ||
|
||||||
if (localFilters.devName) {
|
(item.lineName && item.lineName.toLowerCase().includes(keyword))
|
||||||
result = result.filter(item => item.devName && item.devName.includes(localFilters.devName))
|
)
|
||||||
}
|
|
||||||
|
|
||||||
// 监测点名称过滤
|
|
||||||
if (localFilters.lineName) {
|
|
||||||
result = result.filter(item => item.lineName && item.lineName.includes(localFilters.lineName))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return result
|
return result
|
||||||
@@ -323,8 +307,6 @@ const handleStatisticalTypeChange = (newVal: { id: any }) => {
|
|||||||
|
|
||||||
// 处理过滤条件变化
|
// 处理过滤条件变化
|
||||||
const handleFilterChange = () => {
|
const handleFilterChange = () => {
|
||||||
// 更新本地电网标志值
|
|
||||||
localFilters.powerFlag = tableStore.table.params.powerFlag
|
|
||||||
// 重置分页到第一页
|
// 重置分页到第一页
|
||||||
tableStore.table.params.pageNum = 1
|
tableStore.table.params.pageNum = 1
|
||||||
// 更新数据和总条数
|
// 更新数据和总条数
|
||||||
@@ -353,7 +335,7 @@ const exportEvent = () => {
|
|||||||
|
|
||||||
// 使用 vxe-table 的导出功能
|
// 使用 vxe-table 的导出功能
|
||||||
positioningtableRef.value.exportData({
|
positioningtableRef.value.exportData({
|
||||||
filename: '谐波电压污染报告',
|
filename: '污染值报告',
|
||||||
sheetName: 'Sheet1',
|
sheetName: 'Sheet1',
|
||||||
type: 'xlsx',
|
type: 'xlsx',
|
||||||
useStyle: true,
|
useStyle: true,
|
||||||
|
|||||||
Reference in New Issue
Block a user