From 675de89c696a64de5a071a3e9011aef76df5c43d Mon Sep 17 00:00:00 2001 From: kakingone Date: Mon, 6 May 2024 17:18:04 +0800 Subject: [PATCH] --amend --- web/src/components/MjLogsTable.js | 34 +++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/web/src/components/MjLogsTable.js b/web/src/components/MjLogsTable.js index f22ddae..e86ee31 100644 --- a/web/src/components/MjLogsTable.js +++ b/web/src/components/MjLogsTable.js @@ -236,6 +236,31 @@ const renderTimestamp = (timestampInSeconds) => { return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; // 格式化输出 }; +// 修改renderDuration函数以包含颜色逻辑 +function renderDuration(submit_time, finishTime) { + // 确保startTime和finishTime都是有效的时间戳 + if (!submit_time || !finishTime) return 'N/A'; + + // 将时间戳转换为Date对象 + const start = new Date(submit_time); + const finish = new Date(finishTime); + + // 计算时间差(毫秒) + const durationMs = finish - start; + + // 将时间差转换为秒,并保留一位小数 + const durationSec = (durationMs / 1000).toFixed(1); + + // 设置颜色:大于60秒则为红色,小于等于60秒则为绿色 + const color = durationSec > 60 ? 'red' : 'green'; + + // 返回带有样式的颜色标签 + return ( + + {durationSec} 秒 + + ); +} const LogsTable = () => { const [isModalOpen, setIsModalOpen] = useState(false); @@ -248,6 +273,15 @@ const LogsTable = () => { return
{renderTimestamp(text / 1000)}
; }, }, + { + title: '花费时间', + dataIndex: 'finish_time', // 以finish_time作为dataIndex + key: 'finish_time', + render: (finish, record) => { + // 假设record.start_time是存在的,并且finish是完成时间的时间戳 + return renderDuration(record.submit_time, finish); + }, + }, { title: '渠道', dataIndex: 'channel_id',