From ae3b1db0a5c61411f2ecc9e997d26d3d49169e7b Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sat, 20 Dec 2025 09:37:06 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E3=80=90system=E3=80=91=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E7=99=BB=E5=BD=95=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/system/login-log/index.ts | 23 +++ src/pages-system/login-log/detail/index.vue | 78 ++++++++++ src/pages-system/login-log/index.vue | 147 ++++++++++++++++++ .../login-log/modules/search-form.vue | 144 +++++++++++++++++ src/pages/index/index.ts | 10 +- 5 files changed, 401 insertions(+), 1 deletion(-) create mode 100644 src/api/system/login-log/index.ts create mode 100644 src/pages-system/login-log/detail/index.vue create mode 100644 src/pages-system/login-log/index.vue create mode 100644 src/pages-system/login-log/modules/search-form.vue diff --git a/src/api/system/login-log/index.ts b/src/api/system/login-log/index.ts new file mode 100644 index 0000000..1d2555b --- /dev/null +++ b/src/api/system/login-log/index.ts @@ -0,0 +1,23 @@ +import type { PageParam, PageResult } from '@/http/types' +import { http } from '@/http/http' + +export interface LoginLog { + id?: number + traceId?: string + userId?: number + userType?: number + logType?: number + username?: string + userIp?: string + userAgent?: string + result?: number + createTime?: Date +} + +export function getLoginLogPage(params: PageParam) { + return http.get>('/system/login-log/page', params) +} + +export function getLoginLog(id: number) { + return http.get(`/system/login-log/get?id=${id}`) +} diff --git a/src/pages-system/login-log/detail/index.vue b/src/pages-system/login-log/detail/index.vue new file mode 100644 index 0000000..01dbcc7 --- /dev/null +++ b/src/pages-system/login-log/detail/index.vue @@ -0,0 +1,78 @@ + + + + + diff --git a/src/pages-system/login-log/index.vue b/src/pages-system/login-log/index.vue new file mode 100644 index 0000000..c0573ed --- /dev/null +++ b/src/pages-system/login-log/index.vue @@ -0,0 +1,147 @@ + + + + + diff --git a/src/pages-system/login-log/modules/search-form.vue b/src/pages-system/login-log/modules/search-form.vue new file mode 100644 index 0000000..13c7ac6 --- /dev/null +++ b/src/pages-system/login-log/modules/search-form.vue @@ -0,0 +1,144 @@ + + + diff --git a/src/pages/index/index.ts b/src/pages/index/index.ts index f447ba8..4145af0 100644 --- a/src/pages/index/index.ts +++ b/src/pages/index/index.ts @@ -80,11 +80,19 @@ const menuGroupsData: MenuGroup[] = [ { key: 'operateLog', name: '操作日志', - icon: 'rootlist', + icon: 'format-horizontal-align-top', url: '/pages-system/operate-log/index', iconColor: '#722ed1', permission: 'system:operate-log:query', }, + { + key: 'loginLog', + name: '登录日志', + icon: 'view-list', + url: '/pages-system/login-log/index', + iconColor: '#1677ff', + permission: 'system:login-log:query', + }, ], }, {