LFlow/LFlow.Base/Utils/PagedApiResult.cs

52 lines
1.2 KiB
C#
Raw Normal View History

namespace LFlow.Base.Utils;
/// <summary>
/// 返回结果包装 (分页)
/// </summary>
/// <typeparam name="T"></typeparam>
[Serializable]
public class PagedApiResult<T> : ApiResult<T> where T : class, new()
{
public new T? Data
{
get; set;
}
public int TotalCount
{
get; set;
}
public int PageIndex
{
get; set;
}
public int PageSize
{
get; set;
}
public PagedApiResult()
{
}
public PagedApiResult(bool success, string message, int code, T? data, int totalCount, int pageIndex, int pageSize)
{
Success = success;
Message = message;
Code = code;
Data = data;
TotalCount = totalCount;
PageIndex = pageIndex;
PageSize = pageSize;
}
public static PagedApiResult<T> SuccessResult(T? data, int totalCount, int pageIndex, int pageSize, string message = "操作成功", int code = 200)
{
return new PagedApiResult<T>(true, message, code, data, totalCount, pageIndex, pageSize);
}
public static new PagedApiResult<T>? FailResult(string message = "操作失败", int errCode = 500)
{
return new PagedApiResult<T>(false, message, errCode, null, 0, 0, 0);
}
}