/* * @Author: ZhaoYing * @Date: 2026-03-24 15:41:20 * @Last Modified by: ZhaoYing * @Last Modified time: 2026-03-25 16:20:32 */ import { type FC, useRef } from 'react'; import { useTranslation } from 'react-i18next'; import { useParams } from 'react-router-dom'; import { Flex, Button, Form } from 'antd'; import type { ColumnsType } from 'antd/es/table'; import { getAppLogsUrl } from '@/api/application'; import Table from '@/components/Table' import { formatDateTime } from '@/utils/format'; import type { LogItem, LogDetailModalRef } from './types' import LogDetailModal from './components/LogDetailModal' import SearchInput from '@/components/SearchInput' const Statistics: FC = () => { const { t } = useTranslation(); const { id } = useParams(); const logDetailRef = useRef(null); const [form] = Form.useForm(); const values = Form.useWatch([], form); const handleViewDetail = (item: LogItem) => { logDetailRef.current?.handleOpen(item); } /** Table column configuration */ const columns: ColumnsType = [ { title: t('application.logTitle'), dataIndex: 'title', key: 'title', className: 'rb:text-[#212332]' }, { title: t('application.created_at'), dataIndex: 'created_at', key: 'created_at', render: (createdAt: string) => formatDateTime(createdAt, 'YYYY-MM-DD HH:mm:ss'), }, { title: t('common.updated_at'), dataIndex: 'updated_at', key: 'updated_at', render: (updatedAt: string) => updatedAt ? formatDateTime(updatedAt, 'YYYY-MM-DD HH:mm:ss') : '-', }, { title: t('common.operation'), key: 'action', render: (_, record) => ( ), }, ]; return (
apiUrl={getAppLogsUrl(id || '')} apiParams={{ is_draft: false, ...(values ?? {}) }} columns={columns} rowKey="id" isScroll={true} scrollY="calc(100vh - 242px)" />
); } export default Statistics;