package org.springblade.smartapplication.vcdevice.beans;

import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.util.List;

/**
 * @author zwx
 * @create 2020/10/16 14:57
 */
@Setter
@Getter
public class VideoCloudPageInfo<T> implements Serializable {

    /**
     * 结果列表，T为列表对象类型
     */
    private List<T> list;

    /**
     * 每页几条记录
     */
    private Integer pageSize;

    /**
     * 当前页，从1开始
     */
    private Integer pageNum = 1;

    /**
     * 总页数
     */
    private Integer pages;

    /**
     * 总记录数
     */
    private Integer total;

    /**
     * 是否是第一页
     */
    private boolean isFirstPage;

    /**
     * 是否是最后一页
     */
    private boolean isLastPage;

    /**
     * 是否有下一页
     */
    private boolean hasNextPage;

    /**
     * 是否有上一页
     */
    private boolean hasPreviousPage;

    /**
     * 导航页码数
     */
    private Integer navigatePages;

    /**
     * 所有导航页号
     */
    private Integer[] navigatePageNums;

    /**
     * 当前页的数量
     */
    private Integer size;

    /**
     * 当前页面最后一个元素在数据库中的行号
     */
    private Integer endRow;

    /**
     * 当前页面第一个元素在数据库中的行号
     */
    private Integer startRow;
}
