using SqlSugar; namespace Model.Entity.System { /// /// 审计日志表(记录所有关键操作) /// [SugarTable("sys_audit_log")] public class AuditLogEntity : BaseEntity { [SugarColumn(ColumnName = "UserId", ColumnDescription = "操作人用户Id")] public long UserId { get; set; } [SugarColumn(ColumnName = "UserName", ColumnDescription = "操作人用户名", Length = 64, IsNullable = true)] public string? UserName { get; set; } [SugarColumn(ColumnName = "RoleId", ColumnDescription = "操作人角色Id(0=无/多角色)", DefaultValue = "0")] public long RoleId { get; set; } [SugarColumn(ColumnName = "RoleName", ColumnDescription = "操作人角色名称", Length = 100, IsNullable = true)] public string? RoleName { get; set; } [SugarColumn(ColumnName = "OperationType", ColumnDescription = "操作类型(Create/Update/Delete/Login/Command等)", Length = 32, IsNullable = false)] public string OperationType { get; set; } [SugarColumn(ColumnName = "OperationTarget", ColumnDescription = "操作对象(如 IotDevice/Gateway/User/Role)", Length = 64, IsNullable = false)] public string OperationTarget { get; set; } [SugarColumn(ColumnName = "TargetId", ColumnDescription = "操作对象Id(0=无具体Id)", DefaultValue = "0")] public long TargetId { get; set; } [SugarColumn(ColumnName = "DeviceId", ColumnDescription = "关联设备Id(0=无关设备)", DefaultValue = "0")] public long DeviceId { get; set; } [SugarColumn(ColumnName = "OldValue", ColumnDescription = "操作前值(JSON)", ColumnDataType = "text", IsNullable = true)] public string? OldValue { get; set; } [SugarColumn(ColumnName = "NewValue", ColumnDescription = "操作后值(JSON)", ColumnDataType = "text", IsNullable = true)] public string? NewValue { get; set; } [SugarColumn(ColumnName = "Ip", ColumnDescription = "操作IP", Length = 45, IsNullable = true)] public string? Ip { get; set; } [SugarColumn(ColumnName = "Description", ColumnDescription = "操作描述", Length = 500, IsNullable = true)] public string? Description { get; set; } [SugarColumn(ColumnName = "OperateTime", ColumnDescription = "操作时间", IsNullable = false)] public DateTime OperateTime { get; set; } } }