Skip to content

Commit

Permalink
支持extjs的排序
Browse files Browse the repository at this point in the history
  • Loading branch information
phoenix committed Aug 21, 2015
1 parent 3c2fd10 commit c2bcd4a
Showing 1 changed file with 19 additions and 2 deletions.
21 changes: 19 additions & 2 deletions src/main/java/edu/scup/web/util/ext/ExtJsUtils.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package edu.scup.web.util.ext;

import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.data.domain.PageRequest;
Expand Down Expand Up @@ -29,14 +30,30 @@ public static Pageable getPage(HttpServletRequest request) {
size = Integer.parseInt(request.getParameter("limit"));
} catch (NumberFormatException ignored) {
}
String sortString = request.getParameter("sort");
if (StringUtils.isNotBlank(sortString)) {
List<Sort.Order> orders = new ArrayList<>();
try {
mapper.readTree(sortString).forEach(jsonNode -> {
Sort.Order order = new Sort.Order(Sort.Direction.fromString(jsonNode.get("direction").asText()), jsonNode.get("property").asText());
orders.add(order);
});
} catch (IOException ignored) {
}
Sort sort = new Sort(orders);
return new PageRequest(page, size, sort);
}

return new PageRequest(page, size);
}

public static PageRequest getPage(HttpServletRequest request, Sort.Direction direction, String... properties) {
public static Pageable getPage(HttpServletRequest request, Sort.Direction direction, String... properties) {
Pageable pageable = getPage(request);
if (pageable.getSort() == null) {
return new PageRequest(pageable.getPageNumber(), pageable.getPageSize(), direction, properties);
}

return new PageRequest(pageable.getPageNumber(), pageable.getPageSize(), direction, properties);
return pageable;
}

public static List<SearchFilter> getFilters(HttpServletRequest request) {
Expand Down

0 comments on commit c2bcd4a

Please sign in to comment.