Files
OrpaonVision/OrpaonVision.Core/Audit/Contracts/AuditLogDetailDto.cs
2026-04-06 22:04:05 +08:00

113 lines
2.7 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
namespace OrpaonVision.Core.Audit.Contracts;
/// <summary>
/// 审计日志详情。
/// </summary>
public sealed class AuditLogDetailDto
{
/// <summary>
/// 审计日志ID。
/// </summary>
public Guid AuditLogId { get; init; }
/// <summary>
/// 操作类型。
/// </summary>
public string ActionType { get; init; } = string.Empty;
/// <summary>
/// 操作模块。
/// </summary>
public string Module { get; init; } = string.Empty;
/// <summary>
/// 操作描述。
/// </summary>
public string Description { get; init; } = string.Empty;
/// <summary>
/// 操作者用户ID。
/// </summary>
public Guid? OperatorUserId { get; init; }
/// <summary>
/// 操作者用户名。
/// </summary>
public string OperatorUserName { get; init; } = string.Empty;
/// <summary>
/// 操作者IP地址。
/// </summary>
public string OperatorIpAddress { get; init; } = string.Empty;
/// <summary>
/// 操作者用户代理。
/// </summary>
public string OperatorUserAgent { get; init; } = string.Empty;
/// <summary>
/// 目标资源ID。
/// </summary>
public string? TargetResourceId { get; init; }
/// <summary>
/// 目标资源类型。
/// </summary>
public string? TargetResourceType { get; init; }
/// <summary>
/// 操作结果。
/// </summary>
public string Result { get; init; } = string.Empty;
/// <summary>
/// 操作时间UTC
/// </summary>
public DateTime OperatedAtUtc { get; init; }
/// <summary>
/// 操作持续时间(毫秒)。
/// </summary>
public long DurationMs { get; init; }
/// <summary>
/// 请求参数JSON
/// </summary>
public string RequestParametersJson { get; init; } = string.Empty;
/// <summary>
/// 响应数据JSON
/// </summary>
public string ResponseDataJson { get; init; } = string.Empty;
/// <summary>
/// 错误信息。
/// </summary>
public string ErrorMessage { get; init; } = string.Empty;
/// <summary>
/// 异常堆栈。
/// </summary>
public string ExceptionStackTrace { get; init; } = string.Empty;
/// <summary>
/// 会话ID。
/// </summary>
public string? SessionId { get; init; }
/// <summary>
/// 跟踪ID。
/// </summary>
public string TraceId { get; init; } = string.Empty;
/// <summary>
/// 风险级别。
/// </summary>
public string RiskLevel { get; init; } = string.Empty;
/// <summary>
/// 业务上下文JSON
/// </summary>
public string BusinessContextJson { get; init; } = string.Empty;
}