diff --git a/jeecg-boot/jeecg-boot-module/jeecg-module-learn/src/main/java/org/jeecg/modules/biz/controller/CourseBizController.java b/jeecg-boot/jeecg-boot-module/jeecg-module-learn/src/main/java/org/jeecg/modules/biz/controller/CourseBizController.java index 541cb357..bb5e2fe6 100644 --- a/jeecg-boot/jeecg-boot-module/jeecg-module-learn/src/main/java/org/jeecg/modules/biz/controller/CourseBizController.java +++ b/jeecg-boot/jeecg-boot-module/jeecg-module-learn/src/main/java/org/jeecg/modules/biz/controller/CourseBizController.java @@ -33,8 +33,8 @@ import org.jeecg.modules.gen.resource.entity.Resource; import java.util.List; import java.util.Map; import java.util.stream.Collectors; +import java.util.Comparator; -import javax.annotation.PostConstruct; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -55,8 +55,27 @@ public class CourseBizController { public Result> queryCourseList( @RequestParam(value = "categoryId", required = false) String categoryId, @RequestParam(value = "difficulty", required = false) String difficulty, - @RequestParam(value = "subject", required = false) String topic) { + @RequestParam(value = "subject", required = false) String topic, + @RequestParam(value = "sort", required = false) String sort) { List list = courseBizService.getCourseList(categoryId, difficulty, topic); + if (sort != null) { + switch (sort) { + case "hottest": + list = list.stream() + .sorted(Comparator.comparing(Course::getEnrollCount, Comparator.nullsLast(Integer::compareTo)).reversed()) + .collect(Collectors.toList()); + break; + case "latest": + list = list.stream() + .sorted(Comparator.comparing(Course::getCreateTime, Comparator.nullsLast(java.util.Date::compareTo)).reversed()) + .collect(Collectors.toList()); + break; + case "recommend": + default: + // 不处理,直接返回 + break; + } + } return Result.OK(list); }