using NetAdmin.Domain.Dto.Sys.User; namespace NetAdmin.Domain.Dto.Sys.LoginLog; /// /// 响应:查询登录日志 /// public record QueryLoginLogRsp : Sys_LoginLog { /// /// 创建者客户端IP /// [JsonInclude] public new virtual string CreatedClientIp => base.CreatedClientIp?.ToIpV4(); /// /// 操作系统 /// [JsonInclude] public virtual string Os => UserAgentParser.Create(CreatedUserAgent)?.Platform; /// [JsonIgnore(Condition = JsonIgnoreCondition.Never)] public override DateTime CreatedTime { get; init; } /// [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] public override string CreatedUserAgent { get; init; } /// [JsonIgnore(Condition = JsonIgnoreCondition.Never)] public override int Duration { get; protected init; } /// [JsonIgnore(Condition = JsonIgnoreCondition.Never)] public override ErrorCodes ErrorCode { get; protected init; } /// [JsonIgnore(Condition = JsonIgnoreCondition.Never)] public override int HttpStatusCode { get; init; } /// [JsonIgnore(Condition = JsonIgnoreCondition.Never)] public override long Id { get; init; } /// [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] public override string LoginUserName { get; protected init; } /// public new virtual QueryUserRsp Owner { get; init; } /// [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] public override string RequestBody { get; protected init; } /// [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] public override string RequestHeaders { get; protected init; } /// [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] public override string RequestUrl { get; protected init; } /// [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] public override string ResponseBody { get; protected init; } /// [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] public override string ResponseHeaders { get; protected init; } /// [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] public override int? ServerIp { get; protected init; } }