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; } } }