From 3753f59cf4a14850fc859d21f075f59880d9ac56 Mon Sep 17 00:00:00 2001 From: xiaojinfei <378266566@qq.com> Date: Sun, 4 Jan 2026 11:10:15 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E9=9B=86=E4=B8=AD=E5=91=8A=E8=AD=A6?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E5=AD=97=E6=AE=B5=E6=97=B6=E9=97=B4=E5=A4=84?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/dateUtil.ts | 7 +++-- src/views/warn/alarm/alarm.data.ts | 26 ++++++++++------ src/views/warn/alarm/index.vue | 48 +++++++++++++++++++++++++----- 3 files changed, 61 insertions(+), 20 deletions(-) diff --git a/src/utils/dateUtil.ts b/src/utils/dateUtil.ts index 1a183ba..3f9f73a 100644 --- a/src/utils/dateUtil.ts +++ b/src/utils/dateUtil.ts @@ -114,14 +114,15 @@ export function getDate(ms) { const hour = Math.floor(ms / (60 * 60 * 1000) - day * 24) const minute = Math.floor(ms / (60 * 1000) - day * 24 * 60 - hour * 60) const second = Math.floor(ms / 1000 - day * 24 * 60 * 60 - hour * 60 * 60 - minute * 60) + console.log(day, hour, minute, second) if (day > 0) - return `${day}天${hour}小时${minute}分钟` + return `${day}天${hour}小时${minute}分钟${second}秒` if (hour > 0) - return `${hour}小时${minute}分钟` + return `${hour}小时${minute}分钟${second}秒` if (minute > 0) - return `${minute}分钟` + return `${minute}分钟${second}秒` if (second > 0) return `${second}秒` diff --git a/src/views/warn/alarm/alarm.data.ts b/src/views/warn/alarm/alarm.data.ts index 9fc58e6..c1a1c19 100644 --- a/src/views/warn/alarm/alarm.data.ts +++ b/src/views/warn/alarm/alarm.data.ts @@ -2,9 +2,13 @@ import type { BasicColumn, FormSchema } from '@/components/Table' import {optionListApi, subSystemListApi} from "@/api/alert/model/select"; import {h, ref} from "vue"; import {systemSelectParams} from "@/api/alert/model/model/optionsModel"; -import {FileItem, UploadResultStatus} from "@/components/Upload/src/typing"; -import {Progress} from "ant-design-vue"; -import moment from "moment/moment"; +import {formatToDateTime, getDate} from "@/utils/dateUtil"; + +function toTimestamp(time: string): number { + if (!time) return 0 + // 兼容:2026-01-04T09:30:15 / 2026-01-04 09:30:15 + return new Date(time.replace('T', ' ')).getTime() +} const optionList = await optionListApi() const systemOptions = ref([]) @@ -117,7 +121,7 @@ export const columns: BasicColumn[] = [ { title: '报警名称', dataIndex: 'alarmName', - width: 180, + width: 200, fixed: 'left', // 将 JSX 改为 h 函数调用 customRender: ({ record }) => { @@ -172,13 +176,15 @@ export const columns: BasicColumn[] = [ }, { title: '预警时间', - dataIndex: 'createTime', + dataIndex: 'insertTime', width: 200, // 将 JSX 改为 h 函数调用 customRender: ({ record }) => { return h('div', [ - h('div', record.createTime), - h('div', '--'), + h('div', record.insertTime), + // h('div', '--'), + h('div', formatToDateTime(record.currentTime)) + ]); }, @@ -187,8 +193,10 @@ export const columns: BasicColumn[] = [ title: '持续时长', dataIndex: 'timeDiffStr', width: 90, - ellipsis: false, // ⭐ 关键 - + customRender: ({ record }) => { + const diffMs = record.currentTime - toTimestamp(record.insertTime) + return getDate(diffMs) + }, }, { title: '告警级别', diff --git a/src/views/warn/alarm/index.vue b/src/views/warn/alarm/index.vue index e9b2138..f97eaa3 100644 --- a/src/views/warn/alarm/index.vue +++ b/src/views/warn/alarm/index.vue @@ -1,6 +1,6 @@