deason 3 роки тому
батько
коміт
03cf7c549f
1 змінених файлів з 32 додано та 12 видалено
  1. 32 12
      src/modules/basic/view/school_config.vue

+ 32 - 12
src/modules/basic/view/school_config.vue

@@ -91,8 +91,15 @@
             v-model="ruleForm.IDENTIFICATION_OF_LIVING_BODY_SCHEME"
             class="input"
           >
-            <el-radio label="S1">FaceID</el-radio>
-            <el-radio label="S2">自研活体</el-radio>
+            <el-radio label="S1" :disabled="ruleForm.PC_CLIENT_ENABLED"
+              >FaceID</el-radio
+            >
+            <el-radio label="S2" :disabled="ruleForm.PC_CLIENT_ENABLED"
+              >自研活体</el-radio
+            >
+            <el-radio label="S3" :disabled="!ruleForm.PC_CLIENT_ENABLED"
+              >C端活体</el-radio
+            >
           </el-radio-group>
         </el-form-item>
 
@@ -182,17 +189,27 @@ export default {
       }
     };
 
+    let checkFaceType = (rule, value, callback) => {
+      if (this.ruleForm.PC_CLIENT_ENABLED) {
+        if (value != "S3") {
+          return callback(new Error("请选择可用的 “活体检测方案”"));
+        }
+      } else {
+        if (value == "S3") {
+          return callback(new Error("请选择可用的 “活体检测方案”"));
+        }
+      }
+      callback();
+    };
+
     let checkActionOptions = (rule, value, callback) => {
       let pcClientEnabled = this.ruleForm.PC_CLIENT_ENABLED;
       if (pcClientEnabled) {
         if (this.ruleForm.ACTION_NUM != this.ruleForm.ACTION_OPTIONS.length) {
-          callback(new Error("动作个数与动作选项数量不一致"));
-        } else {
-          callback();
+          return callback(new Error("动作个数与动作选项数量不一致"));
         }
-      } else {
-        callback();
       }
+      callback();
     };
 
     let checkDuration = (rule, value, callback) => {
@@ -200,13 +217,10 @@ export default {
       if (pcClientEnabled) {
         let reg = /^[1-9][0-9]*$/;
         if (!value.match(reg) || value < 5 || value > 20) {
-          callback(new Error("范围5至20之间"));
-        } else {
-          callback();
+          return callback(new Error("范围5至20之间"));
         }
-      } else {
-        callback();
       }
+      callback();
     };
 
     return {
@@ -240,6 +254,12 @@ export default {
             trigger: "change",
           },
         ],
+        IDENTIFICATION_OF_LIVING_BODY_SCHEME: [
+          {
+            validator: checkFaceType,
+            trigger: "change",
+          },
+        ],
         ACTION_OPTIONS: [
           {
             validator: checkActionOptions,