feat: 前端表格高级筛选 (#100)

* chore: 🔨 css 基础单位

[skip ci]

* fix: 🐛 ca2263 System.Enum.GetValues<TEnum>()

[skip ci]

* feat:  前端表格高级筛选

[skip ci]
This commit is contained in:
2024-04-22 21:16:53 +08:00
committed by GitHub
parent 1dc953a2b2
commit 3847d6fdbb
175 changed files with 1901 additions and 630 deletions

View File

@ -11,6 +11,6 @@ public sealed record BulkReq<T> : DataAbstraction
/// </summary>
[Required(ErrorMessageResourceType = typeof(Ln), ErrorMessageResourceName = nameof(Ln.请求对象不能为空))]
[MinLength(1)]
[MaxLength(Numbers.BULK_REQ_LIMIT)]
[MaxLength(Numbers.MAX_LIMIT_BULK_REQ)]
public IEnumerable<T> Items { get; init; }
}

View File

@ -7,10 +7,10 @@ public sealed record PagedQueryReq<T> : QueryReq<T>, IPagedInfo
where T : DataAbstraction, new()
{
/// <inheritdoc cref="IPagedInfo.Page" />
[Range(1, Numbers.QUERY_MAX_PAGE_NO)]
[Range(1, Numbers.MAX_LIMIT_QUERY_PAGE_NO)]
public int Page { get; init; } = 1;
/// <inheritdoc cref="IPagedInfo.PageSize" />
[Range(1, Numbers.QUERY_MAX_PAGE_SIZE)]
public int PageSize { get; init; } = Numbers.QUERY_DEF_PAGE_SIZE;
[Range(1, Numbers.MAX_LIMIT_QUERY_PAGE_SIZE)]
public int PageSize { get; init; } = Numbers.DEF_PAGE_SIZE_QUERY;
}

View File

@ -9,8 +9,8 @@ public record QueryReq<T> : DataAbstraction
/// <summary>
/// 取前n条
/// </summary>
[Range(1, Numbers.QUERY_LIMIT)]
public int Count { get; init; } = Numbers.QUERY_LIMIT;
[Range(1, Numbers.MAX_LIMIT_QUERY)]
public int Count { get; init; } = Numbers.MAX_LIMIT_QUERY;
/// <summary>
/// 动态查询条件

View File

@ -21,6 +21,16 @@ public sealed record GetAllEntriesRsp : DataAbstraction
Data = data;
}
/// <summary>
/// 绝对过期时间
/// </summary>
public DateTime? AbsExpTime => AbsExp == -1 ? null : DateTime.FromBinary(AbsExp).ToLocalTime();
/// <summary>
/// 滑动过期时间
/// </summary>
public DateTime? SldExpTime => SldExp == -1 ? null : DateTime.FromBinary(SldExp).ToLocalTime();
/// <summary>
/// 绝对过期时间
/// </summary>

View File

@ -10,6 +10,10 @@ namespace NetAdmin.Domain.Dto.Sys.Config;
/// </summary>
public sealed record QueryConfigRsp : Sys_Config
{
/// <inheritdoc cref="IFieldCreatedTime.CreatedTime" />
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public override DateTime CreatedTime { get; init; }
/// <inheritdoc cref="IFieldEnabled.Enabled" />
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public override bool Enabled { get; init; }

View File

@ -17,7 +17,7 @@ public record CreateSiteMsgReq : Sys_SiteMsg
/// 部门编号列表
/// </summary>
[MinLength(1)]
[MaxLength(Numbers.BULK_REQ_LIMIT)]
[MaxLength(Numbers.MAX_LIMIT_BULK_REQ)]
public IReadOnlyCollection<long> DeptIds { get; init; }
/// <inheritdoc cref="Sys_SiteMsg.MsgType" />
@ -30,7 +30,7 @@ public record CreateSiteMsgReq : Sys_SiteMsg
/// 角色编号列表
/// </summary>
[MinLength(1)]
[MaxLength(Numbers.BULK_REQ_LIMIT)]
[MaxLength(Numbers.MAX_LIMIT_BULK_REQ)]
public IReadOnlyCollection<long> RoleIds { get; init; }
/// <inheritdoc cref="Sys_SiteMsg.Title" />
@ -42,6 +42,6 @@ public record CreateSiteMsgReq : Sys_SiteMsg
/// 用户编号列表
/// </summary>
[MinLength(1)]
[MaxLength(Numbers.BULK_REQ_LIMIT)]
[MaxLength(Numbers.MAX_LIMIT_BULK_REQ)]
public IReadOnlyCollection<long> UserIds { get; init; }
}

View File

@ -21,6 +21,10 @@ public sealed record QuerySiteMsgRsp : Sys_SiteMsg
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
public override DateTime CreatedTime { get; init; }
/// <inheritdoc cref="IFieldCreatedUser.CreatedUserName" />
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public override string CreatedUserName { get; init; }
/// <inheritdoc cref="Sys_SiteMsg.Depts" />
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public new IEnumerable<QueryDeptRsp> Depts { get; init; }

View File

@ -43,7 +43,7 @@ public abstract record CreateUpdateUserReq : Sys_User
/// </summary>
[Required(ErrorMessageResourceType = typeof(Ln), ErrorMessageResourceName = nameof(Ln.角色编号列表不能为空))]
[MinLength(1)]
[MaxLength(Numbers.BULK_REQ_LIMIT)]
[MaxLength(Numbers.MAX_LIMIT_BULK_REQ)]
public IReadOnlyCollection<long> RoleIds { get; init; }
/// <inheritdoc cref="Sys_User.Summary" />

View File

@ -21,7 +21,7 @@ public sealed record LoginRsp : DataAbstraction
public void SetToRspHeader()
{
// 设置响应报文头
App.HttpContext.Response.Headers[Chars.FLG_ACCESS_TOKEN] = AccessToken;
App.HttpContext.Response.Headers[Chars.FLG_X_ACCESS_TOKEN] = RefreshToken;
App.HttpContext.Response.Headers[Chars.FLG_HTTP_HEADER_VALUE_ACCESS_TOKEN] = AccessToken;
App.HttpContext.Response.Headers[Chars.FLG_HTTP_HEADER_KEY_X_ACCESS_TOKEN] = RefreshToken;
}
}