Skip to content

Commit

Permalink
fix: 修复在线用户列表等自定义分页查询 NPE 的问题
Browse files Browse the repository at this point in the history
  • Loading branch information
Charles7c committed Aug 31, 2023
1 parent e18692f commit 015ff55
Showing 1 changed file with 17 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ public class PageDataVO<V> implements Serializable {
*/
public static <T, V> PageDataVO<V> build(IPage<T> page, Class<V> targetClass) {
if (null == page) {
return null;
return empty();
}
PageDataVO<V> pageDataVO = new PageDataVO<>();
pageDataVO.setList(BeanUtil.copyToList(page.getRecords(), targetClass));
Expand All @@ -89,7 +89,7 @@ public static <T, V> PageDataVO<V> build(IPage<T> page, Class<V> targetClass) {
*/
public static <V> PageDataVO<V> build(IPage<V> page) {
if (null == page) {
return null;
return empty();
}
PageDataVO<V> pageDataVO = new PageDataVO<>();
pageDataVO.setList(page.getRecords());
Expand All @@ -111,11 +111,10 @@ public static <V> PageDataVO<V> build(IPage<V> page) {
* @return 分页信息
*/
public static <V> PageDataVO<V> build(int page, int size, List<V> list) {
PageDataVO<V> pageDataVO = new PageDataVO<>();
if (CollUtil.isEmpty(list)) {
return pageDataVO;
return empty();
}

PageDataVO<V> pageDataVO = new PageDataVO<>();
pageDataVO.setTotal(list.size());
// 对列表数据进行分页
int fromIndex = (page - 1) * size;
Expand All @@ -129,4 +128,17 @@ public static <V> PageDataVO<V> build(int page, int size, List<V> list) {
}
return pageDataVO;
}

/**
* 空分页信息
*
* @param <V>
* 列表数据类型
* @return 分页信息
*/
private static <V> PageDataVO<V> empty() {
PageDataVO<V> pageDataVO = new PageDataVO<>();
pageDataVO.setList(new ArrayList<>(0));
return pageDataVO;
}
}

0 comments on commit 015ff55

Please sign in to comment.