using MediatR;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FlexJobApi.Core
{
///
/// 查询分页列表
///
///
///
public abstract class PagedListQuery : IRequest
where TResult : PagedListQueryResult, new()
where TItem : class, new()
{
protected PagedListQuery()
{
PageModel = new PagedListQueryPageModel();
}
///
/// 分页信息
///
public PagedListQueryPageModel PageModel { get; set; }
}
///
/// 查询分页列表-分页信息
///
public class PagedListQueryPageModel
{
public PagedListQueryPageModel()
{
Page = 1;
Rows = 40;
OrderInput = [];
}
///
/// 行数
///
public int Rows { get; set; }
///
/// 页码
///
public int Page { get; set; }
///
/// 排序
///
public List OrderInput { get; set; }
}
///
/// 查询分页列表-分页信息-排序信息
///
public class PagedListQueryPageModelOrderInput
{
///
/// 属性
///
public string Property { get; set; }
///
/// 排序
///
public EnumPagedListOrder Order { get; set; }
}
public interface IPagedListQueryResult
where TItem : class, new()
{
PagedListQueryResultPageModel PageModel { get; set; }
List Data { get; set; }
}
///
/// 查询分页列表-结果
///
///
public class PagedListQueryResult : IPagedListQueryResult
where TItem : class, new()
{
public PagedListQueryResult()
{
Data = [];
}
///
/// 分页信息
///
public PagedListQueryResultPageModel PageModel { get; set; }
///
/// 数据
///
public List Data { get; set; }
}
///
/// 查询分页列表-分页信息
///
public class PagedListQueryResultPageModel : PagedListQueryPageModel
{
///
/// 总数
///
public int TotalCount { get; set; }
///
/// 页数
///
public int TotalPage { get; set; }
}
}