diff --git a/web/src/api/gas/handalarm/index.ts b/web/src/api/gas/handalarm/index.ts index 9602648..1dfccf9 100644 --- a/web/src/api/gas/handalarm/index.ts +++ b/web/src/api/gas/handalarm/index.ts @@ -1,32 +1,37 @@ import request from '@/config/axios' -import type { Dayjs } from 'dayjs' /** GAS手持探测器警报信息 */ export interface HandAlarm { - id: number // 主键ID - detectorId: number // 手持表id - sn: string // 设备编号 - + id?: number // 主键ID + detectorId?: number // 手持表id + + sn?: string // 设备编号 + name?: string // 持有人名称 + alarmLevel?: number // 警报方式/级别(0:正常状态;1:一级警报;2:二级警报;3:弹窗警报) alarmType?: number // 报警类型 1:气体报警 2:电量报警 3:离线报警 gasType?: string // 气体类型 unit?: string // 单位 - location: string // 位置描述 - picX: number // 在区域图X坐标值 + location?: string // 位置描述 + picX?: number // 在区域图X坐标值 picY?: number // 在区域图X坐标值 - vAlarmFirst: number // 首报值 - vAlarmMaximum: number // 最值 - tAlarmStart: string | Dayjs // 开始时间 - tAlarmEnd: string | Dayjs // 结束时间 - status: number // 状态(0:待处理;1:处理中;1:已处理) + valarmFirst?: number // 首报值 + valarmMaximum?: number // 最值 + talarmStart?: number // 开始时间 + talarmEnd?: number // 结束时间 + status?: number // 状态(0:待处理;1:处理中;1:已处理) remark?: string // 备注 + createTime?: string | string[] // 创建时间 } // GAS手持探测器警报 API export const HandAlarmApi = { // 查询GAS手持探测器警报分页 getHandAlarmPage: async (params: any) => { - return await request.get({ url: `/gas/hand-alarm/page`, params }) + return await request.get<{ + list: HandAlarm[], + total: number + }>({ url: `/gas/hand-alarm/page`, params }) }, // 查询GAS手持探测器警报详情 diff --git a/web/src/utils/formatTime.ts b/web/src/utils/formatTime.ts index 99eb428..4644200 100644 --- a/web/src/utils/formatTime.ts +++ b/web/src/utils/formatTime.ts @@ -63,7 +63,7 @@ export const defaultShortcuts = [ * @description format 季度 + 星期 + 几周:"YYYY-MM-DD HH:mm:ss WWW QQQQ ZZZ" * @returns 返回拼接后的时间字符串 */ -export function formatDate(date: Date, format?: string): string { +export function formatDate(date: Date|number|string , format?: string): string { // 日期不存在,则返回空 if (!date) { return '' diff --git a/web/src/views/gas/batteryAlarm/index.vue b/web/src/views/gas/batteryAlarm/index.vue index 270cea1..1448700 100644 --- a/web/src/views/gas/batteryAlarm/index.vue +++ b/web/src/views/gas/batteryAlarm/index.vue @@ -70,9 +70,9 @@ - - + - + --> - + /> --> diff --git a/web/src/views/gas/handalarm/index.vue b/web/src/views/gas/handalarm/index.vue index 4a6bb97..8287bb8 100644 --- a/web/src/views/gas/handalarm/index.vue +++ b/web/src/views/gas/handalarm/index.vue @@ -52,10 +52,10 @@ class="!w-240px" /> - + @@ -84,9 +84,9 @@ - - - - - - - - - - - - + {{ formData.sn }} + - - - - - - - - - - - - + {{ formData.gasType }} - - + + + {{ formatDate(formData.talarmStart) }} - + @@ -114,8 +64,9 @@ import { getIntDictOptions, DICT_TYPE } from '@/utils/dict' import { HandDetector } from '@/api/gas/handdetector' import { AlarmType } from '@/api/gas/alarmtype' import { Type } from '@/api/gas/gastype' +import { formatDate } from '@/utils/formatTime' /** GAS手持探测器警报 表单 */ -defineOptions({ name: 'HandAlarmForm' }) +defineOptions({ name: 'OfflineAlarmForm' }) const { t } = useI18n() // 国际化 const message = useMessage() // 消息弹窗 @@ -141,6 +92,7 @@ const props = defineProps({ const formData = ref({ id: undefined, detectorId: undefined, + name: '', sn: '', alarmType: undefined, alarmLevel: 0, @@ -151,24 +103,20 @@ const formData = ref({ picY: undefined, vAlarmFirst: undefined, vAlarmMaximum: undefined, - tAlarmStart: undefined, - tAlarmEnd: undefined, + talarmStart: '', + talarmEnd: '', status: 0, remark: undefined }) const formRules = reactive({ - detectorId: [{ required: true, message: '持有人不能为空', trigger: 'change' }], - alarmType: [{ required: true, message: '报警类型不能为空', trigger: 'change' }], - gasType: [{ required: true, message: '气体类型不能为空', trigger: 'change' }], - unit: [{ required: true, message: '单位不能为空', trigger: 'blur' }], - remark: [{ required: true, message: '备注不能为空', trigger: 'blur' }] + // remark: [{ required: true, message: '备注不能为空', trigger: 'blur' }] }) const formRef = ref() // 表单 Ref /** 打开弹窗 */ const open = async (type: string, id?: number) => { dialogVisible.value = true - dialogTitle.value = t('action.' + type) + dialogTitle.value = '离线报警' formType.value = type resetForm() // 修改时,设置数据 @@ -212,6 +160,7 @@ const resetForm = () => { formData.value = { id: undefined, detectorId: undefined, + name: '', sn: '', alarmType: undefined, alarmLevel: 0, @@ -222,28 +171,11 @@ const resetForm = () => { picY: undefined, vAlarmFirst: undefined, vAlarmMaximum: undefined, - tAlarmStart: undefined, - tAlarmEnd: undefined, + talarmStart: '', + talarmEnd: '', status: 0, remark: undefined } formRef.value?.resetFields() } - -/** 气体类型改变 */ -const handleGasTypeChange = (value: number) => { - formData.value.unit = props.gasTypes.find((item) => item.id === value)?.unit || '' -} - -/** 手持表id改变 */ -const handleDetectorIdChange = (value: number) => { - formData.value.sn = props.handDetector.find((item) => item.id === value)?.sn || '' -} - -/** 报警类型改变 */ -const handleAlarmTypeChange = (value: number) => { - formData.value.alarmLevel = props.alarmTypes.find((item) => item.id === value)?.level || 0 - formData.value.gasType = props.gasTypes.find((item) => item.id === value)?.name || '' - formData.value.unit = props.gasTypes.find((item) => item.id === value)?.unit || '' -} diff --git a/web/src/views/gas/offlineAlarm/index.vue b/web/src/views/gas/offlineAlarm/index.vue index 86b8bef..9ca9c6c 100644 --- a/web/src/views/gas/offlineAlarm/index.vue +++ b/web/src/views/gas/offlineAlarm/index.vue @@ -70,9 +70,9 @@ - + - +