From d26274d89d377067c1e2648192cffbf89464b361 Mon Sep 17 00:00:00 2001
From: wsj <593216709@qq.com>
Date: Wed, 28 Oct 2026 23:34:32 +0800
Subject: [PATCH] feat: 拆包
---
src/pages/platform/audit-logs/index.tsx | 64 ++++++++++++++++++++++++++++++++
1 files changed, 64 insertions(+), 0 deletions(-)
diff --git a/src/pages/platform/audit-logs/index.tsx b/src/pages/platform/audit-logs/index.tsx
new file mode 100644
index 0000000..9374cfe
--- /dev/null
+++ b/src/pages/platform/audit-logs/index.tsx
@@ -0,0 +1,64 @@
+import { useCallback, useMemo, useState } from 'react';
+import { ProTable } from '@ant-design/pro-components';
+import { createAuditLogColumns } from './columns';
+import AuditLogDetailDrawer from './components/AuditLogDetailDrawer';
+import { getAuditLogList } from './service';
+import type { AuditLogListQuery, AuditLogVO } from './types';
+
+const AuditLogs = () => {
+ const [detail, setDetail] = useState<AuditLogVO | null>(null);
+
+ const openDetail = useCallback((record: AuditLogVO) => {
+ setDetail(record);
+ }, []);
+
+ const closeDetail = useCallback(() => {
+ setDetail(null);
+ }, []);
+
+ const columns = useMemo(() => createAuditLogColumns({ onDetail: openDetail }), [openDetail]);
+
+ const fetchList = useCallback(
+ (params: AuditLogListQuery) =>
+ getAuditLogList({
+ page: params.current,
+ size: params.pageSize,
+ module: params.module,
+ action: params.action,
+ entityType: params.entityType,
+ resultStatus: params.resultStatus,
+ operatorId: params.operatorId,
+ start: params.start,
+ end: params.end,
+ }).then((result) => ({
+ data: result.records ?? [],
+ total: result.total ?? 0,
+ success: true,
+ })),
+ [],
+ );
+
+ return (
+ <div className="audit-log-page">
+ <ProTable<AuditLogVO, AuditLogListQuery>
+ rowKey="logId"
+ columns={columns}
+ cardProps={{ bodyStyle: { padding: 20 } }}
+ search={{ labelWidth: 'auto', defaultCollapsed: false }}
+ scroll={{ x: 1430 }}
+ options={false}
+ pagination={{
+ defaultPageSize: 10,
+ showSizeChanger: true,
+ hideOnSinglePage: false,
+ showTotal: (total) => `共 ${total} 条`,
+ }}
+ request={fetchList}
+ />
+
+ <AuditLogDetailDrawer open={detail !== null} record={detail} onClose={closeDetail} />
+ </div>
+ );
+};
+
+export default AuditLogs;
--
Gitblit v1.9.3