فهرست منبع

迟到时间为0的话默认修改为40秒

wangliang 2 سال پیش
والد
کامیت
529b467d9e

+ 1 - 5
themis-business/src/main/java/com/qmth/themis/business/cache/ExamRecordCacheUtil.java

@@ -665,12 +665,8 @@ public class ExamRecordCacheUtil {
     }
 
     public static Integer getOpeningSeconds(Long recordId) {
-        Integer openingSeconds = (Integer) redisUtil
+        return (Integer) redisUtil
                 .get(RedisKeyHelper.examRecordCacheKey(recordId), ExamRecordFieldEnum.opening_seconds.getCode());
-        if (Objects.nonNull(openingSeconds) && openingSeconds.intValue() == 0) {
-            openingSeconds = SystemConstant.DEFAULT_OPENING_SECONDS;
-        }
-        return openingSeconds;
     }
 
     public static Integer getMinDurationSeconds(Long recordId) {

+ 0 - 3
themis-business/src/main/java/com/qmth/themis/business/cache/bean/ExamActivityCacheBean.java

@@ -87,9 +87,6 @@ public class ExamActivityCacheBean implements Serializable {
 	}
 
 	public Integer getOpeningSeconds() {
-        if (Objects.nonNull(this.openingSeconds) && this.openingSeconds.intValue() == 0) {
-            this.openingSeconds = SystemConstant.DEFAULT_OPENING_SECONDS;
-        }
 		return openingSeconds;
 	}
 

+ 0 - 3
themis-business/src/main/java/com/qmth/themis/business/cache/bean/ExamCacheBean.java

@@ -428,9 +428,6 @@ public class ExamCacheBean implements Serializable {
     }
 
     public Integer getOpeningSeconds() {
-        if (Objects.nonNull(this.openingSeconds) && this.openingSeconds.intValue() == 0) {
-            this.openingSeconds = SystemConstant.DEFAULT_OPENING_SECONDS;
-        }
         return openingSeconds;
     }
 

+ 0 - 3
themis-business/src/main/java/com/qmth/themis/business/dto/request/TEExamDto.java

@@ -471,9 +471,6 @@ public class TEExamDto extends BaseEntity {
     }
 
     public Integer getOpeningSeconds() {
-        if (Objects.nonNull(this.openingSeconds) && this.openingSeconds.intValue() == 0) {
-            this.openingSeconds = SystemConstant.DEFAULT_OPENING_SECONDS;
-        }
         return openingSeconds;
     }
 

+ 4 - 4
themis-business/src/main/java/com/qmth/themis/business/dto/response/TEExamActivityDto.java

@@ -213,9 +213,12 @@ public class TEExamActivityDto implements Serializable {
             this.minStartTime = ec.getStartTime();
         }
         if (Objects.nonNull(openingSeconds)) {
+            openingSeconds = openingSeconds.intValue() == 0 ? SystemConstant.DEFAULT_OPENING_SECONDS : openingSeconds;
             this.maxStartTime = startTime + (openingSeconds * 1000);
         } else if (Objects.nonNull(ec.getMaxDurationSeconds())) {
-            this.maxStartTime = startTime + (ec.getOpeningSeconds() * 1000);
+            Integer openingSecondsTemp = ec.getOpeningSeconds();
+            openingSecondsTemp = Objects.nonNull(openingSecondsTemp) && openingSecondsTemp.intValue() == 0 ? SystemConstant.DEFAULT_OPENING_SECONDS : openingSecondsTemp;
+            this.maxStartTime = startTime + (openingSecondsTemp * 1000);
         }
         if (Objects.equals(ec.getMode(), ExamModeEnum.ANYTIME) || (Objects.equals(ec.getMode(), ExamModeEnum.TOGETHER) && forceFinish == 0)) {
             this.maxFinishTime = null;
@@ -519,9 +522,6 @@ public class TEExamActivityDto implements Serializable {
 //    }
 
     public Integer getOpeningSeconds() {
-        if (Objects.nonNull(this.openingSeconds) && this.openingSeconds.intValue() == 0) {
-            this.openingSeconds = SystemConstant.DEFAULT_OPENING_SECONDS;
-        }
         return openingSeconds;
     }
 

+ 0 - 3
themis-business/src/main/java/com/qmth/themis/business/dto/response/TEExamActivityQueryDto.java

@@ -102,9 +102,6 @@ public class TEExamActivityQueryDto implements Serializable {
     }
 
     public Integer getOpeningSeconds() {
-        if (Objects.nonNull(this.openingSeconds) && this.openingSeconds.intValue() == 0) {
-            this.openingSeconds = SystemConstant.DEFAULT_OPENING_SECONDS;
-        }
         return openingSeconds;
     }
 

+ 5 - 1
themis-business/src/main/java/com/qmth/themis/business/dto/response/TEExamActivityWaitDto.java

@@ -6,6 +6,7 @@ import com.qmth.themis.business.cache.bean.ExamActivityCacheBean;
 import com.qmth.themis.business.cache.bean.ExamCacheBean;
 import com.qmth.themis.business.cache.bean.ExamCourseCacheBean;
 import com.qmth.themis.business.cache.bean.ExamStudentCacheBean;
+import com.qmth.themis.business.constant.SystemConstant;
 import com.qmth.themis.business.enums.ExamModeEnum;
 import io.swagger.annotations.ApiModelProperty;
 
@@ -81,9 +82,12 @@ public class TEExamActivityWaitDto implements Serializable {
             this.minStartTime = ec.getStartTime();
         }
         if (Objects.nonNull(openingSeconds)) {
+            openingSeconds = openingSeconds.intValue() == 0 ? SystemConstant.DEFAULT_OPENING_SECONDS : openingSeconds;
             this.maxStartTime = startTime + (openingSeconds * 1000);
         } else if (Objects.nonNull(ec.getMaxDurationSeconds())) {
-            this.maxStartTime = startTime + (ec.getOpeningSeconds() * 1000);
+            Integer openingSecondsTemp = ec.getOpeningSeconds();
+            openingSecondsTemp = Objects.nonNull(openingSecondsTemp) && openingSecondsTemp.intValue() == 0 ? SystemConstant.DEFAULT_OPENING_SECONDS : openingSecondsTemp;
+            this.maxStartTime = startTime + (openingSecondsTemp * 1000);
         }
         if (Objects.equals(ec.getMode(), ExamModeEnum.ANYTIME) || (Objects.equals(ec.getMode(), ExamModeEnum.TOGETHER) && forceFinish == 0)) {
             this.maxFinishTime = null;

+ 0 - 3
themis-business/src/main/java/com/qmth/themis/business/entity/TEExam.java

@@ -393,9 +393,6 @@ public class TEExam extends BaseEntity {
     }
 
     public Integer getOpeningSeconds() {
-        if (Objects.nonNull(this.openingSeconds) && this.openingSeconds.intValue() == 0) {
-            this.openingSeconds = SystemConstant.DEFAULT_OPENING_SECONDS;
-        }
         return openingSeconds;
     }
 

+ 0 - 3
themis-business/src/main/java/com/qmth/themis/business/entity/TEExamActivity.java

@@ -112,9 +112,6 @@ public class TEExamActivity extends BaseEntity {
     }
 
     public Integer getOpeningSeconds() {
-        if (Objects.nonNull(this.openingSeconds) && this.openingSeconds.intValue() == 0) {
-            this.openingSeconds = SystemConstant.DEFAULT_OPENING_SECONDS;
-        }
         return openingSeconds;
     }
 

+ 0 - 3
themis-business/src/main/java/com/qmth/themis/business/entity/TOeExamRecord.java

@@ -678,9 +678,6 @@ public class TOeExamRecord implements Serializable {
     }
 
     public Integer getOpeningSeconds() {
-        if (Objects.nonNull(this.openingSeconds) && this.openingSeconds.intValue() == 0) {
-            this.openingSeconds = SystemConstant.DEFAULT_OPENING_SECONDS;
-        }
         return openingSeconds;
     }
 

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

@@ -313,7 +313,9 @@ public class TEExamServiceImpl extends ServiceImpl<TEExamMapper, TEExam> impleme
             }
         } else {
             Long start = ac.getStartTime() - (ac.getPrepareSeconds() * 1000);
-            Long end = ac.getStartTime() + (ac.getOpeningSeconds() * 1000);
+            Integer openingSecondsTemp = ac.getOpeningSeconds();
+            openingSecondsTemp = Objects.nonNull(openingSecondsTemp) && openingSecondsTemp.intValue() == 0 ? SystemConstant.DEFAULT_OPENING_SECONDS : openingSecondsTemp;
+            Long end = ac.getStartTime() + (openingSecondsTemp * 1000);
             if (now.getTime() < start) {
                 throw new BusinessException(ExceptionResultEnum.NOT_ALLOW_MAX_START_TIME);
             }
@@ -462,7 +464,9 @@ public class TEExamServiceImpl extends ServiceImpl<TEExamMapper, TEExam> impleme
                     }
                 }
             } else {
-                Long end = ac.getStartTime() + (ac.getOpeningSeconds() * 1000);
+                Integer openingSecondsTemp = ac.getOpeningSeconds();
+                openingSecondsTemp = Objects.nonNull(openingSecondsTemp) && openingSecondsTemp.intValue() == 0 ? SystemConstant.DEFAULT_OPENING_SECONDS : openingSecondsTemp;
+                Long end = ac.getStartTime() + (openingSecondsTemp * 1000);
                 if (now.getTime() > end) {
                     throw new BusinessException(ExceptionResultEnum.MAX_START_TIME_FINISHED);
                 }