package com.yqzx.common.domain.result;
|
|
import cn.hutool.core.convert.Convert;
|
import com.yqzx.common.util.BeanUtil;
|
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModelProperty;
|
import lombok.Data;
|
import lombok.NoArgsConstructor;
|
|
import java.io.Serializable;
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.Map;
|
|
// @formatter:off
|
/**
|
* .-~~~~~~~~~-._ _.-~~~~~~~~~-.
|
* __.' @Author ~. .~ 代码无Bug `.__
|
* .'// liu.q \./ (秘籍) \\`.
|
* .'// [916000612@qq.com] | 欲练神功 引刀自宫 \\`.
|
* .'// .-~"""""""~~~~-._ | _,-~~~~"""""""~-. \\`.
|
* .'//.-" 2019-04-09 `-. | .-' 11:35 "-.\\`.
|
* .'//______.============-.. \ | / ..-============.______\\`.
|
*.'______________________________\|/______________________________`.
|
*
|
* @Description :
|
*/
|
// @formatter:on
|
|
@Data
|
@NoArgsConstructor
|
@ApiModel("列表 返回结果列表封装")
|
public class PageBean<T> implements Serializable {
|
private static final long serialVersionUID = 1000L;
|
|
@ApiModelProperty("总记录数")
|
private Integer total; //总记录数
|
@ApiModelProperty("结果集")
|
private List<T> rows; //结果集
|
@ApiModelProperty("第几页")
|
private int pageNumber; //第几页
|
@ApiModelProperty("每页记录数")
|
private int pageSize; //每页记录数
|
@ApiModelProperty("总页数")
|
private int pages; // 总页数
|
@ApiModelProperty("当前页的数量<=pageSize")
|
private int size; //当前页的数量<=pageSize
|
|
public PageBean(Object obj) {
|
Map map = BeanUtil.objToMap(obj);
|
if(map!=null){
|
if(map.get("pageNum")!=null){
|
this.pageNumber = Convert.toInt(map.get("pageNum"));
|
}
|
if(map.get("pageSize")!=null){
|
this.pageSize = Convert.toInt(map.get("pageSize"));
|
}
|
if(map.get("total")!=null){
|
this.total = Convert.toInt(map.get("total"));
|
}
|
if(map.get("pages")!=null){
|
this.pages = Convert.toInt(map.get("pages"));
|
}
|
this.rows = obj == null ? new ArrayList<>() : (List<T>)obj;
|
this.size = this.rows.size();
|
}
|
}
|
}
|