wangliang преди 4 години
родител
ревизия
5e141c28e8

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

@@ -5,6 +5,7 @@ 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.enums.EntryAuthenticationPolicyEnum;
+import com.qmth.themis.business.enums.ExamModeEnum;
 import com.qmth.themis.business.enums.HardwareTestEnum;
 import com.qmth.themis.business.enums.MonitorVideoSourceEnum;
 import io.swagger.annotations.ApiModelProperty;
@@ -151,10 +152,10 @@ public class TEExamActivityDto implements Serializable {
         } else if (Objects.nonNull(ec.getMaxDurationSeconds())) {
             this.maxStartTime = examActivityCacheBean.getStartTime().getTime() + (ec.getOpeningSeconds() * 1000);
         }
-        if (Objects.nonNull(examActivityCacheBean.getFinishTime()) && ec.getForceFinish() == 1) {
-            this.maxFinishTime = examActivityCacheBean.getFinishTime().getTime();
-        } else if (Objects.nonNull(ec.getEndTime())) {
-            this.maxFinishTime = ec.getEndTime().getTime();
+        if (Objects.equals(ec.getMode(), ExamModeEnum.ANYTIME) || (Objects.equals(ec.getMode(), ExamModeEnum.TOGETHER) && ec.getForceFinish() == 0)) {
+            this.maxFinishTime = null;
+        } else {
+            this.maxFinishTime = Objects.nonNull(examActivityCacheBean.getFinishTime()) ? examActivityCacheBean.getFinishTime().getTime() : ec.getEndTime().getTime();
         }
         this.cameraPhotoUpload = ec.getCameraPhotoUpload();
         this.entryAuthenticationPolicy = ec.getEntryAuthenticationPolicy().name();

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

@@ -304,9 +304,6 @@ public class TEStudentController {
         TEExamActivityDto teExamActivityDto = new TEExamActivityDto(ec, examActivityCacheBean, examStudentCacheBean, examStudentId, examCourseCacheBean);
         Gson gson = new Gson();
         ExamActivityUnFinishBean examActivityUnFinishBean = gson.fromJson(gson.toJson(teExamActivityDto), ExamActivityUnFinishBean.class);
-        if (Objects.equals(ec.getMode(), ExamModeEnum.ANYTIME) || (Objects.equals(ec.getMode(), ExamModeEnum.TOGETHER) && ec.getForceFinish() == 0)) {
-            examActivityUnFinishBean.setMaxFinishTime(null);
-        }
         examActivityUnFinishBean.setRecordId(recordId);
         return new ExamUnFinishBean(ec.getId(), ec.getName(), ec.getPreNotice(), ec.getPreNoticeStaySeconds(), ec.getPostNotice(), examActivityUnFinishBean);
     }