版本260406

This commit is contained in:
2026-04-06 22:04:05 +08:00
parent 7dc5e73af7
commit 0b150470be
216 changed files with 98993 additions and 33 deletions

View File

@@ -0,0 +1,343 @@
namespace OrpaonVision.Model.Security;
/// <summary>
/// 权限模型。
/// </summary>
public sealed class PermissionModel
{
/// <summary>
/// 权限ID。
/// </summary>
public Guid Id { get; set; }
/// <summary>
/// 权限编码。
/// </summary>
public string Code { get; set; } = string.Empty;
/// <summary>
/// 权限名称。
/// </summary>
public string Name { get; set; } = string.Empty;
/// <summary>
/// 权限描述。
/// </summary>
public string? Description { get; set; }
/// <summary>
/// 权限类型。
/// </summary>
public PermissionType Type { get; set; }
/// <summary>
/// 权限模块。
/// </summary>
public string Module { get; set; } = string.Empty;
/// <summary>
/// 权限动作。
/// </summary>
public string Action { get; set; } = string.Empty;
/// <summary>
/// 权限状态。
/// </summary>
public PermissionStatus Status { get; set; }
/// <summary>
/// 是否系统权限。
/// </summary>
public bool IsSystemPermission { get; set; }
/// <summary>
/// 父权限ID。
/// </summary>
public Guid? ParentId { get; set; }
/// <summary>
/// 排序序号。
/// </summary>
public int SortOrder { get; set; }
/// <summary>
/// 创建时间UTC
/// </summary>
public DateTime CreatedAtUtc { get; set; }
/// <summary>
/// 更新时间UTC
/// </summary>
public DateTime UpdatedAtUtc { get; set; }
/// <summary>
/// 创建人。
/// </summary>
public string CreatedBy { get; set; } = string.Empty;
/// <summary>
/// 更新人。
/// </summary>
public string UpdatedBy { get; set; } = string.Empty;
/// <summary>
/// 备注。
/// </summary>
public string? Remark { get; set; }
}
/// <summary>
/// 权限类型枚举。
/// </summary>
public enum PermissionType
{
/// <summary>
/// 页面权限。
/// </summary>
Page = 0,
/// <summary>
/// 功能权限。
/// </summary>
Function = 1,
/// <summary>
/// 数据权限。
/// </summary>
Data = 2,
/// <summary>
/// API权限。
/// </summary>
Api = 3
}
/// <summary>
/// 权限状态枚举。
/// </summary>
public enum PermissionStatus
{
/// <summary>
/// 启用。
/// </summary>
Enabled = 0,
/// <summary>
/// 禁用。
/// </summary>
Disabled = 1
}
/// <summary>
/// 角色权限关联模型。
/// </summary>
public sealed class RolePermissionModel
{
/// <summary>
/// 关联ID。
/// </summary>
public Guid Id { get; set; }
/// <summary>
/// 角色ID。
/// </summary>
public Guid RoleId { get; set; }
/// <summary>
/// 权限ID。
/// </summary>
public Guid PermissionId { get; set; }
/// <summary>
/// 授权时间UTC
/// </summary>
public DateTime GrantedAtUtc { get; set; }
/// <summary>
/// 授权人。
/// </summary>
public string GrantedBy { get; set; } = string.Empty;
/// <summary>
/// 是否启用。
/// </summary>
public bool IsEnabled { get; set; }
/// <summary>
/// 创建时间UTC
/// </summary>
public DateTime CreatedAtUtc { get; set; }
/// <summary>
/// 创建人。
/// </summary>
public string CreatedBy { get; set; } = string.Empty;
}
/// <summary>
/// 操作日志模型。
/// </summary>
public sealed class OperationLogModel
{
/// <summary>
/// 日志ID。
/// </summary>
public Guid Id { get; set; }
/// <summary>
/// 用户ID。
/// </summary>
public Guid UserId { get; set; }
/// <summary>
/// 用户名。
/// </summary>
public string Username { get; set; } = string.Empty;
/// <summary>
/// 操作类型。
/// </summary>
public OperationType OperationType { get; set; }
/// <summary>
/// 操作模块。
/// </summary>
public string Module { get; set; } = string.Empty;
/// <summary>
/// 操作描述。
/// </summary>
public string Description { get; set; } = string.Empty;
/// <summary>
/// 操作详情JSON。
/// </summary>
public string? OperationDetailJson { get; set; }
/// <summary>
/// 操作IP。
/// </summary>
public string? IpAddress { get; set; }
/// <summary>
/// 用户代理。
/// </summary>
public string? UserAgent { get; set; }
/// <summary>
/// 操作结果。
/// </summary>
public OperationResult Result { get; set; }
/// <summary>
/// 错误消息。
/// </summary>
public string? ErrorMessage { get; set; }
/// <summary>
/// 操作时间UTC
/// </summary>
public DateTime OperatedAtUtc { get; set; }
/// <summary>
/// 会话ID。
/// </summary>
public string? SessionId { get; set; }
/// <summary>
/// 请求ID。
/// </summary>
public string? RequestId { get; set; }
/// <summary>
/// 创建时间UTC
/// </summary>
public DateTime CreatedAtUtc { get; set; }
}
/// <summary>
/// 操作类型枚举。
/// </summary>
public enum OperationType
{
/// <summary>
/// 登录。
/// </summary>
Login = 0,
/// <summary>
/// 登出。
/// </summary>
Logout = 1,
/// <summary>
/// 创建。
/// </summary>
Create = 2,
/// <summary>
/// 更新。
/// </summary>
Update = 3,
/// <summary>
/// 删除。
/// </summary>
Delete = 4,
/// <summary>
/// 查询。
/// </summary>
Query = 5,
/// <summary>
/// 导入。
/// </summary>
Import = 6,
/// <summary>
/// 导出。
/// </summary>
Export = 7,
/// <summary>
/// 启用。
/// </summary>
Enable = 8,
/// <summary>
/// 禁用。
/// </summary>
Disable = 9,
/// <summary>
/// 发布。
/// </summary>
Publish = 10,
/// <summary>
/// 回滚。
/// </summary>
Rollback = 11
}
/// <summary>
/// 操作结果枚举。
/// </summary>
public enum OperationResult
{
/// <summary>
/// 成功。
/// </summary>
Success = 0,
/// <summary>
/// 失败。
/// </summary>
Failed = 1,
/// <summary>
/// 警告。
/// </summary>
Warning = 2
}