WANG пре 6 година
родитељ
комит
6e9bb0046c
1 измењених фајлова са 81 додато и 5 уклоњено
  1. 81 5
      src/modules/examwork/view/onlineExam.vue

+ 81 - 5
src/modules/examwork/view/onlineExam.vue

@@ -243,25 +243,28 @@
                   </el-form-item>
                 </el-row>
                 <el-row v-show="form.properties.IS_FACE_ENABLE == 'true'">
-                  <el-form-item label="抓拍间隔">
+                  <el-form-item label="抓拍间隔" prop="SNAPSHOT_INTERVAL">
                     <el-input
-                      v-model.number="form.properties.SNAPSHOT_INTERVAL"
+                      v-model.trim.number="form.properties.SNAPSHOT_INTERVAL"
                       auto-complete="off"
                     ></el-input>
                   </el-form-item>
                   <el-form-item label="分钟"></el-form-item>
                 </el-row>
                 <el-row v-show="form.properties.IS_FACE_ENABLE == 'true'">
-                  <el-form-item label="预警阀值">
+                  <el-form-item label="预警阀值" prop="WARN_THRESHOLD">
                     <el-input
-                      v-model.number="form.properties.WARN_THRESHOLD"
+                      v-model.trim.number="form.properties.WARN_THRESHOLD"
                       auto-complete="off"
                     ></el-input>
                   </el-form-item>
                   <el-form-item label="%"></el-form-item>
                 </el-row>
                 <el-row v-show="form.properties.IS_FACE_ENABLE == 'true'">
-                  <el-form-item label="真实性预警阀值">
+                  <el-form-item
+                    label="真实性预警阀值"
+                    prop="LIVING_WARN_THRESHOLD"
+                  >
                     <el-input
                       v-model.number="form.properties.LIVING_WARN_THRESHOLD"
                       auto-complete="off"
@@ -379,6 +382,62 @@ let validateExamReconnectTime = (rule, value, callback) => {
   }
 };
 
+let validateSnapshotInterval = (rule, value, callback) => {
+  let isFaceEnable = _this.form.properties.IS_FACE_ENABLE;
+  let snapshotnterval = _this.form.properties.SNAPSHOT_INTERVAL;
+  let duration = _this.form.duration;
+  if (isFaceEnable == "true") {
+    if (snapshotnterval == "") {
+      callback(new Error("请输入抓拍间隔"));
+      _this.activeName = "tab4";
+    } else if (!snapshotnterval.toString().match(/^[1-9]\d*$/)) {
+      callback(new Error("只能是正整数"));
+      _this.activeName = "tab4";
+    } else if (snapshotnterval > duration) {
+      callback(new Error("抓拍间隔不能大于考试时长"));
+      _this.activeName = "tab4";
+    } else {
+      callback();
+    }
+  } else {
+    callback();
+  }
+};
+let validateWarnThreshold = (rule, value, callback) => {
+  let isFaceEnable = _this.form.properties.IS_FACE_ENABLE;
+  let warnThreshold = _this.form.properties.WARN_THRESHOLD;
+  if (isFaceEnable == "true") {
+    if (warnThreshold == "") {
+      callback(new Error("请输入预警阀值"));
+      _this.activeName = "tab4";
+    } else if (!warnThreshold.toString().match(/^[1-9]\d*$/)) {
+      callback(new Error("只能是正整数"));
+      _this.activeName = "tab4";
+    } else {
+      callback();
+    }
+  } else {
+    callback();
+  }
+};
+let validateLivingWarnThreshold = (rule, value, callback) => {
+  let isFaceEnable = _this.form.properties.IS_FACE_ENABLE;
+  let livingWarnThreshold = _this.form.properties.LIVING_WARN_THRESHOLD;
+  if (isFaceEnable == "true") {
+    if (livingWarnThreshold == "") {
+      callback(new Error("请输入真实性预警阀值"));
+      _this.activeName = "tab4";
+    } else if (!livingWarnThreshold.toString().match(/^[1-9]\d*$/)) {
+      callback(new Error("只能是正整数"));
+      _this.activeName = "tab4";
+    } else {
+      callback();
+    }
+  } else {
+    callback();
+  }
+};
+
 export default {
   data() {
     return {
@@ -439,6 +498,23 @@ export default {
             validator: validateExamReconnectTime,
             trigger: "blur"
           }
+        ],
+        SNAPSHOT_INTERVAL: [
+          {
+            required: true,
+            validator: validateSnapshotInterval,
+            trigger: "blur"
+          }
+        ],
+        WARN_THRESHOLD: [
+          { required: true, validator: validateWarnThreshold, trigger: "blur" }
+        ],
+        LIVING_WARN_THRESHOLD: [
+          {
+            required: true,
+            validator: validateLivingWarnThreshold,
+            trigger: "blur"
+          }
         ]
       }
     };