| | |
| | | }); |
| | | // 阅卷后才往exam_paper_answer保存考试成绩、以及保存到exam_paper_customer_answer |
| | | // 现在只需要保存到一张临时表 |
| | | // 该接口是主动提交,所以状态都设置为完成,以便后续老师阅卷 |
| | | saveTempExam(submitData, ExamSubmitTempStatusEnum.FINISH); |
| | | return Result.ok(); |
| | | } |
| | | |
| | | @Override |
| | | public Result timingSubmit(ExamSubmitVO submitData) { |
| | | saveTempExam(submitData, ExamSubmitTempStatusEnum.TEMP); |
| | | return Result.ok(); |
| | | } |
| | | |
| | | /** |
| | | * 保存临时试卷 |
| | | * |
| | | * @param submitData 前端传递的试卷数据 |
| | | * @param status 试卷的状态 |
| | | */ |
| | | public void saveTempExam(ExamSubmitVO submitData, ExamSubmitTempStatusEnum status) { |
| | | ExamSubmitTemp one = new LambdaQueryChainWrapper<>(examSubmitTempMapper) |
| | | .eq(ExamSubmitTemp::getExamId, submitData.getExamId()) |
| | | .eq(ExamSubmitTemp::getUserId, webContext.getCurrentUser().getId()) |
| | | .one(); |
| | | if (Objects.nonNull(one)) { |
| | | if (ExamSubmitTempStatusEnum.FINISH.equals(one.getStatus())) { |
| | | return; |
| | | } |
| | | one.setDoTime(submitData.getDoTime()); |
| | | one.setExamSubmit(JSON.toJSONString(submitData.getQuestionList())); |
| | | one.setCreateTime(new Date()); |
| | | one.setStatus(status); |
| | | examSubmitTempMapper.updateById(one); |
| | | } else { |
| | | ExamSubmitTemp examSubmitTemp = new ExamSubmitTemp(); |
| | | examSubmitTemp.setExamId(submitData.getExamId()); |
| | | examSubmitTemp.setDoTime(submitData.getDoTime()); |
| | | examSubmitTemp.setStatus(ExamSubmitTempStatusEnum.FINISH); |
| | | examSubmitTemp.setStatus(status); |
| | | examSubmitTemp.setUserId(webContext.getCurrentUser().getId()); |
| | | examSubmitTemp.setExamSubmit(JSON.toJSONString(submitData.getQuestionList())); |
| | | examSubmitTempMapper.insert(examSubmitTemp); |
| | | } |
| | | return Result.ok(); |
| | | } |
| | | } |