123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace Ant.Service.Common
- {
- /// <summary>
- /// 分页逻辑处理类
- /// </summary>
- public class PageCollection
- {
- /// <summary>
- /// 总页数
- /// </summary>
- public int TotalPages { get; set; }
- /// <summary>
- /// 当前页面
- /// </summary>
- public int CurrentPage { get; set; }
- /// <summary>
- /// 每页的记录数
- /// </summary>
- public int OnePageSize { get; set; }
- /// <summary>
- /// 总记录数
- /// </summary>
- public long TotalRows { get; set; }
- /// <summary>
- /// 排序
- /// </summary>
- public string OrderBy { get; set; }
- /// <summary>
- /// 构造无参默认为最大数
- /// </summary>
- public PageCollection()
- {
- this.CurrentPage = 0;
- this.OnePageSize = 20;//默认最大行数20条
- }
- /// <summary>
- ///
- /// </summary>
- /// <param name="pageIndex"></param>
- /// <param name="pageSize"></param>
- /// <returns></returns>
- public static Tuple<int, int> GetSkipLimit(int pageIndex, int pageSize)
- {
- if (pageIndex <= 0 || pageSize <= 0)
- {
- return new Tuple<int, int>(0, 1);
- }
- return new Tuple<int, int>((pageIndex - 1) * pageSize, pageSize);
- }
- }
- /// <summary>
- /// 分页逻辑处理类 linq to entites
- /// </summary>
- public class PageInfo<TEntity> where TEntity : class
- {
- public PageInfo(int index, int pageSize, int count, List<TEntity> list,string url="")
- {
- Index = index;
- PageSize = pageSize;
- Count = count;
- List = list;
- Url = url;
- //计算数据条数从开始到结束的值
- if (count == 0)
- {
- BeginPage = 0;
- EndPage = 0;
- }
- else
- {
- int maxpage = count / pageSize;
- if (count % pageSize > 0)
- {
- maxpage++;
- }
- if (index >= maxpage)
- {
- index = maxpage;
- BeginPage = pageSize * index - pageSize + 1;
- EndPage = count;
- }
- else
- {
- BeginPage = pageSize * index - pageSize + 1;
- EndPage = pageSize * index;
- }
- }
- }
- public int Index { get; private set; }
- public int PageSize { get; private set; }
- public int Count { get; private set; }
- public List<TEntity> List { get; set; }
- public string Url { get; set; }
- public int BeginPage { get; private set; }
- public int EndPage { get; private set; }
- }
- /// <summary>
- /// 分页逻辑处理类 dynamic
- /// </summary>
- public class PageInfo
- {
- public PageInfo(int index, int pageSize, int count, dynamic list, string url = "")
- {
- Index = index;
- PageSize = pageSize;
- Count = count;
- List = list;
- Url = url;
- //计算数据条数从开始到结束的值
- if (count == 0)
- {
- BeginPage = 0;
- EndPage = 0;
- }
- else
- {
- int maxpage = count / pageSize;
- if (count % pageSize > 0)
- {
- maxpage++;
- }
- if (index >= maxpage)
- {
- index = maxpage;
- BeginPage = pageSize * index - pageSize + 1;
- EndPage = count;
- }
- else
- {
- BeginPage = pageSize * index - pageSize + 1;
- EndPage = pageSize * index;
- }
- }
- }
- /// <summary>
- /// 当前页
- /// </summary>
- public int Index { get; private set; }
- /// <summary>
- /// 每页显示的条数
- /// </summary>
- public int PageSize { get; private set; }
- /// <summary>
- /// 总记录数
- /// </summary>
- public int Count { get; private set; }
- /// <summary>
- /// 列表
- /// </summary>
- public dynamic List { get; private set; }
- public string Url { get; set; }
- /// <summary>
- /// 起始页
- /// </summary>
- public int BeginPage { get; private set; }
- /// <summary>
- /// 结束页
- /// </summary>
- public int EndPage { get; private set; }
- }
- /// <summary>
- /// Eazyui分页处理逻辑类
- /// </summary>
- public class PageEazyUi
- {
- public PageEazyUi(int _page, int _pagesize, int _total, object _rows)
- {
- page = _page;
- pagesize = _pagesize;
- total = _total;
- rows = _rows;
- }
- public int page { get; private set; }
- public int pagesize { get; private set; }
- public int total { get; private set; }
- public object rows { get; private set; }
- }
- }
|