package com.rongyichuang.common.dto; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; /** * 分页请求DTO */ public class PageRequest { private Integer page = 0; private Integer size = 10; private String sort; private String order = "desc"; public PageRequest() {} public PageRequest(Integer page, Integer size) { this.page = page; this.size = size; } /** * 转换为Spring Data的Pageable对象 */ public Pageable toPageable() { Sort sortObj = Sort.unsorted(); if (sort != null && !sort.isEmpty()) { Sort.Direction direction = "asc".equalsIgnoreCase(order) ? Sort.Direction.ASC : Sort.Direction.DESC; sortObj = Sort.by(direction, sort); } return org.springframework.data.domain.PageRequest.of(page, size, sortObj); } // Getters and Setters public Integer getPage() { return page; } public void setPage(Integer page) { this.page = page; } public Integer getSize() { return size; } public void setSize(Integer size) { this.size = size; } public String getSort() { return sort; } public void setSort(String sort) { this.sort = sort; } public String getOrder() { return order; } public void setOrder(String order) { this.order = order; } }