package com.ruoyi.common.core.utils; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.utils.bean.BeanUtils; import java.util.ArrayList; import java.util.List; /** * IPage 转IPage封装工具类 * * @author HJL */ public class PageCovertUtil { /** * 将PageInfo对象泛型中的Po对象转化为Vo对象 * * @param pageInfoPo PageInfo对象 * @param V类型 * @return 分页封装 */ public static IPage pageVoCovert(IPage

pageInfoPo, Class v) { // 创建Page对象,实际上是一个ArrayList类型的集合 try { if (pageInfoPo != null) { IPage page = new Page<>(pageInfoPo.getCurrent(), pageInfoPo.getSize()); page.setTotal(pageInfoPo.getTotal()); List

records = pageInfoPo.getRecords(); List list = new ArrayList<>(); for (P record : records) { if (record != null) { V newV = v.newInstance(); // 把原对象数据拷贝到新的对象 BeanUtils.copyProperties(record, newV); list.add(newV); } } page.setRecords(list); page.setTotal(pageInfoPo.getTotal()); return page; } } catch (Exception e) { e.printStackTrace(); } return null; } }