123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- package cn.cslg.pas.common;
- import com.github.pagehelper.PageInfo;
- import lombok.Data;
- import java.io.Serializable;
- import java.util.List;
- /**
- * 把封装着分页查询结果和分页信息的PageInfo类转换为本类并返回给前端(本类应和Page\PageInfo一样,既包含分页查询结果又包含分页信息)
- *
- * @Author chenyu
- * @Date 2023/2/16
- */
- @Data
- public class JsonPage implements Serializable {
- /**
- * 总页数
- */
- private Integer totalCurrents;
- /**
- * 总条数
- */
- private Long totalSizes;
- /**
- * 当前页 (页码)
- */
- private Integer current;
- /**
- * 每页条数
- */
- private Integer size;
- /**
- * 分页查询结果
- */
- private List<Object> list;
- // 下面要编写一个能够将PageInfo类型对象转换为JsonPage类型对象的方法
- // 如果需要将其他类型对象转换为JsonPage(例如SpringData的Page类型),另外编写方法即可
- public static JsonPage restPage(PageInfo pageInfo) {
- // 所谓转换的意思就是将pageInfo对象中的信息,赋值给JsonPage类型
- JsonPage result = new JsonPage();
- // 因为PageInfo和JsonPage同名属性较少,所以手动赋值
- result.setTotalSizes(pageInfo.getTotal());
- result.setTotalCurrents(pageInfo.getPages());
- result.setCurrent(pageInfo.getPageNum());
- result.setSize(pageInfo.getPageSize());
- // 别忘了最后的分页数据
- result.setList(pageInfo.getList());
- // 最后返回JsonPage类型对象result
- return result;
- }
- }
|