|
@@ -71,9 +71,16 @@ public class ExamServiceImpl implements ExamService {
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public ExamListAndNumVO getExamList(int userId, int pageSize, int pageNum) {
|
|
public ExamListAndNumVO getExamList(int userId, int pageSize, int pageNum) {
|
|
|
- Page<Exam> examEntities = examDao.findAll(PageRequest.of(pageNum, pageSize, Sort.by(Sort.Direction.DESC, "startTime")));
|
|
|
|
|
- List<ExamVO> examVOList = examEntities.get()
|
|
|
|
|
- .map(ExamConvertor::convertToVO).collect(Collectors.toList());
|
|
|
|
|
|
|
+// Page<Exam> examEntities = examDao.findAll(PageRequest.of(pageNum, pageSize, Sort.by(Sort.Direction.DESC, "startTime")));
|
|
|
|
|
+// List<ExamVO> examVOList = examEntities.get()
|
|
|
|
|
+// .map(ExamConvertor::convertToVO).collect(Collectors.toList());
|
|
|
|
|
+// return new ExamListAndNumVO(examVOList, (int) examEntities.getTotalElements());
|
|
|
|
|
+ List<Exam> exams = examDao.findByIsHiddenFalse();
|
|
|
|
|
+ List<ExamVO> examVOList = exams.stream()
|
|
|
|
|
+ .sorted(Comparator.comparing(Exam::getStartTime).reversed())
|
|
|
|
|
+ .filter(exam -> !exam.getIsHidden())
|
|
|
|
|
+ .skip(pageSize * (pageNum - 1)).limit(pageSize)
|
|
|
|
|
+ .map(ExamConvertor::convertToJoinedVO).collect(Collectors.toList());
|
|
|
User user = userDao.findById(userId).orElse(null);
|
|
User user = userDao.findById(userId).orElse(null);
|
|
|
List<Exam> currentUserExams = user.getExams();
|
|
List<Exam> currentUserExams = user.getExams();
|
|
|
for (ExamVO examVO : examVOList) {
|
|
for (ExamVO examVO : examVOList) {
|
|
@@ -82,7 +89,7 @@ public class ExamServiceImpl implements ExamService {
|
|
|
examVO.setIsJoined(true);
|
|
examVO.setIsJoined(true);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- return new ExamListAndNumVO(examVOList, (int) examEntities.getTotalElements());
|
|
|
|
|
|
|
+ return new ExamListAndNumVO(examVOList, (int) exams.size());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -157,8 +164,10 @@ public class ExamServiceImpl implements ExamService {
|
|
|
List<Exam> exams = student.getExams();
|
|
List<Exam> exams = student.getExams();
|
|
|
|
|
|
|
|
return new ExamListAndNumVO(
|
|
return new ExamListAndNumVO(
|
|
|
- exams.stream().sorted(Comparator.comparing(Exam::getStartTime).reversed())
|
|
|
|
|
|
|
+ exams.stream()
|
|
|
|
|
+ .sorted(Comparator.comparing(Exam::getStartTime).reversed())
|
|
|
.filter(exam -> state == 0 || exam.getState().ordinal() + 1 == state)
|
|
.filter(exam -> state == 0 || exam.getState().ordinal() + 1 == state)
|
|
|
|
|
+ .filter(exam -> !exam.getIsHidden())
|
|
|
.skip(pageSize * (pageNum - 1)).limit(pageSize)
|
|
.skip(pageSize * (pageNum - 1)).limit(pageSize)
|
|
|
.map(ExamConvertor::convertToJoinedVO).collect(Collectors.toList()),
|
|
.map(ExamConvertor::convertToJoinedVO).collect(Collectors.toList()),
|
|
|
//输出总个数,用于前端分页
|
|
//输出总个数,用于前端分页
|