|
@@ -43,7 +43,8 @@ public class QuizServiceImpl implements QuizService {
|
|
|
.stream()
|
|
.stream()
|
|
|
.map(questionDAO::findQuestionById)
|
|
.map(questionDAO::findQuestionById)
|
|
|
.collect(Collectors.toList());
|
|
.collect(Collectors.toList());
|
|
|
- Quiz quiz = quizDAO.findBySlideIdAndType(quizDTO.getSlideId(), quizDTO.getType())
|
|
|
|
|
|
|
+ Quiz quiz = quizDAO
|
|
|
|
|
+ .findBySlideIdAndType(quizDTO.getSlideId(), quizDTO.getType())
|
|
|
.orElseGet(() -> {
|
|
.orElseGet(() -> {
|
|
|
Quiz newQuiz = new Quiz();
|
|
Quiz newQuiz = new Quiz();
|
|
|
newQuiz.setSlideId(quizDTO.getSlideId());
|
|
newQuiz.setSlideId(quizDTO.getSlideId());
|
|
@@ -57,7 +58,8 @@ public class QuizServiceImpl implements QuizService {
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public QuizVO teacherGetQuiz(int slideId, QuizType quizType) {
|
|
public QuizVO teacherGetQuiz(int slideId, QuizType quizType) {
|
|
|
- return quizDAO.findBySlideIdAndType(slideId, quizType)
|
|
|
|
|
|
|
+ return quizDAO
|
|
|
|
|
+ .findBySlideIdAndType(slideId, quizType)
|
|
|
.map(QuizVO::new)
|
|
.map(QuizVO::new)
|
|
|
.orElseThrow(() -> HelperException.of(HelperException.ExceptionType.NOT_FOUND, "找不到测验"));
|
|
.orElseThrow(() -> HelperException.of(HelperException.ExceptionType.NOT_FOUND, "找不到测验"));
|
|
|
}
|
|
}
|
|
@@ -87,16 +89,19 @@ public class QuizServiceImpl implements QuizService {
|
|
|
// break;
|
|
// break;
|
|
|
// }
|
|
// }
|
|
|
|
|
|
|
|
- Quiz quiz = quizDAO.findBySlideIdAndType(slideId, quizType)
|
|
|
|
|
|
|
+ Quiz quiz = quizDAO
|
|
|
|
|
+ .findBySlideIdAndType(slideId, quizType)
|
|
|
.orElseThrow(() -> HelperException.of(HelperException.ExceptionType.NOT_FOUND, "找不到测验"));
|
|
.orElseThrow(() -> HelperException.of(HelperException.ExceptionType.NOT_FOUND, "找不到测验"));
|
|
|
- return submitAnswerDAO.findByQuizIdAndStudentId(quiz.getId(), 1)
|
|
|
|
|
|
|
+ return submitAnswerDAO
|
|
|
|
|
+ .findByQuizIdAndStudentId(quiz.getId(), 1)
|
|
|
.map(submitAnswer -> new StudentQuizVO(quiz, submitAnswer))
|
|
.map(submitAnswer -> new StudentQuizVO(quiz, submitAnswer))
|
|
|
.orElseGet(() -> new StudentQuizVO(quiz));
|
|
.orElseGet(() -> new StudentQuizVO(quiz));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public void answerQuiz(Integer studentId, SubmitAnswerDTO submitAnswerDTO) {
|
|
public void answerQuiz(Integer studentId, SubmitAnswerDTO submitAnswerDTO) {
|
|
|
- SubmitAnswer submitAnswer = submitAnswerDAO.findByQuizIdAndStudentId(submitAnswerDTO.getQuizId(), studentId)
|
|
|
|
|
|
|
+ SubmitAnswer submitAnswer = submitAnswerDAO
|
|
|
|
|
+ .findByQuizIdAndStudentId(submitAnswerDTO.getQuizId(), studentId)
|
|
|
.orElse(new SubmitAnswer());
|
|
.orElse(new SubmitAnswer());
|
|
|
Integer submitNum = submitAnswer.getSubmitNum();
|
|
Integer submitNum = submitAnswer.getSubmitNum();
|
|
|
submitAnswer.setSubmitNum((submitNum == null ? 0 : submitNum) + 1);
|
|
submitAnswer.setSubmitNum((submitNum == null ? 0 : submitNum) + 1);
|