Joburgess 5 年之前
父节点
当前提交
4d51a20a6d

+ 10 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamRoomServiceImpl.java

@@ -16,6 +16,7 @@ import com.keao.edu.user.api.enums.ExamModeEnum;
 import com.keao.edu.user.dao.*;
 import com.keao.edu.user.dto.ExamRoomDto;
 import com.keao.edu.user.dto.ExamRoomStatisticsDto;
+import com.keao.edu.user.entity.ExamOrganizationRelation;
 import com.keao.edu.user.entity.ExamRegistration;
 import com.keao.edu.user.entity.ExaminationBasic;
 import com.keao.edu.user.page.ExamRoomQueryInfo;
@@ -56,6 +57,8 @@ public class ExamRoomServiceImpl extends BaseServiceImpl<Long, ExamRoom> impleme
 	private ExamCertificationDao examCertificationDao;
 	@Autowired
 	private StudentExamResultDao studentExamResultDao;
+	@Autowired
+	private ExamOrganizationRelationDao examOrganizationRelationDao;
 
 	@Override
 	public BaseDAO<Long, ExamRoom> getDAO() {
@@ -109,6 +112,7 @@ public class ExamRoomServiceImpl extends BaseServiceImpl<Long, ExamRoom> impleme
 	}
 
 	@Override
+	@Transactional(rollbackFor = Exception.class)
 	public void createExamRoom(ExamRoom examRoom) {
 		if(Objects.isNull(examRoom.getExaminationBasicId())){
 			throw new BizException("请指定考级项目");
@@ -132,6 +136,12 @@ public class ExamRoomServiceImpl extends BaseServiceImpl<Long, ExamRoom> impleme
 		if(StringUtils.isBlank(examRoom.getExamTimeJson())){
 			throw new BizException("请指定考试时间");
 		}
+
+		ExamOrganizationRelation examOrganizationRelation = examOrganizationRelationDao.getExamOrganizationRelation(examinationBasic.getId(), examRoom.getOrganId());
+		if(Objects.isNull(examOrganizationRelation)||examOrganizationRelation.getIsAllowArrangeExam()==0){
+			throw new BizException("无权操作");
+		}
+
 		examRoom.setTenantId(TenantContextHolder.getTenantId());
 		examRoom.setExamPlanPushFlag(YesOrNoEnum.NO);
 		examRoom.setExamRoomStudentNum(0);