|
|
@@ -283,16 +283,27 @@ public class ExamServiceImpl implements ExamService {
|
|
|
|
|
|
@Override
|
|
|
public List<ExamInfoVO> getRecommendExam() {
|
|
|
+ //todo 目前只是推荐最晚开始的开放测试
|
|
|
List<Exam> examList = examDao.findAllByIsHidden(0);
|
|
|
- if(examList.size() > 8) {
|
|
|
- return examList.stream()
|
|
|
- .sorted(Comparator.comparing(Exam::getStartTime).reversed())
|
|
|
- .map(ExamConvertor::convertToExamInfoVO).collect(Collectors.toList()).subList(0, 8);
|
|
|
- } else {
|
|
|
- return examList.stream()
|
|
|
- .sorted(Comparator.comparing(Exam::getStartTime).reversed())
|
|
|
- .map(ExamConvertor::convertToExamInfoVO).collect(Collectors.toList());
|
|
|
+ return examList.stream()
|
|
|
+ .filter(exam -> exam.getCourse().getIsPublic() == 1)
|
|
|
+ .sorted(Comparator.comparing(Exam::getStartTime).reversed()).limit(8)
|
|
|
+ .map(ExamConvertor::convertToExamInfoVO).collect(Collectors.toList());
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<ExamInfoVO> getRecommendExam(Integer courseId) {
|
|
|
+ Course course = courseDao.findById(courseId).orElse(null);
|
|
|
+ if(course == null) {
|
|
|
+ throw new MyServiceException("A0201", "无对应的课程");
|
|
|
+ } else if(course.getIsPublic() == 0) {
|
|
|
+ throw new MyServiceException("A0201", "对应课程是私有课程无法推荐");
|
|
|
}
|
|
|
+ //todo 目前只是推荐最晚开始的开放测试
|
|
|
+ List<Exam> examList = examDao.findAllByCourseId(courseId);
|
|
|
+ return examList.stream()
|
|
|
+ .sorted(Comparator.comparing(Exam::getStartTime).reversed()).limit(8)
|
|
|
+ .map(ExamConvertor::convertToExamInfoVO).collect(Collectors.toList());
|
|
|
}
|
|
|
|
|
|
@Override
|