houzhongjian
2024-10-16 7da8f196dee8e3c526c009a4bc7f5983ece6bb97
提交 | 用户 | 时间
e7c126 1 package com.iailab.module.system.dal.dataobject.logger;
H 2
3 import com.iailab.framework.common.enums.UserTypeEnum;
4 import com.iailab.framework.mybatis.core.dataobject.BaseDO;
5 import com.baomidou.mybatisplus.annotation.KeySequence;
6 import com.baomidou.mybatisplus.annotation.TableId;
7 import com.baomidou.mybatisplus.annotation.TableName;
8 import lombok.Data;
9
10 /**
11  * 操作日志表
12  *
13  * @author iailab
14  */
15 @TableName(value = "system_operate_log", autoResultMap = true)
16 @KeySequence("system_operate_log_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
17 @Data
18 public class OperateLogDO extends BaseDO {
19
20     /**
21      * 日志主键
22      */
23     @TableId
24     private Long id;
25     /**
26      * 链路追踪编号
27      *
28      * 一般来说,通过链路追踪编号,可以将访问日志,错误日志,链路追踪日志,logger 打印日志等,结合在一起,从而进行排错。
29      */
30     private String traceId;
31     /**
32      * 用户编号
33      *
34      * 关联 MemberUserDO 的 id 属性,或者 AdminUserDO 的 id 属性
35      */
36     private Long userId;
37     /**
38      * 用户类型
39      *
40      * 关联 {@link  UserTypeEnum}
41      */
42     private Integer userType;
43     /**
44      * 操作模块类型
45      */
46     private String type;
47     /**
48      * 操作名
49      */
50     private String subType;
51     /**
52      * 操作模块业务编号
53      */
54     private Long bizId;
55     /**
56      * 日志内容,记录整个操作的明细
57      *
58      * 例如说,修改编号为 1 的用户信息,将性别从男改成女,将姓名从平台改成源码。
59      */
60     private String action;
61     /**
62      * 拓展字段,有些复杂的业务,需要记录一些字段 ( JSON 格式 )
63      *
64      * 例如说,记录订单编号,{ orderId: "1"}
65      */
66     private String extra;
67
68     /**
69      * 请求方法名
70      */
71     private String requestMethod;
72     /**
73      * 请求地址
74      */
75     private String requestUrl;
76     /**
77      * 用户 IP
78      */
79     private String userIp;
80     /**
81      * 浏览器 UA
82      */
83     private String userAgent;
84
85 }