package com.yj.bean;
// 定义包名，用于组织相关的类和接口

import java.util.List;
// 导入List接口，用于存储数据集合

/**
 * @author yj // 类的作者
 * @create 2020-08-25 9:27 // 类的创建时间
 */
public class Page <T>{
    // 定义一个泛型类Page，T表示该Page类可以持有任何类型的对象

    public static final Integer PAGE_SIZE = 4;
    // 定义一个常量，表示每页显示的数据条数
    //当前页
    private Integer pageNo;
    // 当前页码

    //总页码
    private Integer pageTotal;
    // 总页数

    //当前页显示数量
    private Integer pageSize = PAGE_SIZE;
    // 每页显示的数据条数，默认为常量PAGE_SIZE的值

    //总的记录数
    private Integer pageTotalCount;
    // 数据总条数

    //当前页数据
    private List<T> items;
    // 存储当前页的数据

    //分页条的请求地址
    private String url;
    // 分页条请求的URL地址

    // 获取分页条请求的URL地址
    public String getUrl() {
        return url;
    }

    // 设置分页条请求的URL地址
    public void setUrl(String url) {
        this.url = url;
    }

    // 获取当前页码
    public Integer getPageNo() {
        return pageNo;
    }

    // 获取总页数
    public Integer getPageTotal() {
        return pageTotal;
    }

    // 设置总页数
    public void setPageTotal(Integer pageTotal) {
        this.pageTotal = pageTotal;
    }

    // 获取每页显示的数据条数
    public Integer getPageSize() {
        return pageSize;
    }

    // 设置每页显示的数据条数
    public void setPageSize(Integer pageSize) {
        this.pageSize = pageSize;
    }

    // 获取数据总条数
    public Integer getPageTotalCount() {
        return pageTotalCount;
    }

    // 设置数据总条数
    public void setPageTotalCount(Integer pageTotalCount) {
        this.pageTotalCount = pageTotalCount;
    }

    // 获取当前页的数据
    public List<T> getItems() {
        return items;
    }

    // 设置当前页的数据
    public void setItems(List<T> items) {
        this.items = items;
    }

    // 设置当前页码
    public void setPageNo(Integer pageNo) {
        this.pageNo = pageNo;
    }

    // 重写toString方法，用于打印Page对象的详细信息
    @Override
    public String toString() {
        return "Page{" +
                "pageNo=" + pageNo +
                // 当前页码
                ", pageTotal=" + pageTotal +
                // 总页数
                ", pageSize=" + pageSize +
                // 每页显示的数据条数
                ", pageTotalCount=" + pageTotalCount +
                // 数据总条数
                ", items=" + items +
                // 当前页的数据
                ", url='" + url + '\'' +
                // 分页条请求的URL地址
                '}';
    }
}