龚焕茏
2024-06-05 c93bdeb8ed528d015865f763dfc240cbad7aa00b
src/main/java/com/ycl/jxkg/listener/CalculateExamPaperAnswerListener.java
@@ -1,6 +1,10 @@
package com.ycl.jxkg.listener;
import com.ycl.jxkg.domain.*;
import com.ycl.jxkg.domain.entity.ExamPaper;
import com.ycl.jxkg.domain.entity.ExamPaperAnswer;
import com.ycl.jxkg.domain.entity.ExamPaperQuestionCustomerAnswer;
import com.ycl.jxkg.domain.entity.TextContent;
import com.ycl.jxkg.domain.enums.ExamPaperTypeEnum;
import com.ycl.jxkg.domain.enums.QuestionTypeEnum;
import com.ycl.jxkg.event.CalculateExamPaperAnswerCompleteEvent;
@@ -57,10 +61,12 @@
        ExamPaperAnswer examPaperAnswer = examPaperAnswerInfo.getExamPaperAnswer();
        List<ExamPaperQuestionCustomerAnswer> examPaperQuestionCustomerAnswers = examPaperAnswerInfo.getExamPaperQuestionCustomerAnswers();
        examPaperAnswerService.insertByFilter(examPaperAnswer);
        examPaperAnswerService.save(examPaperAnswer);
        examPaperQuestionCustomerAnswers.stream().filter(a -> QuestionTypeEnum.needSaveTextContent(a.getQuestionType())).forEach(d -> {
            TextContent textContent = new TextContent(d.getAnswer(), now);
            textContentService.insertByFilter(textContent);
            TextContent textContent = new TextContent();
            textContent.setContent(d.getAnswer());
            textContent.setCreateTime(now);
            textContentService.save(textContent);
            d.setTextContentId(textContent.getId());
            d.setAnswer(null);
        });
@@ -70,7 +76,7 @@
        examPaperQuestionCustomerAnswerService.insertList(examPaperQuestionCustomerAnswers);
        switch (ExamPaperTypeEnum.fromCode(examPaper.getPaperType())) {
            case Task: {
            case RandomOrder: {
                examCustomerAnswerService.insertOrUpdate(examPaper, examPaperAnswer, now);
                break;
            }