feat(tables): 更新设备信息及报警相关查询逻辑- 在设备信息表中增加 REPORT_ID 字段关联查询

- 修改报警日志查询条件,支持按报警类型、起止时间筛选- 完善预警信息查询功能,新增多个过滤字段
- 调整前端表单项布局与验证规则以适配后端变更
- 优化日期选择器格式并移除旧的时间范围绑定方式
dev_flv
wangyan 2025-11-13 14:25:05 +08:00
parent d97583b5f2
commit c867c85756
4 changed files with 100 additions and 38 deletions

View File

@ -7,30 +7,47 @@
@submit.prevent="fnResetPagination"
>
<el-row>
<el-col :span="6">
<el-col :span="8">
<el-form-item label="设备名称" prop="DEVICE_ID">
<el-input v-model="searchForm.DEVICE_ID" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-col :span="8">
<el-form-item label="监测节点名称" prop="PLC_NAME">
<el-input v-model="searchForm.PLC_NAME" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label=" " prop="dates" label-width="0px">
<el-col :span="8">
<el-form-item label="报警类型" prop="OVERVIEW_OF_ALERTS">
<el-select v-model="searchForm.OVERVIEW_OF_ALERTS">
<el-option label="高高报警" value="高高报警" />
<el-option label="高报警" value="高报警" />
<el-option label="低报警" value="低报警" />
<el-option label="低低报警" value="低低报警" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="开始时间" prop="START_DATE">
<el-date-picker
v-model="searchForm.dates"
type="daterange"
start-placeholder="开始时间"
end-placeholder="结束时间"
value-format="YYYY-MM-DD"
format="YYYY-MM-DD"
range-separator="至"
v-model="searchForm.START_DATE"
format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DD HH:mm:ss"
type="datetime"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-col :span="8">
<el-form-item label="结束时间" prop="END_DATE">
<el-date-picker
v-model="searchForm.END_DATE"
format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DD HH:mm:ss"
type="datetime"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label-width="10px">
<el-button type="primary" native-type="submit">搜索</el-button>
<el-button native-type="reset" @click="fnResetPagination">
@ -58,8 +75,8 @@
<el-table-column prop="DEVICE_ID" label="设备名称" />
<el-table-column prop="PLC_NAME" label="监测节点名称" />
<el-table-column prop="CURRENT_VALUE" label="当前值" />
<el-table-column prop="THRESHOLD_UP_LIMIT" label="高报阈值" />
<el-table-column prop="THRESHOLD_UP_UP_LIMIT" label="高高报阈值" />
<el-table-column prop="THRESHOLD_UP_LIMIT" label="高报阈值" />
<el-table-column prop="THRESHOLD_DOWN_LIMIT" label="低报阈值" />
<el-table-column prop="THRESHOLD_DOWN_DOWN_LIMIT" label="低低报阈值" />
<el-table-column prop="OVERVIEW_OF_ALERTS" label="报警类型" />
@ -77,12 +94,7 @@ import {getIronAlarmLogList} from "@/request/tb_iron.js";
import useListData from "@/assets/js/useListData.js";
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
useListData(getIronAlarmLogList,{
beforeGetData: (searchForm) => ({
START_DATE: searchForm.dates?.[0],
END_DATE: searchForm.dates?.[1],
}),
});
useListData(getIronAlarmLogList);
</script>
<style scoped></style>

View File

@ -212,18 +212,18 @@ const rules = {
TARGET_UNIT: [
{ required: true, message: "计量单位不能为空", trigger: "blur" },
],
THRESHOLD_UP_LIMIT: [
{ required: true, message: "高爆阈值不能为空", trigger: "blur" },
],
THRESHOLD_UP_UP_LIMIT: [
{ required: true, message: "高高报阈值不能为空", trigger: "blur" },
],
THRESHOLD_DOWN_LIMIT: [
{ required: true, message: "低报阈值不能为空", trigger: "blur" },
],
THRESHOLD_DOWN_DOWN_LIMIT: [
{ required: true, message: "低低报阈值不能为空", trigger: "blur" },
],
// THRESHOLD_UP_LIMIT: [
// { required: true, message: "", trigger: "blur" },
// ],
// THRESHOLD_UP_UP_LIMIT: [
// { required: true, message: "", trigger: "blur" },
// ],
// THRESHOLD_DOWN_LIMIT: [
// { required: true, message: "", trigger: "blur" },
// ],
// THRESHOLD_DOWN_DOWN_LIMIT: [
// { required: true, message: "", trigger: "blur" },
// ],
RANGE_UP: [{ required: true, message: "量程上限不能为空", trigger: "blur" }],
RANGE_DOWN: [
{ required: true, message: "量程下限不能为空", trigger: "blur" },

View File

@ -32,6 +32,14 @@
<el-input v-model="searchForm.COALARM_AREA" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="预警状态" prop="OPEN_ALARM">
<el-select v-model="searchForm.OPEN_ALARM">
<el-option label="开启" value="0" />
<el-option label="未开启" value="1" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label-width="10px">
<el-button type="primary" native-type="submit">搜索</el-button>
@ -140,7 +148,13 @@
<el-button type="warning" text link @click="fnGateMachine(row)">
添加监测节点
</el-button>
<el-button type="primary" text link @click="fnEarlyWarning(row)">
<el-button
type="primary"
text
link
:disabled="row.REPORT_ID !== null && row.REPORT_ID !== ''"
@click="fnEarlyWarning(row)"
>
{{ row.OPEN_ALARM === 0 ? "关闭预警" : "开启预警" }}
</el-button>
<el-button

View File

@ -7,11 +7,6 @@
@submit.prevent="fnResetPagination"
>
<el-row>
<el-col :span="6">
<el-form-item label="预警发布单位" prop="KEYWORDS">
<el-input v-model="searchForm.KEYWORDS" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="预警状态" prop="WARN_STATUS">
<el-select
@ -66,6 +61,47 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="预警描述" prop="MESSAGE">
<el-input v-model="searchForm.MESSAGE" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="是否反馈" prop="FEED_BACK">
<el-select v-model="searchForm.FEED_BACK">
<el-option label="已反馈" value="0" />
<el-option label="未反馈" value="1" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="省平台预警" prop="IS_REPORT">
<el-select v-model="searchForm.IS_REPORT">
<el-option label="是" value="1" />
<el-option label="否" value="0" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="开始时间" prop="START_TIME">
<el-date-picker
v-model="searchForm.START_TIME"
format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DD HH:mm:ss"
type="datetime"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="结束时间" prop="END_TIME">
<el-date-picker
v-model="searchForm.END_TIME"
format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DD HH:mm:ss"
type="datetime"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label-width="10px">
<el-button type="primary" native-type="submit">搜索</el-button>