using NetAdmin.Domain.Dto.Sys.Api; using NetAdmin.Domain.Dto.Sys.RequestLogDetail; using NetAdmin.Domain.Dto.Sys.User; using HttpMethods = NetAdmin.Domain.Enums.HttpMethods; namespace NetAdmin.Domain.Dto.Sys.RequestLog; /// /// 响应:导出请求日志 /// public sealed record ExportRequestLogRsp : QueryRequestLogRsp { /// /// 接口路径 /// [CsvIndex(2)] [JsonInclude] [CsvName(nameof(Ln.接口路径))] public string ApiId => Api.Id; /// [CsvIndex(6)] [CsvIgnore(false)] [CsvName(nameof(Ln.客户端IP))] public override string CreatedClientIp => base.CreatedClientIp; /// /// 用户名 /// [CsvIndex(5)] [JsonInclude] [CsvName(nameof(Ln.用户名))] public string UserName => Owner?.UserName; /// [CsvIgnore] public override QueryApiRsp Api { get; init; } /// [CsvIgnore(false)] [CsvIndex(8)] [CsvName(nameof(Ln.创建时间))] public override DateTime CreatedTime { get; init; } /// [CsvIgnore] public override QueryRequestLogDetailRsp Detail { get; init; } /// [CsvIndex(4)] [CsvIgnore(false)] [CsvName(nameof(Ln.执行耗时))] public override int Duration { get; init; } /// [CsvIndex(3)] [CsvIgnore(false)] [CsvName(nameof(Ln.请求方式))] public override HttpMethods HttpMethod { get; init; } /// [CsvIndex(1)] [CsvIgnore(false)] [CsvName(nameof(Ln.响应状态码))] public override int HttpStatusCode { get; init; } /// [CsvIndex(0)] [CsvIgnore(false)] [CsvName(nameof(Ln.唯一编码))] public override long Id { get; init; } /// [CsvIgnore] public override QueryUserRsp Owner { get; init; } /// [CsvIndex(7)] [CsvIgnore(false)] [CsvName(nameof(Ln.跟踪标识))] public override Guid TraceId { get; init; } }