修改冀北现场反馈问题

This commit is contained in:
GGJ
2025-12-19 11:58:26 +08:00
parent d64d18f330
commit dc32cc3bb7
32 changed files with 865 additions and 426 deletions

View File

@@ -6,16 +6,33 @@
<el-form-item label="区域">
<Area ref="areaRef" v-model="tableStore.table.params.deptId" @changeValue="changeArea" />
</el-form-item>
<el-form-item label="筛选数据">
<el-input v-model="tableStore.table.params.searchValue" clearable maxlength="32" show-word-limit placeholder="请输入监测点名称" />
</el-form-item>
<el-form-item label="筛选数据">
<el-input
v-model="tableStore.table.params.searchValue"
clearable
maxlength="32"
show-word-limit
placeholder="请输入监测点名称"
/>
</el-form-item>
<el-form-item label="监测点性质">
<el-select v-model="tableStore.table.params.lineType" clearable placeholder="请选择监测点性质">
<el-option label="电网侧" value="0" />
<el-option label="非电网侧" value="1" />
</el-select>
</el-form-item>
<el-form-item label="超标指标">
<el-form-item label="数据类型">
<el-select
v-model="tableStore.table.params.dataType"
@change="changeDataType"
placeholder="请选择监测点性质"
>
<el-option label="超标数据" value="1" />
<el-option label="异常数据" value="2" />
<el-option label="无数据" value="0" />
</el-select>
</el-form-item>
<el-form-item label="超标指标" v-show="tableStore.table.params.dataType == 1">
<el-select
v-model="tableStore.table.params.targetList"
clearable
@@ -27,7 +44,7 @@
<el-option v-for="item in exceeded" :key="item.id" :label="item.name" :value="item.id" />
</el-select>
</el-form-item>
<el-form-item label="数据类型">
<!-- <el-form-item label="数据类型">
<el-switch
v-model="tableStore.table.params.dataType"
inline-prompt
@@ -36,7 +53,7 @@
active-text="超标数据"
inactive-text="无数据"
/>
</el-form-item>
</el-form-item> -->
<!-- <el-form-item label="预警阈值">
<el-input-number
v-model="tableStore.table.params.alertThreshold"
@@ -77,6 +94,8 @@
<alarmList ref="alarmListRef" @onSubmit="tableStore.index()" />
<!-- 详情 -->
<detail ref="detailRef" />
<!-- 异常数据详情 -->
<abnormal ref="abnormalRef" />
</template>
<script setup lang="ts">
import { ref, onMounted, provide, nextTick } from 'vue'
@@ -88,6 +107,7 @@ import { ElMessage, ElMessageBox } from 'element-plus'
import { useDictData } from '@/stores/dictData'
import alarmList from './form/alarmList.vue'
import detail from './form/detail.vue'
import abnormal from './form/abnormal.vue'
const VITE_FLAG = import.meta.env.VITE_NAME == 'jibei'
const dictData = useDictData()
import { useRouter } from 'vue-router'
@@ -101,8 +121,10 @@ const tableRef = ref()
const industry = dictData.getBasicData('Business_Type')
const TableHeaderRef = ref()
const alarmListRef = ref()
const abnormalRef = ref()
const flagTime = ref(false)
const detailRef = ref()
const time: any = ref([])
const list: any = ref({
deptId: '',
searchBeginTime: '',
@@ -119,7 +141,7 @@ const tableStore = new TableStore({
filename: '在线监测',
// isWebPaging:true,
column: [
{ type: 'checkbox', width: 40 },
{ type: 'checkbox', width: 40 },
{
title: '序号',
@@ -180,11 +202,15 @@ const tableStore = new TableStore({
return row.targetType == 0
},
click: row => {
detailRef.value.open({
text: '详情',
row: row,
list: list.value
})
if (row.dataType == 2) {
abnormalRef.value.open(row, time.value)
} else {
detailRef.value.open({
text: '详情',
row: row,
list: list.value
})
}
}
},
{
@@ -289,6 +315,7 @@ const tableStore = new TableStore({
}
],
beforeSearchFun: () => {
time.value = [tableStore.table.params.startTime, tableStore.table.params.endTime]
tableStore.table.params.currentPage = tableStore.table.params.pageNum
list.value.deptId = tableStore.table.params.deptId
@@ -300,8 +327,10 @@ const tableStore = new TableStore({
list.value.lineType = tableStore.table.params.lineType
list.value.alarmThreshold = tableStore.table.params.alarmThreshold
flag.value = level.value
console.log('flag',flag.value)
flagTime.value = tableStore.table.params.dataType == 0 ? true : false
if (tableStore.table.params.dataType != 1) {
delete tableStore.table.params.targetList
}
},
loadCallback: () => {
// tableStore.table.data = [
@@ -335,7 +364,7 @@ tableStore.table.params.dataType = '1'
tableStore.table.params.deptId = dictData.state.area[0].id
provide('tableStore', tableStore)
onMounted(() => {
TableHeaderRef.value.setDatePicker([{label: '月', value: 3}])
TableHeaderRef.value.setDatePicker([{ label: '月', value: 3 }])
tableStore.index()
setTimeout(() => {
@@ -343,6 +372,13 @@ onMounted(() => {
}, 10)
})
const changeDataType = e => {
if (e == 1) {
tableStore.table.params.targetList = exceeded.filter(item => item.code == 'Total_Indicator')[0].id
? [exceeded.filter(item => item.code == 'Total_Indicator')[0].id]
: []
}
}
const changeAlert = e => {
if (e == null) {
tableStore.table.params.alertThreshold = 5
@@ -363,19 +399,33 @@ const changeAlarm = e => {
}
}
}
let flagList = exceeded.filter(item => item.name == '谐波电压' || item.name == '谐波电流').map(item => item.id)
// 发起预警单
const launch = (title: string) => {
console.log('🚀 ~ flagList:', flagList)
if (tableStore.table.selection.length == 0) {
ElMessage.warning('请选择一条数据')
return
}
let flag = false
tableStore.table.selection.forEach(item => {
if (!flagList.includes(item.targetType)) {
flag = true
}
})
if (flag) {
ElMessage.warning('目前只支持谐波电压/谐波电流下发预告警单')
return
}
console.log('🚀 ~ launch ~ list.value:', tableStore.table.selection)
alarmListRef.value.open({
text: title,
form: list.value,
row: tableStore.table.selection
})
console.log('🚀 ~ launch ~ list.value:', list.value)
}
const changeArea = e => {
level.value = e.data.level