From b64357a5951b2fc072e8da6b582a8f3734ba0a01 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: Wed, 8 Apr 2026 12:40:11 +0800
Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=93=8D?=
=?UTF-8?q?=E4=BD=9C=E6=97=A5=E5=BF=97=20=E8=A1=A5=E9=BD=90=E4=B8=80?=
=?UTF-8?q?=E4=BA=9B=E5=BF=85=E8=A6=81=E7=9A=84=E8=AE=B0=E5=BD=95=E6=95=B0?=
=?UTF-8?q?=E6=8D=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/api/monitor/operlog/types.ts | 18 +++++++++
src/views/monitor/operlog/index.vue | 38 ++++++++++++++++++-
.../monitor/operlog/oper-info-dialog.vue | 9 ++++-
3 files changed, 62 insertions(+), 3 deletions(-)
diff --git a/src/api/monitor/operlog/types.ts b/src/api/monitor/operlog/types.ts
index 10f65c7..ad889a2 100644
--- a/src/api/monitor/operlog/types.ts
+++ b/src/api/monitor/operlog/types.ts
@@ -2,6 +2,12 @@ export interface OperLogQuery extends PageQuery {
operIp: string;
title: string;
operName: string;
+ userId: string;
+ deptId: string;
+ clientKey: string;
+ deviceType: string;
+ browser: string;
+ os: string;
businessType: string;
status: string;
orderByColumn: string;
@@ -18,7 +24,13 @@ export interface OperLogVO extends BaseEntity {
requestMethod: string;
operatorType: number;
operName: string;
+ userId: string | number;
+ deptId: string | number;
deptName: string;
+ clientKey: string;
+ deviceType: string;
+ browser: string;
+ os: string;
operUrl: string;
operIp: string;
operLocation: string;
@@ -40,7 +52,13 @@ export interface OperLogForm {
requestMethod: string;
operatorType: number;
operName: string;
+ userId: string | number | undefined;
+ deptId: string | number | undefined;
deptName: string;
+ clientKey: string;
+ deviceType: string;
+ browser: string;
+ os: string;
operUrl: string;
operIp: string;
operLocation: string;
diff --git a/src/views/monitor/operlog/index.vue b/src/views/monitor/operlog/index.vue
index f6fcc4a..25417b0 100644
--- a/src/views/monitor/operlog/index.vue
+++ b/src/views/monitor/operlog/index.vue
@@ -25,6 +25,20 @@
@keyup.enter="handleQuery"
/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -124,6 +138,14 @@
:sort-orders="['descending', 'ascending']"
/>
+
+
+
+
+
+
+
+
@@ -189,7 +211,9 @@ import { OperLogForm, OperLogQuery, OperLogVO } from '@/api/monitor/operlog/type
import OperInfoDialog from './oper-info-dialog.vue';
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
-const { sys_oper_type, sys_common_status } = toRefs(proxy?.useDict('sys_oper_type', 'sys_common_status'));
+const { sys_oper_type, sys_common_status, sys_device_type } = toRefs(
+ proxy?.useDict('sys_oper_type', 'sys_common_status', 'sys_device_type')
+);
const operlogList = ref([]);
const loading = ref(true);
@@ -214,7 +238,13 @@ const data = reactive>({
requestMethod: '',
operatorType: 0,
operName: '',
+ userId: undefined,
+ deptId: undefined,
deptName: '',
+ clientKey: '',
+ deviceType: '',
+ browser: '',
+ os: '',
operUrl: '',
operIp: '',
operLocation: '',
@@ -231,6 +261,12 @@ const data = reactive>({
operIp: '',
title: '',
operName: '',
+ userId: '',
+ deptId: '',
+ clientKey: '',
+ deviceType: '',
+ browser: '',
+ os: '',
businessType: '',
status: '',
orderByColumn: defaultSort.value.prop,
diff --git a/src/views/monitor/operlog/oper-info-dialog.vue b/src/views/monitor/operlog/oper-info-dialog.vue
index e470e50..02f8daf 100644
--- a/src/views/monitor/operlog/oper-info-dialog.vue
+++ b/src/views/monitor/operlog/oper-info-dialog.vue
@@ -16,7 +16,9 @@
- {{ info.operName }} / {{ info.deptName }} / {{ info.operIp }} / {{ info.operLocation }}
+ {{ info.operName }} / {{ info.deptName }} / {{ info.clientKey || '-' }} /
+ {{ deviceTypeFormat(info.deviceType) || '-' }} / {{ info.browser || '-' }} / {{ info.os || '-' }} /
+ {{ info.operIp }} / {{ info.operLocation }}
@@ -98,10 +100,13 @@ function formatToJsonObject(data: string) {
* 字典信息
*/
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
-const { sys_oper_type } = toRefs(proxy?.useDict('sys_oper_type'));
+const { sys_oper_type, sys_device_type } = toRefs(proxy?.useDict('sys_oper_type', 'sys_device_type'));
const typeFormat = (row: OperLogForm) => {
return proxy?.selectDictLabel(sys_oper_type.value, row.businessType);
};
+const deviceTypeFormat = (deviceType: string) => {
+ return proxy?.selectDictLabel(sys_device_type.value, deviceType);
+};