package com.mindskip.xzs.utility;
|
|
import com.github.pagehelper.PageInfo;
|
|
import java.util.function.Function;
|
import java.util.stream.Collectors;
|
|
/**
|
* @version 2.2.0
|
* @description: 分页工具
|
* Copyright (C), 2020-2021, 武汉思维跳跃科技有限公司
|
* @date 2021 /9/7 9:45
|
*/
|
public class PageInfoHelper {
|
|
/**
|
* 对象深拷贝
|
*
|
* @param <T> the type parameter
|
* @param <J> the type parameter
|
* @param source the source
|
* @param mapper the mapper
|
* @return the page info
|
*/
|
public static <T, J> PageInfo<J> copyMap(PageInfo<T> source, Function<? super T, ? extends J> mapper) {
|
PageInfo<J> newPage = new PageInfo<>();
|
newPage.setPageNum(source.getPageNum());
|
newPage.setPageSize(source.getPageSize());
|
newPage.setSize(source.getSize());
|
newPage.setStartRow(source.getStartRow());
|
newPage.setEndRow(source.getEndRow());
|
newPage.setTotal(source.getTotal());
|
newPage.setPages(source.getPages());
|
newPage.setList(source.getList().stream().map(mapper).collect(Collectors.toList()));
|
newPage.setPrePage(source.getPrePage());
|
newPage.setNextPage(source.getNextPage());
|
newPage.setIsFirstPage(source.isIsFirstPage());
|
newPage.setIsLastPage(source.isIsLastPage());
|
newPage.setHasPreviousPage(source.isHasPreviousPage());
|
newPage.setHasNextPage(source.isHasNextPage());
|
newPage.setNavigatePages(source.getNavigatePages());
|
newPage.setNavigatepageNums(source.getNavigatepageNums());
|
newPage.setNavigateFirstPage(source.getNavigateFirstPage());
|
newPage.setNavigateLastPage(source.getNavigateLastPage());
|
return newPage;
|
}
|
}
|