Jelajahi Sumber

评卷管理/成绩检查增加导出

wangliang 11 bulan lalu
induk
melakukan
819ce075c1

+ 4 - 0
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/MarkPaperServiceImpl.java

@@ -257,7 +257,11 @@ public class MarkPaperServiceImpl extends ServiceImpl<MarkPaperMapper, MarkPaper
     @Override
     public Boolean finishPaper(Long examId, String paperNumber, String teachClassName) {
         MarkPaper markPaper = this.getByExamIdAndPaperNumber(examId, paperNumber);
+        Objects.requireNonNull(markPaper, "未找到评卷信息");
         String courseInfo = String.format("%s[%s],试卷编号%s,", markPaper.getCourseName(), markPaper.getCourseCode(), markPaper.getPaperNumber());
+        if (Objects.nonNull(markPaper.getStatus()) && markPaper.getStatus() != MarkPaperStatus.FINISH) {
+            throw ExceptionResultEnum.ERROR.exception(courseInfo + "评卷任务未完成,请完成评卷任务并检查成绩后再导出");
+        }
         // 主观题是否全部分组
         List<MarkQuestion> markQuestionObjectiveList = markQuestionService.listQuestionByExamIdAndPaperNumberAndGroupNumber(examId, paperNumber, null, true);
         if (CollectionUtils.isNotEmpty(markQuestionObjectiveList)) {