wangliang 4 年之前
父節點
當前提交
a5d6e1c8d5

+ 5 - 11
themis-business/src/main/java/com/qmth/themis/business/cache/bean/ExamCacheBean.java

@@ -1,17 +1,11 @@
 package com.qmth.themis.business.cache.bean;
 
-import java.io.Serializable;
-
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
-import com.qmth.themis.business.enums.EntryAuthenticationPolicyEnum;
-import com.qmth.themis.business.enums.ExamModeEnum;
-import com.qmth.themis.business.enums.InProcessLivenessJudgePolicyEnum;
-import com.qmth.themis.business.enums.InvigilateMonitorStatusEnum;
-import com.qmth.themis.business.enums.InvigilateVerifyEnum;
-import com.qmth.themis.business.enums.ObjectiveScorePolicyEnum;
-import com.qmth.themis.business.enums.RecordSelectStrategyEnum;
-import com.qmth.themis.business.enums.ScoreStatusEnum;
+import com.qmth.themis.business.enums.*;
+
+import java.io.Serializable;
+import java.util.Objects;
 
 public class ExamCacheBean implements Serializable {
 
@@ -463,7 +457,7 @@ public class ExamCacheBean implements Serializable {
     }
 
     public Integer getBreakResumeCount() {
-        return breakResumeCount;
+        return Objects.isNull(breakResumeCount) ? 0 : breakResumeCount;
     }
 
     public void setBreakResumeCount(Integer breakResumeCount) {

+ 2 - 2
themis-business/src/main/java/com/qmth/themis/business/service/impl/TEExamServiceImpl.java

@@ -484,7 +484,7 @@ public class TEExamServiceImpl extends ServiceImpl<TEExamMapper, TEExam> impleme
             finish(examStudentCacheBean.getStudentId(), recordId, FinishTypeEnum.AUTO.name(), durationSeconds);
         } else {
             //如果断点次数小于0,也强制交卷
-            if (leftBreakResumeCount < 0) {
+            if (leftBreakResumeCount <= 0) {
                 finish(examStudentCacheBean.getStudentId(), recordId, FinishTypeEnum.AUTO.name(), durationSeconds);
             }
         }
@@ -802,7 +802,7 @@ public class TEExamServiceImpl extends ServiceImpl<TEExamMapper, TEExam> impleme
             finish(examStudentCacheBean.getStudentId(), recordId, FinishTypeEnum.AUTO.name(), durationSeconds);
         } else {
             //如果断点次数小于0,也强制交卷
-            if (leftBreakResumeCount < 0) {
+            if (leftBreakResumeCount <= 0) {
                 finish(examStudentCacheBean.getStudentId(), recordId, FinishTypeEnum.AUTO.name(), durationSeconds);
             }
         }

+ 1 - 1
themis-exam/src/main/java/com/qmth/themis/exam/api/TEStudentController.java

@@ -260,7 +260,7 @@ public class TEStudentController {
                     }
                 } else {
                     //如果断点次数小于0,也强制交卷
-                    if (leftBreakResumeCount < 0) {
+                    if (leftBreakResumeCount <= 0) {
                         teExamService.finish(teStudentCacheDto.getId(), recordId, FinishTypeEnum.AUTO.name(), durationSeconds);
                         List<TEExamDto> list = teExamService.getWaitingExam(teStudent.getId(), examId, orgId);
                         if (Objects.nonNull(list) && list.size() > 0) {

+ 1 - 1
themis-exam/src/main/java/com/qmth/themis/exam/config/ExamConstant.java

@@ -109,7 +109,7 @@ public class ExamConstant {
         Integer durationSeconds = Objects.isNull(ExamRecordCacheUtil.getDurationSeconds(recordId)) ? 0 : ExamRecordCacheUtil.getDurationSeconds(recordId);
         Integer alreadyBreakCount = Objects.isNull(ExamRecordCacheUtil.getAlreadyBreakCount(recordId)) ? 0 : ExamRecordCacheUtil.getAlreadyBreakCount(recordId);
         Integer leftBreakResumeCount = ec.getBreakResumeCount() - alreadyBreakCount;
-        if (leftBreakResumeCount < 0) {
+        if (leftBreakResumeCount <= 0) {
             teExamService.finish(examStudentCacheBean.getStudentId(), recordId, FinishTypeEnum.AUTO.name(), durationSeconds);
         } else {
             alreadyBreakCount++;

+ 1 - 1
themis-mq/src/main/java/com/qmth/themis/mq/service/impl/MqLogicServiceImpl.java

@@ -255,7 +255,7 @@ public class MqLogicServiceImpl implements MqLogicService {
             //增加断点记录,获取剩余断点次数
             Integer alreadyBreakCount = Objects.isNull(ExamRecordCacheUtil.getAlreadyBreakCount(recordId)) ? 0 : ExamRecordCacheUtil.getAlreadyBreakCount(recordId);
             Integer leftBreakResumeCount = ec.getBreakResumeCount() - alreadyBreakCount;
-            if (leftBreakResumeCount < 0) {
+            if (leftBreakResumeCount <= 0) {
                 Integer durationSeconds = Objects.isNull(ExamRecordCacheUtil.getDurationSeconds(recordId)) ? 0 : ExamRecordCacheUtil.getDurationSeconds(recordId);
                 teExamService.finish(examStudentCacheBean.getStudentId(), recordId, FinishTypeEnum.AUTO.name(), durationSeconds);
             } else {