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; }