@Data
public class PageResponseUtils<T> {
private Page<T> page;
public static <T> PageResponseUtils<T> create(List<T> result, int count, int pageNo, int pageSize) {
PageResponseUtils<T> pageResponse = new PageResponseUtils<T>();
Page<T> page = new Page<T>();
page.setTotalCount(count);
page.setPageNo(pageNo);
page.setPageSize(pageSize);
page.setResult((result == null) ? Collections.emptyList() : result);
pageResponse.setPage(page);
return pageResponse;
}
@Data
public static class Page<T> {
private int totalCount;
private int pageNo;
private int pageSize;
private List<T> result;
}
public static boolean paging(Integer pageNum, Integer pageSize, int count) {
if ((count % pageSize == 0 && pageNum > count / pageSize) || pageNum - 1 > count / pageSize) {
return true;
}
return false;
}
}
@GetMapping("/home")
public PageResponseUtils<SKeyMgt> keyHomePage(@RequestParam(required = false) String mgtDepart, @RequestParam(required = false) String str,
@RequestParam(required = false, defaultValue = "0") Integer pageNum,
@RequestParam(required = false, defaultValue = "0") Integer pageSize){
PageHelper.startPage(pageNum, pageSize);
List<SKeyMgt> keyMgtList = keyMgtService.getKeyHomePage(mgtDepart, str);
Long total = new PageInfo<>(keyMgtList).getTotal();
return PageResponseUtils.create(keyMgtList, total.intValue(), pageNum, pageSize);
}