Selaa lähdekoodia

新活体调试bug修复

lideyin 5 vuotta sitten
vanhempi
commit
a321b97101

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

@@ -4,6 +4,7 @@ import cn.com.qmth.examcloud.api.commons.security.bean.User;
 import cn.com.qmth.examcloud.commons.exception.StatusException;
 import cn.com.qmth.examcloud.core.oe.common.base.Constants;
 import cn.com.qmth.examcloud.core.oe.common.entity.ExamRecordDataEntity;
+import cn.com.qmth.examcloud.core.oe.common.entity.FaceBiopsyItemEntity;
 import cn.com.qmth.examcloud.core.oe.common.entity.FaceBiopsyItemStepEntity;
 import cn.com.qmth.examcloud.core.oe.common.enums.ExamProperties;
 import cn.com.qmth.examcloud.core.oe.common.enums.FaceBiopsyType;
@@ -99,6 +100,16 @@ public class FaceBiopsyController extends ControllerSupport {
         if (req.getFaceBiopsyItemId() == null) {
             throw new StatusException("200106", "人脸活体检测明细id不允许为空");
         }
+        FaceBiopsyItemEntity faceBiopsyItemEntity = GlobalHelper.getEntity(faceBiopsyItemRepo, req.getFaceBiopsyItemId(),
+                FaceBiopsyItemEntity.class);
+        if (faceBiopsyItemEntity==null){
+            throw new StatusException("200111", "人脸活体检测明细id不存在");
+        }
+
+        if (faceBiopsyItemEntity.getCompleted()==true){
+            throw new StatusException("200112", "不允许操作已结束的人脸活体检测数据");
+        }
+
         if (req.getVerifySteps() == null || req.getVerifySteps().isEmpty()) {
             throw new StatusException("200107", "活体检测步骤不允许为空");
         }
@@ -111,7 +122,7 @@ public class FaceBiopsyController extends ControllerSupport {
             throw new StatusException("200109", "活体检测执行动作不允许为空");
         }
 
-        if (verifyStepsAllMatch(req.getFaceBiopsyItemId(), req.getExamRecordDataId(), req.getVerifySteps())) {
+        if (!verifyStepsAllMatch(req.getFaceBiopsyItemId(), req.getExamRecordDataId(), req.getVerifySteps())) {
             throw new StatusException("200110", "活体检测步骤与原始定义不匹配");
         }