namespace OrpaonVision.Core.Audit.Contracts;
///
/// 审计日志详情。
///
public sealed class AuditLogDetailDto
{
///
/// 审计日志ID。
///
public Guid AuditLogId { get; init; }
///
/// 操作类型。
///
public string ActionType { get; init; } = string.Empty;
///
/// 操作模块。
///
public string Module { get; init; } = string.Empty;
///
/// 操作描述。
///
public string Description { get; init; } = string.Empty;
///
/// 操作者用户ID。
///
public Guid? OperatorUserId { get; init; }
///
/// 操作者用户名。
///
public string OperatorUserName { get; init; } = string.Empty;
///
/// 操作者IP地址。
///
public string OperatorIpAddress { get; init; } = string.Empty;
///
/// 操作者用户代理。
///
public string OperatorUserAgent { get; init; } = string.Empty;
///
/// 目标资源ID。
///
public string? TargetResourceId { get; init; }
///
/// 目标资源类型。
///
public string? TargetResourceType { get; init; }
///
/// 操作结果。
///
public string Result { get; init; } = string.Empty;
///
/// 操作时间(UTC)。
///
public DateTime OperatedAtUtc { get; init; }
///
/// 操作持续时间(毫秒)。
///
public long DurationMs { get; init; }
///
/// 请求参数(JSON)。
///
public string RequestParametersJson { get; init; } = string.Empty;
///
/// 响应数据(JSON)。
///
public string ResponseDataJson { get; init; } = string.Empty;
///
/// 错误信息。
///
public string ErrorMessage { get; init; } = string.Empty;
///
/// 异常堆栈。
///
public string ExceptionStackTrace { get; init; } = string.Empty;
///
/// 会话ID。
///
public string? SessionId { get; init; }
///
/// 跟踪ID。
///
public string TraceId { get; init; } = string.Empty;
///
/// 风险级别。
///
public string RiskLevel { get; init; } = string.Empty;
///
/// 业务上下文(JSON)。
///
public string BusinessContextJson { get; init; } = string.Empty;
}