package com.lunhan.xxx.common;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
/**
|
* 分页结果
|
* @author linliu
|
* @date 2018-12-24
|
* @param <T> 数据包数据类型
|
*/
|
public class PagerResult<T> {
|
/**
|
* 页大小(每页返回的记录条数)
|
**/
|
private Number limit = 10;
|
/**
|
* 页号(第几页, 从1开始)
|
**/
|
private Number page = 1;
|
/**
|
* 记录总条数
|
**/
|
private Number total = 0L;
|
/**
|
* 上一次请求最后一条数据的id
|
*
|
**/
|
private Long lastId = 0L;
|
/**
|
* 数据包
|
**/
|
private List<T> list = new ArrayList<>();
|
|
/**
|
* 构造方法
|
*/
|
public PagerResult() {
|
|
}
|
|
/**
|
* 构造方法
|
* @param limit 页大小(每页显示记录数)
|
* @param page 页号(第几页, 从1开始)
|
* @param total 记录总条数
|
* @param list 数据包
|
*/
|
public PagerResult(Number limit, Number page, Number total, List<T> list) {
|
this.limit = limit;
|
this.page = page;
|
this.total = total;
|
this.list = list;
|
}
|
|
public Number getLimit() {
|
return limit;
|
}
|
public void setLimit(Number limit) {
|
this.limit = limit;
|
}
|
|
public Number getPage() {
|
return page;
|
}
|
|
public void setPage(Number page) {
|
this.page = page;
|
}
|
|
public Long getTotal() {
|
return total.longValue();
|
}
|
|
public void setTotal(Number total) {
|
this.total = total;
|
}
|
|
public List<T> getList() {
|
return list;
|
}
|
|
public void setList(List<T> list) {
|
this.list = list;
|
}
|
|
public Long getLastId() {
|
return lastId;
|
}
|
|
public void setLastId(Long lastId) {
|
this.lastId = lastId;
|
}
|
|
/**
|
* 总页数
|
*/
|
public Long getTotalPage() {
|
Long page = this.total.longValue() / this.limit.longValue();
|
if(this.total.longValue() % this.limit.longValue() != 0){
|
page++;
|
}
|
return page;
|
}
|
|
/**
|
* 是否还有上一页
|
*/
|
public boolean getIsHasPrePage() {
|
return this.getPage().longValue() > 1L;
|
}
|
|
/**
|
* 是否还有下一页
|
*/
|
public boolean getIsHasNextPage() {
|
return this.getPage().longValue() < this.getTotalPage();
|
}
|
}
|