Compare commits

..

2 Commits

Author SHA1 Message Date
yangsy
b7b6b216fb feat: 设备告警记录页面添加告警恢复状态和确认状态筛选 2026-01-16 14:36:46 +08:00
yangsy
97f05f21ae refactor: 调整API数据结构目录 2026-01-15 14:57:33 +08:00
7 changed files with 34 additions and 3 deletions

View File

@@ -1,5 +1,5 @@
import type { Nullable, Optional } from '@/types'; import type { Nullable, Optional } from '@/types';
import type { ReduceForPageQuery, ReduceForSaveVO, ReduceForUpdateVO } from '../../base'; import type { ReduceForPageQuery, ReduceForSaveVO, ReduceForUpdateVO } from '../../schema';
import type { NdmAlarmHost } from './alarm'; import type { NdmAlarmHost } from './alarm';
import type { NdmSecurityBox, NdmSwitch } from './other'; import type { NdmSecurityBox, NdmSwitch } from './other';
import type { NdmNvr } from './storage'; import type { NdmNvr } from './storage';

View File

@@ -1,4 +1,4 @@
export * from './base';
export * from './biz'; export * from './biz';
export * from './common'; export * from './common';
export * from './schema';
export * from './system'; export * from './system';

View File

@@ -37,6 +37,8 @@ interface SearchFields extends PageQueryExtra<NdmDeviceAlarmLog> {
alarmType_in: string[]; alarmType_in: string[];
faultLevel_in: string[]; faultLevel_in: string[];
alarmDate: [number, number]; alarmDate: [number, number];
alarmCategory: string;
alarmConfirm: string;
} }
const route = useRoute(); const route = useRoute();
@@ -105,6 +107,8 @@ const searchFields = ref<SearchFields>({
alarmType_in: [], alarmType_in: [],
faultLevel_in: [], faultLevel_in: [],
alarmDate: [dayjs().startOf('date').valueOf(), dayjs().endOf('date').valueOf()], alarmDate: [dayjs().startOf('date').valueOf(), dayjs().endOf('date').valueOf()],
alarmCategory: '',
alarmConfirm: '',
}); });
const resetSearchFields = () => { const resetSearchFields = () => {
searchFields.value = { searchFields.value = {
@@ -114,6 +118,8 @@ const resetSearchFields = () => {
alarmType_in: [], alarmType_in: [],
faultLevel_in: [], faultLevel_in: [],
alarmDate: [dayjs().startOf('date').valueOf(), dayjs().endOf('date').valueOf()], alarmDate: [dayjs().startOf('date').valueOf(), dayjs().endOf('date').valueOf()],
alarmCategory: '',
alarmConfirm: '',
}; };
}; };
const getExtraFields = (): PageQueryExtra<NdmDeviceAlarmLog> => { const getExtraFields = (): PageQueryExtra<NdmDeviceAlarmLog> => {
@@ -225,7 +231,10 @@ const { mutate: getTableData, isPending: tableLoading } = useMutation({
const res = await pageDeviceAlarmLogApi( const res = await pageDeviceAlarmLogApi(
{ {
model: {}, model: {
alarmCategory: searchFields.value.alarmCategory || undefined,
alarmConfirm: searchFields.value.alarmConfirm || undefined,
},
extra: getExtraFields(), extra: getExtraFields(),
current: pagination.page ?? 1, current: pagination.page ?? 1,
size: pagination.pageSize ?? DEFAULT_PAGE_SIZE, size: pagination.pageSize ?? DEFAULT_PAGE_SIZE,
@@ -333,6 +342,28 @@ onBeforeUnmount(() => {
<NFormItemGi span="1" label="告警级别" label-placement="left"> <NFormItemGi span="1" label="告警级别" label-placement="left">
<NSelect multiple clearable placeholder="请选择告警级别" v-model:value="searchFields.faultLevel_in" :options="faultLevelSelectOptions" /> <NSelect multiple clearable placeholder="请选择告警级别" v-model:value="searchFields.faultLevel_in" :options="faultLevelSelectOptions" />
</NFormItemGi> </NFormItemGi>
<NFormItemGi span="1" label="恢复状态" label-placement="left">
<NSelect
clearable
placeholder="请选择恢复状态"
v-model:value="searchFields.alarmCategory"
:options="[
{ label: '未恢复', value: '1' },
{ label: '已恢复', value: '2' },
]"
/>
</NFormItemGi>
<NFormItemGi span="1" label="确认状态" label-placement="left">
<NSelect
clearable
placeholder="请选择确认状态"
v-model:value="searchFields.alarmConfirm"
:options="[
{ label: '未确认', value: '2' },
{ label: '已确认', value: '1' },
]"
/>
</NFormItemGi>
<NFormItemGi span="1" label="告警时间" label-placement="left"> <NFormItemGi span="1" label="告警时间" label-placement="left">
<NDatePicker v-model:value="searchFields.alarmDate" type="datetimerange" /> <NDatePicker v-model:value="searchFields.alarmDate" type="datetimerange" />
</NFormItemGi> </NFormItemGi>