龚焕茏
2024-07-03 3ec909b27b3eba956aa9d00cc7a94c179bd04bbf
src/main/java/com/mindskip/xzs/service/impl/ExamTemplatesServiceImpl.java
@@ -5,10 +5,7 @@
import com.mindskip.xzs.domain.*;
import com.mindskip.xzs.domain.vo.ExamTemplatesVO;
import com.mindskip.xzs.repository.*;
import com.mindskip.xzs.service.DepartmentService;
import com.mindskip.xzs.service.ExamPaperService;
import com.mindskip.xzs.service.ExamTemplatesService;
import com.mindskip.xzs.service.ExamTemplatesUserCountService;
import com.mindskip.xzs.service.*;
import com.mindskip.xzs.utility.convert.ExamTemplatesClassConvert;
import com.mindskip.xzs.viewmodel.admin.exam.ExamPaperEditRequestVM;
import com.mindskip.xzs.viewmodel.admin.exam.ExamPaperEditRequestVO;
@@ -20,10 +17,7 @@
import org.springframework.util.CollectionUtils;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
@Service
@@ -37,8 +31,9 @@
    private final ExamPaperService examPaperService;
    private final ExamTemplatesUserCountService examTemplatesUserCountService;
    private final ExamTemplatesUserMapper examTemplatesUserMapper;
    private final ExamTemplatesConfigService examTemplatesConfigService;
    public ExamTemplatesServiceImpl(BaseMapper<ExamTemplates> baseMapper, ExamTemplatesMapper examTemplatesMapper, ExamTemplatesQuestionMapper examTemplatesQuestionMapper, ExamTemplatesSubjectMapper examTemplatesSubjectMapper, DepartmentService departmentService, ExamPaperService examPaperService, ExamTemplatesUserCountService examTemplatesUserCountService, ExamTemplatesUserMapper examTemplatesUserMapper) {
    public ExamTemplatesServiceImpl(BaseMapper<ExamTemplates> baseMapper, ExamTemplatesMapper examTemplatesMapper, ExamTemplatesQuestionMapper examTemplatesQuestionMapper, ExamTemplatesSubjectMapper examTemplatesSubjectMapper, DepartmentService departmentService, ExamPaperService examPaperService, ExamTemplatesUserCountService examTemplatesUserCountService, ExamTemplatesUserMapper examTemplatesUserMapper, ExamTemplatesConfigService examTemplatesConfigService) {
        super(baseMapper);
        this.examTemplatesMapper = examTemplatesMapper;
        this.examTemplatesQuestionMapper = examTemplatesQuestionMapper;
@@ -47,6 +42,7 @@
        this.examPaperService = examPaperService;
        this.examTemplatesUserCountService = examTemplatesUserCountService;
        this.examTemplatesUserMapper = examTemplatesUserMapper;
        this.examTemplatesConfigService = examTemplatesConfigService;
    }
    @Transactional(rollbackFor = Exception.class)
@@ -76,12 +72,8 @@
        examTemplates.setCreateUser(model.getCreateUser());
        examTemplatesMapper.add(examTemplates);
        List<ExamTemplatesQuestion> examTemplatesQuestions = ExamTemplatesClassConvert.INSTANCE.QuestionTypeVMListToExamTemplatesQuestionList(model.getQuestionTypeVMS())
                .stream().map(e -> {
                    e.setTemplatesId(examTemplates.getId());
                    return e;
                }).collect(Collectors.toList());
        examTemplatesQuestionMapper.saves(examTemplatesQuestions);
        // 随机时间题目配置
        examTemplatesQuestionMapper.add(getExamTemplatesQuestion(examTemplates.getId()));
        List<ExamTemplatesSubject> subjects = new ArrayList<>();
        for (Integer e : model.getSubjectId()) {
@@ -106,6 +98,17 @@
        }
    }
    private ExamTemplatesQuestion getExamTemplatesQuestion(Integer templatesId) {
        ExamTemplatesConfig examTemplatesConfig = examTemplatesConfigService.getConfig();
        if (Objects.isNull(examTemplatesConfig)) { throw new RuntimeException("请先配置试卷模板"); }
        ExamTemplatesQuestion examTemplatesQuestion = new ExamTemplatesQuestion();
        examTemplatesQuestion.setSingleChoice(examTemplatesConfig.getRadioNum().toString());
        examTemplatesQuestion.setMultipleChoice(examTemplatesConfig.getCheckNum().toString());
        examTemplatesQuestion.setTrueFalse(examTemplatesConfig.getJudgingNum().toString());
        examTemplatesQuestion.setTemplatesId(templatesId);
        return examTemplatesQuestion;
    }
    @Override
    public List<ExamTemplatesVO> list(ExamTemplatesVO examTemplatesVO) {
        return null;