SortHelper.java 880 B

1234567891011121314151617181920212223242526272829303132333435
  1. package cn.efunbox.base.helper;
  2. import cn.efunbox.base.enums.BaseOrderEnum;
  3. import org.springframework.data.domain.Sort;
  4. import org.springframework.util.CollectionUtils;
  5. import java.util.ArrayList;
  6. import java.util.LinkedHashMap;
  7. import java.util.List;
  8. /**
  9. * SortHelper
  10. * Created by xusq on 2017/5/22.
  11. */
  12. public class SortHelper {
  13. public static Sort sortMap2Sort(LinkedHashMap<String, BaseOrderEnum> sortMap){
  14. if (CollectionUtils.isEmpty(sortMap)) {
  15. return null;
  16. }
  17. List<Sort.Order> sorts = new ArrayList<>();
  18. sortMap.forEach((prop, order) -> {
  19. if (BaseOrderEnum.ASC.equals(order)) {
  20. sorts.add(new Sort.Order(Sort.Direction.ASC, prop));
  21. } else {
  22. sorts.add(new Sort.Order(Sort.Direction.DESC, prop));
  23. }
  24. });
  25. return Sort.by(sorts);
  26. }
  27. }