ソースを参照

获取考试相关信息时,orgId全改为从学生对象获取

lideyin 5 年 前
コミット
eea6ca4f5b

+ 1 - 1
examcloud-core-oe-student-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/student/controller/ExamControlController.java

@@ -178,7 +178,7 @@ public class ExamControlController extends ControllerSupport {
 
         //根据相关条件添加推分队列
         Long examId = examRecordData.getExamId();
-        String isPushScore = ExamCacheTransferHelper.getCachedExamProperty(examId, examRecordData.getOrgId(),
+        String isPushScore = ExamCacheTransferHelper.getCachedExamProperty(examId,
                 examRecordData.getStudentId(), ExamProperties.PUSH_SCORE.name()).getValue();
         if (isPushScore != null && Constants.isTrue.equals(isPushScore)) {
             //保存分数通知队列(只有考试设置中,配置为允许推分的才发送通知)

+ 2 - 2
examcloud-core-oe-student-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/student/controller/FaceBiopsyController.java

@@ -87,7 +87,7 @@ public class FaceBiopsyController extends ControllerSupport {
         Long examId = examRecordData.getExamId();
         Long orgId = examRecordData.getOrgId();
 
-        if (!FaceBiopsyHelper.isFaceVerify(rootOrgId, examId, orgId, studentId)) {
+        if (!FaceBiopsyHelper.isFaceVerify(rootOrgId, examId,  studentId)) {
             throw new StatusException("200105", "本场考试未开启人脸活体检测");
         }
 
@@ -140,7 +140,7 @@ public class FaceBiopsyController extends ControllerSupport {
         Long rootOrgId = user.getRootOrgId();
         Long examId = examRecordData.getExamId();
         Long orgId = examRecordData.getOrgId();
-        if (!FaceBiopsyHelper.isFaceVerify(rootOrgId, examId, orgId, studentId)) {
+        if (!FaceBiopsyHelper.isFaceVerify(rootOrgId, examId,  studentId)) {
             throw new StatusException("200104", "本场考试未开启人脸活体检测");
         }
 

+ 1 - 1
examcloud-core-oe-student-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/student/controller/OfflineExamController.java

@@ -95,7 +95,7 @@ public class OfflineExamController extends ControllerSupport{
 			throw new StatusException("OfflineExamController-submitPaper-002","非离线考试"); 
 		}
 		String offlineUploadFileType = ExamCacheTransferHelper.getCachedExamProperty(examRecordData.getExamId(),
-				examRecordData.getOrgId(),examRecordData.getStudentId(),
+				examRecordData.getStudentId(),
 				ExamProperties.OFFLINE_UPLOAD_FILE_TYPE.name()).getValue();
 		if(StringUtils.isBlank(offlineUploadFileType) || "[]".equals(offlineUploadFileType)){
 			throw new StatusException("OfflineExamController-submitPaper-003","当前考试设置不允许上传附件"); 

+ 8 - 10
examcloud-core-oe-student-service/src/main/java/cn/com/qmth/examcloud/core/oe/student/service/impl/ExamControlServiceImpl.java

@@ -285,7 +285,7 @@ public class ExamControlServiceImpl implements ExamControlService {
         Long examId = examRecordData.getExamId();
         Long orgId = examRecordData.getOrgId();
 
-        if (FaceBiopsyHelper.isFaceEnable(rootOrgId, examId, orgId, studentId)) {
+        if (FaceBiopsyHelper.isFaceEnable(rootOrgId, examId,  studentId)) {
             SaveExamCaptureSyncCompareResultReq req = new SaveExamCaptureSyncCompareResultReq();
             req.setExamRecordDataId(examRecordData.getId());
             req.setStudentId(user.getUserId());
@@ -410,10 +410,10 @@ public class ExamControlServiceImpl implements ExamControlService {
      */
     private Integer getFaceVerifyMinute(Long rootOrgId, Long examId, Long orgId, Long studentId) {
         // 如果开启了活体检测
-        if (FaceBiopsyHelper.isFaceVerify(rootOrgId, examId, orgId, studentId)) {
+        if (FaceBiopsyHelper.isFaceVerify(rootOrgId, examId,  studentId)) {
             // 开始分钟数
             String startMinuteStr = ExamCacheTransferHelper
-                    .getCachedExamProperty(examId, orgId, studentId, ExamProperties.FACE_VERIFY_START_MINUTE.name()).getValue();
+                    .getCachedExamProperty(examId,  studentId, ExamProperties.FACE_VERIFY_START_MINUTE.name()).getValue();
             if (CommonUtil.isBlank(startMinuteStr)) {
                 throw new StatusException("ExamControlServiceImpl-getFaceVerifyMinute-001",
                         ExamProperties.FACE_VERIFY_START_MINUTE.getDesc() + "未设置");
@@ -422,7 +422,7 @@ public class ExamControlServiceImpl implements ExamControlService {
 
             // 结束分钟数
             String endMinuteStr = ExamCacheTransferHelper
-                    .getCachedExamProperty(examId, orgId, studentId, ExamProperties.FACE_VERIFY_END_MINUTE.name()).getValue();
+                    .getCachedExamProperty(examId, studentId, ExamProperties.FACE_VERIFY_END_MINUTE.name()).getValue();
             if (CommonUtil.isBlank(endMinuteStr)) {
                 throw new StatusException("ExamControlServiceImpl-getFaceVerifyMinute-002",
                         ExamProperties.FACE_VERIFY_END_MINUTE.getDesc() + "未设置");
@@ -454,7 +454,7 @@ public class ExamControlServiceImpl implements ExamControlService {
         Long studentId = examStudentEntity.getStudentId();
 
         // 学习中心特殊考试配置(是否禁考,开考时间可以特殊设置)
-        ExamBean examBean = ExamCacheTransferHelper.getCachedExam(examId, orgId, studentId);
+        ExamBean examBean = ExamCacheTransferHelper.getCachedExam(examId,  studentId);
 
         //如果启用了了特殊设置,并且无特殊设置时结束考试 配置 设置为true..且实际未设置特殊设置则不允许考试
         ExamPropertyCacheBean limitedIfNoSpecialSettings = ExamCacheTransferHelper.getDefaultCachedExamProperty(examId,
@@ -480,7 +480,6 @@ public class ExamControlServiceImpl implements ExamControlService {
 
         }
 
-
         if (!examBean.getEnable() || (examBean.getExamLimit() != null && examBean.getExamLimit())) {
             throw new StatusException("ExamControlServiceImpl-checkExam-exception-01", "暂无考试资格,请与学校老师联系");
         }
@@ -521,7 +520,7 @@ public class ExamControlServiceImpl implements ExamControlService {
         examSessionInfo.setPaperType(examStudent.getPaperType());
         // EXAM_RECONNECT_TIME:断点续考时间
         String examReconnectTimeStr = ExamCacheTransferHelper
-                .getCachedExamProperty(examBean.getId(), examStudent.getOrgId(), examStudent.getStudentId(),
+                .getCachedExamProperty(examBean.getId(),  examStudent.getStudentId(),
                         ExamProperties.EXAM_RECONNECT_TIME.name()).getValue();
         log.debug("11.2 断点时间:" + examReconnectTimeStr);
         if (CommonUtil.isBlank(examReconnectTimeStr)) {
@@ -531,7 +530,7 @@ public class ExamControlServiceImpl implements ExamControlService {
         examSessionInfo.setExamReconnectTime(Integer.valueOf(examReconnectTimeStr));
         // FREEZE_TIME:冻结时间
         String freezeTimeStr = ExamCacheTransferHelper
-                .getCachedExamProperty(examBean.getId(), examStudent.getOrgId(), examStudent.getStudentId(),
+                .getCachedExamProperty(examBean.getId(),  examStudent.getStudentId(),
                         ExamProperties.FREEZE_TIME.name()).getValue();
         log.debug("11.3 冻结时间:" + freezeTimeStr);
         if (CommonUtil.isBlank(freezeTimeStr)) {
@@ -733,9 +732,8 @@ public class ExamControlServiceImpl implements ExamControlService {
             // 手工手卷时,如果开启人脸检测,则更新抓拍队列优先级
             Long rootOrgId = examRecordData.getRootOrgId();
             Long examId = examRecordData.getExamId();
-            Long orgId = examRecordData.getOrgId();
 
-            if (FaceBiopsyHelper.isFaceEnable(rootOrgId, examId, rootOrgId, studentId)) {
+            if (FaceBiopsyHelper.isFaceEnable(rootOrgId, examId, studentId)) {
                 // 更新照片抓拍队列优先级为高优先级
                 examCaptureQueueRepo.updateExamCaptureQueuePriority(Constants.PROCESS_CAPTURE_HIGH_PRIORITY,
                         examRecordData.getId());

+ 3 - 3
examcloud-core-oe-student-service/src/main/java/cn/com/qmth/examcloud/core/oe/student/service/impl/ExamFaceLivenessVerifyServiceImpl.java

@@ -282,17 +282,17 @@ public class ExamFaceLivenessVerifyServiceImpl implements ExamFaceLivenessVerify
     public Integer getFaceLivenessVerifyMinute(Long rootOrgId, Long orgId, Long examId, Long studentId,
                                                Long examRecordDataId, Integer heartbeat) {
         //开启了人脸检测
-        if (FaceBiopsyHelper.isFaceVerify(rootOrgId, examId, orgId, studentId)) {
+        if (FaceBiopsyHelper.isFaceVerify(rootOrgId, examId, studentId)) {
 
             List<ExamFaceLivenessVerifyEntity> faceLivenessVerifys = listFaceVerifyByExamRecordId(examRecordDataId);
             //如果没有进行过人脸检测
             if (faceLivenessVerifys.size() == 0) {
 
-                String faceVerifyStartMinuteStr = ExamCacheTransferHelper.getCachedExamProperty(examId, orgId,
+                String faceVerifyStartMinuteStr = ExamCacheTransferHelper.getCachedExamProperty(examId,
                         studentId, ExamProperties.FACE_VERIFY_START_MINUTE.name()).getValue();
                 Integer faceVerifyStartMinute = Integer.valueOf(faceVerifyStartMinuteStr);
 
-                String faceVerifyEndMinuteStr = ExamCacheTransferHelper.getCachedExamProperty(examId, orgId,
+                String faceVerifyEndMinuteStr = ExamCacheTransferHelper.getCachedExamProperty(examId,
                         studentId, ExamProperties.FACE_VERIFY_END_MINUTE.name()).getValue();
                 Integer faceVerifyEndMinute = Integer.valueOf(faceVerifyEndMinuteStr);
                 //	case1.如果考生已使用的考试时间(即心跳时间)还未达到系统设置的活体检测开始时间,则实际活体检测时间=random(配置结束时间-配置结束时间)-考试已用时间

+ 4 - 4
examcloud-core-oe-student-service/src/main/java/cn/com/qmth/examcloud/core/oe/student/service/impl/ExamRecordDataServiceImpl.java

@@ -212,7 +212,7 @@ public class ExamRecordDataServiceImpl implements ExamRecordDataService {
             Long studentId = examRecordDataEntity.getStudentId();
 
             //是否进行活体检测
-            if (FaceBiopsyHelper.isFaceVerify(rootOrgId, examId, orgId, studentId)) {
+            if (FaceBiopsyHelper.isFaceVerify(rootOrgId, examId, studentId)) {
                 FaceBiopsyScheme faceBiopsyScheme = FaceBiopsyHelper.getFaceBiopsyScheme(rootOrgId);
                 //新活体检测方案
                 if (faceBiopsyScheme == FaceBiopsyScheme.NEW) {
@@ -282,7 +282,7 @@ public class ExamRecordDataServiceImpl implements ExamRecordDataService {
         Long studentId = examRecordData.getStudentId();
 
         //未开启人脸检测
-        if (!FaceBiopsyHelper.isFaceEnable(rootOrgId, examId, orgId, studentId)) {
+        if (!FaceBiopsyHelper.isFaceEnable(rootOrgId, examId, studentId)) {
             examRecordData.setIsWarn(false);
             calculateFaceCheckResultInfo.setExamRecordData(examRecordData);
             return calculateFaceCheckResultInfo;
@@ -304,14 +304,14 @@ public class ExamRecordDataServiceImpl implements ExamRecordDataService {
             return calculateFaceCheckResultInfo;
         }
         //人脸识别阀值
-        String warnThresholdStr = ExamCacheTransferHelper.getCachedExamProperty(examId, orgId,
+        String warnThresholdStr = ExamCacheTransferHelper.getCachedExamProperty(examId,
                 studentId, ExamProperties.WARN_THRESHOLD.name()).getValue();
         if (CommonUtil.isBlank(warnThresholdStr)) {
             throw new StatusException("ExamRecordDataServiceImpl-calculateFaceCheckResult-001", ExamProperties.WARN_THRESHOLD.getDesc() + "未设置");
         }
         double warnThreshold = Double.parseDouble(warnThresholdStr);
         //人脸真实性(百度活体检测)通过阀值
-        String liveWarnThresholdStr = ExamCacheTransferHelper.getCachedExamProperty(examId, orgId,
+        String liveWarnThresholdStr = ExamCacheTransferHelper.getCachedExamProperty(examId,
                 studentId, ExamProperties.LIVING_WARN_THRESHOLD.name()).getValue();
         if (CommonUtil.isBlank(liveWarnThresholdStr)) {
             throw new StatusException("ExamRecordDataServiceImpl-calculateFaceCheckResult-002", ExamProperties.LIVING_WARN_THRESHOLD.getDesc() + "未设置");

+ 4 - 4
examcloud-core-oe-student-service/src/main/java/cn/com/qmth/examcloud/core/oe/student/service/impl/ExamStudentServiceImpl.java

@@ -110,7 +110,7 @@ public class ExamStudentServiceImpl implements ExamStudentService {
         OrgCacheBean orgBean = gainBaseDataService.getOrgBean(orgId);
         Long studentId = examStudent.getStudentId();
         ExamBean examBean = ExamCacheTransferHelper.getCachedExam(examStudent.getExamId(),
-                orgId, studentId);
+                 studentId);
 
         examStudentInfo.setOrgName(orgBean.getName());
         Long examId = examBean.getId();
@@ -121,11 +121,11 @@ public class ExamStudentServiceImpl implements ExamStudentService {
         examStudentInfo.setAllowExamCount(countExamTimes(examStudent, examBean));
         examStudentInfo.setPaperMins(examBean.getDuration());
         //是否启用人脸识别
-        examStudentInfo.setFaceEnable(FaceBiopsyHelper.isFaceEnable(rootOrgId, examId, orgId, studentId));
+        examStudentInfo.setFaceEnable(FaceBiopsyHelper.isFaceEnable(rootOrgId, examId,  studentId));
         //进入考试是否验证人脸识别(强制、非强制)
-        examStudentInfo.setFaceCheck(FaceBiopsyHelper.isFaceCheck(examId, orgId, studentId));
+        examStudentInfo.setFaceCheck(FaceBiopsyHelper.isFaceCheck(examId, studentId));
         //是否显示客观分
-        String isObjScoreView = ExamCacheTransferHelper.getCachedExamProperty(examId, orgId,
+        String isObjScoreView = ExamCacheTransferHelper.getCachedExamProperty(examId,
                 studentId, ExamProperties.IS_OBJ_SCORE_VIEW.name()).getValue();
         if (StringUtils.isBlank(isObjScoreView)) {
             examStudentInfo.setIsObjScoreView(false);

+ 6 - 6
examcloud-core-oe-student-service/src/main/java/cn/com/qmth/examcloud/core/oe/student/service/impl/FaceBiopsyServiceImpl.java

@@ -697,11 +697,11 @@ public class FaceBiopsyServiceImpl implements FaceBiopsyService {
 
         //如果是第一次活体检测
         if (verifyTimes == 1) {
-            String faceVerifyStartMinuteStr = ExamCacheTransferHelper.getCachedExamProperty(examId, orgId,
+            String faceVerifyStartMinuteStr = ExamCacheTransferHelper.getCachedExamProperty(examId,
                     studentId, ExamProperties.FACE_VERIFY_START_MINUTE.name()).getValue();
             Integer faceVerifyStartMinute = Integer.valueOf(faceVerifyStartMinuteStr);
 
-            String faceVerifyEndMinuteStr = ExamCacheTransferHelper.getCachedExamProperty(examId, orgId,
+            String faceVerifyEndMinuteStr = ExamCacheTransferHelper.getCachedExamProperty(examId,
                     studentId, ExamProperties.FACE_VERIFY_END_MINUTE.name()).getValue();
             Integer faceVerifyEndMinute = Integer.valueOf(faceVerifyEndMinuteStr);
 
@@ -746,11 +746,11 @@ public class FaceBiopsyServiceImpl implements FaceBiopsyService {
             return null;
         }
 
-        String strOutFreezeTimeFaceVerifyStartMinute = ExamCacheTransferHelper.getCachedExamProperty(examId, orgId,
+        String strOutFreezeTimeFaceVerifyStartMinute = ExamCacheTransferHelper.getCachedExamProperty(examId,
                 studentId, ExamProperties.OUT_FREEZE_TIME_FACE_VERIFY_START_MINUTE.name()).getValue();
         Integer faceVerifyStartMinute = Integer.valueOf(strOutFreezeTimeFaceVerifyStartMinute);
 
-        String strOutFreezeTimeFaceVerifyEndMinute = ExamCacheTransferHelper.getCachedExamProperty(examId, orgId,
+        String strOutFreezeTimeFaceVerifyEndMinute = ExamCacheTransferHelper.getCachedExamProperty(examId,
                 studentId, ExamProperties.OUT_FREEZE_TIME_FACE_VERIFY_END_MINUTE.name()).getValue();
         Integer faceVerifyEndMinute = Integer.valueOf(strOutFreezeTimeFaceVerifyEndMinute);
 
@@ -768,7 +768,7 @@ public class FaceBiopsyServiceImpl implements FaceBiopsyService {
      * @return
      */
     private boolean isAddFaceVerifyOutFreezeTime(Long examId, Long orgId, Long studentId) {
-        String addFaceVerifyOutFreezeTime = ExamCacheTransferHelper.getCachedExamProperty(examId, orgId,
+        String addFaceVerifyOutFreezeTime = ExamCacheTransferHelper.getCachedExamProperty(examId,
                 studentId, ExamProperties.ADD_FACE_VERIFY_OUT_FREEZE_TIME.name()).getValue();
         return Constants.isTrue.equals(addFaceVerifyOutFreezeTime);
     }
@@ -818,6 +818,6 @@ public class FaceBiopsyServiceImpl implements FaceBiopsyService {
 
         //如果未开启人脸活体检测,则返回null
         return FaceBiopsyHelper.isFaceVerify(examRecordData.getRootOrgId(),
-                examRecordData.getExamId(), orgId, examRecordData.getStudentId());
+                examRecordData.getExamId(),  examRecordData.getStudentId());
     }
 }

+ 2 - 3
examcloud-core-oe-student-service/src/main/java/cn/com/qmth/examcloud/core/oe/student/service/impl/OfflineExamServiceImpl.java

@@ -100,8 +100,7 @@ public class OfflineExamServiceImpl implements OfflineExamService {
         List<ExamStudentEntity> examStudents = examStudentRepo.findByStudentId(studentId);
         List<OfflineExamCourseInfo> offlineExamCourseInfoList = new ArrayList<OfflineExamCourseInfo>();
         for (ExamStudentEntity examStudent : examStudents) {
-            ExamBean examBean = ExamCacheTransferHelper.getCachedExam(examStudent.getExamId(),
-                    examStudent.getOrgId(),studentId);
+            ExamBean examBean = ExamCacheTransferHelper.getCachedExam(examStudent.getExamId(),studentId);
             if (!ExamType.OFFLINE.name().equals(examBean.getExamType())) {
                 continue;
             }
@@ -204,7 +203,7 @@ public class OfflineExamServiceImpl implements OfflineExamService {
 
     private ExamBean checkExam(ExamStudentEntity examStudentEntity) {
         ExamBean examBean = ExamCacheTransferHelper.getCachedExam(examStudentEntity.getExamId(),
-                examStudentEntity.getOrgId(),examStudentEntity.getStudentId());
+                examStudentEntity.getStudentId());
 
         if (!examBean.getEnable() || (examBean.getExamLimit() != null && examBean.getExamLimit())) {
             throw new StatusException("ExamControlServiceImpl-checkExam-exception-01", "暂无考试资格,请与学校老师联系");

+ 1 - 2
examcloud-core-oe-student-service/src/main/java/cn/com/qmth/examcloud/core/oe/student/service/impl/PracticeServiceImpl.java

@@ -66,8 +66,7 @@ public class PracticeServiceImpl implements PracticeService {
             return null;
         }
         List<PracticeCourseInfo> practiceCourseInfos = new ArrayList<PracticeCourseInfo>();
-        ExamBean examBean = ExamCacheTransferHelper.getCachedExam(examId,
-                examStudentList.get(0).getOrgId(),studentId);
+        ExamBean examBean = ExamCacheTransferHelper.getCachedExam(examId,studentId);
         for (ExamStudentEntity examStudent : examStudentList) {
             practiceCourseInfos.add(buildPracticeCourseInfo(examStudent, examBean));
         }