Joburgess 5 tahun lalu
induk
melakukan
277268f623

+ 8 - 3
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExaminationBasicServiceImpl.java

@@ -2,15 +2,14 @@ package com.keao.edu.user.service.impl;
 
 import com.keao.edu.auth.api.entity.SysUser;
 import com.keao.edu.common.dal.BaseDAO;
-import com.keao.edu.common.enums.MessageTypeEnum;
 import com.keao.edu.common.exception.BizException;
 import com.keao.edu.common.page.PageInfo;
 import com.keao.edu.common.service.SysMessageService;
 import com.keao.edu.common.service.impl.BaseServiceImpl;
 import com.keao.edu.common.tenant.TenantContextHolder;
-import com.keao.edu.thirdparty.message.provider.JiguangPushPlugin;
 import com.keao.edu.user.api.enums.ExamModeEnum;
 import com.keao.edu.user.dao.*;
+import com.keao.edu.user.dto.ExamRoomExamTimeDto;
 import com.keao.edu.user.dto.ExaminationBasicDto;
 import com.keao.edu.user.entity.*;
 import com.keao.edu.user.enums.ExamStatusEnum;
@@ -57,6 +56,8 @@ public class ExaminationBasicServiceImpl extends BaseServiceImpl<Long, Examinati
     private SysMessageService sysMessageService;
     @Autowired
     private StudentExamResultService studentExamResultService;
+    @Autowired
+    private ExamRoomDao examRoomDao;
 
     @Override
     public BaseDAO<Long, ExaminationBasic> getDAO() {
@@ -305,7 +306,8 @@ public class ExaminationBasicServiceImpl extends BaseServiceImpl<Long, Examinati
                     ExamStatusEnum.EXAM_END.equals(existsExam.getStatus())){
                 throw new BizException("无法修改");
             }
-            if(Objects.nonNull(examinationBasic.getActualExamStartTime())&&examinationBasic.getEnrollEndTime().compareTo(examinationBasic.getActualExamStartTime())>0){
+            ExamRoomExamTimeDto examRoomExamTime = examRoomDao.getExamRoomExamTime(examinationBasic.getId());
+            if(Objects.nonNull(examRoomExamTime)&&examinationBasic.getEnrollEndTime().compareTo(examRoomExamTime.getExamStartTime())>0){
                 throw new BizException("报名结束时间不得在考试开始时间之后");
             }
             examLifecycleLogDao.insert(new ExamLifecycleLog(existsExam.getId().intValue(), "修改报名时间", operatorId));
@@ -325,6 +327,9 @@ public class ExaminationBasicServiceImpl extends BaseServiceImpl<Long, Examinati
             }
         }
 
+        examinationBasic.setActualExamStartTime(existsExam.getActualExamStartTime());
+        examinationBasic.setActualExamEndTime(existsExam.getActualExamEndTime());
+
         examinationBasicDao.update(examinationBasic);
         if(examRegistIsChange){
             examOrganizationRelationService.examDateChangePush(examinationBasic.getId());