package com.xunhong.erp.turbo.base.dto;

import com.alibaba.cola.dto.DTO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.List;

@Data
@EqualsAndHashCode(callSuper = true)
public class PageDTO<T> extends DTO {

	/**
	 * 查询数据列表
	 */
	private List<T> records;

	/**
	 * 总数
	 */
	private long total = 0;

	/**
	 * 每页显示条数，默认 10
	 */
	private long size = 10;

	/**
	 * 当前页
	 */
	private long current = 1;

	public static <T> PageDTO<T> of(IPage<T> page) {
		PageDTO<T> pageDTO = new PageDTO<T>();
		pageDTO.setCurrent(page.getCurrent());
		pageDTO.setSize(page.getSize());
		pageDTO.setTotal(page.getTotal());
		pageDTO.setRecords(page.getRecords());

		return pageDTO;
	}
}
