
top.lshaci.framework.mybatis.utils.PageUtils Maven / Gradle / Ivy
The newest version!
package top.lshaci.framework.mybatis.utils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import top.lshaci.framework.common.model.PageQuery;
import java.util.Objects;
/**
* PageUtil
*
* @author lshaci
* @since 1.0.8
*/
public class PageUtils {
/**
* 根据分页查询条件生成分页对象
*
* @param pageQuery 分页查询条件
* @return 分页对象
*/
public static Page of(PageQuery pageQuery) {
return of(pageQuery.getPgCt(), pageQuery.getPgSz());
}
/**
* 根据分页查询条件生成分页对象
*
* @param pageQuery 分页查询条件
* @param searchCountOnlyFirstPage true:只有第一页查询总条数; false所有页都查询总条数
* @return 分页对象
*/
public static Page of(PageQuery pageQuery, boolean searchCountOnlyFirstPage) {
Integer pgCt = pageQuery.getPgCt();
Integer pgSz = pageQuery.getPgSz();
if (searchCountOnlyFirstPage) {
return of(pgCt, pgSz, Objects.equals(pgCt, 1));
}
return of(pgCt, pgSz);
}
/**
* 根据当前页、条数生成分页对象(默认查询总条数)
*
* @param pgCt 当前页
* @param pgSz 条数
* @return 分页对象
*/
public static Page of(long pgCt, long pgSz) {
return of(pgCt, pgSz, true);
}
/**
* 根据当前页、条数、是否查询总数生成分页对象
*
* @param pgCt 当前页
* @param pgSz 条数
* @param searchCount 是否查询总数
* @return 分页对象
*/
public static Page of(long pgCt, long pgSz, boolean searchCount) {
return new Page<>(pgCt, pgSz, searchCount);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy