update 优化分页工具排序处理

This commit is contained in:
疯狂的狮子li 2021-09-03 17:06:18 +08:00
parent 4dd235124d
commit 067029eebe

View File

@ -61,14 +61,8 @@ public class PageUtils {
pageNum = DEFAULT_PAGE_NUM; pageNum = DEFAULT_PAGE_NUM;
} }
PagePlus<T, K> page = new PagePlus<>(pageNum, pageSize); PagePlus<T, K> page = new PagePlus<>(pageNum, pageSize);
if (StringUtils.isNotBlank(orderByColumn)) { OrderItem orderItem = buildOrderItem(orderByColumn, isAsc);
String orderBy = SqlUtil.escapeOrderBySql(orderByColumn); page.addOrder(orderItem);
if ("asc".equals(isAsc)) {
page.addOrder(OrderItem.asc(orderBy));
} else if ("desc".equals(isAsc)) {
page.addOrder(OrderItem.desc(orderBy));
}
}
return page; return page;
} }
@ -89,23 +83,29 @@ public class PageUtils {
if (pageNum <= 0) { if (pageNum <= 0) {
pageNum = DEFAULT_PAGE_NUM; pageNum = DEFAULT_PAGE_NUM;
} }
Page<T> page = new Page<>(pageNum, pageSize);
OrderItem orderItem = buildOrderItem(orderByColumn, isAsc);
page.addOrder(orderItem);
return page;
}
private static OrderItem buildOrderItem(String orderByColumn, String isAsc) {
// 兼容前端排序类型 // 兼容前端排序类型
if ("ascending".equals(isAsc)) { if ("ascending".equals(isAsc)) {
isAsc = "asc"; isAsc = "asc";
} else if ("descending".equals(isAsc)) { } else if ("descending".equals(isAsc)) {
isAsc = "desc"; isAsc = "desc";
} }
Page<T> page = new Page<>(pageNum, pageSize);
if (StringUtils.isNotBlank(orderByColumn)) { if (StringUtils.isNotBlank(orderByColumn)) {
String orderBy = SqlUtil.escapeOrderBySql(orderByColumn); String orderBy = SqlUtil.escapeOrderBySql(orderByColumn);
orderBy = StringUtils.toUnderScoreCase(orderBy); orderBy = StringUtils.toUnderScoreCase(orderBy);
if ("asc".equals(isAsc)) { if ("asc".equals(isAsc)) {
page.addOrder(OrderItem.asc(orderBy)); return OrderItem.asc(orderBy);
} else if ("desc".equals(isAsc)) { } else if ("desc".equals(isAsc)) {
page.addOrder(OrderItem.desc(orderBy)); return OrderItem.desc(orderBy);
} }
} }
return page; return null;
} }
public static <T, K> TableDataInfo<K> buildDataInfo(PagePlus<T, K> page) { public static <T, K> TableDataInfo<K> buildDataInfo(PagePlus<T, K> page) {