Quellcode durchsuchen

机构设置与批次设置联动;title展示禁用原因

Michael Wang vor 4 Jahren
Ursprung
Commit
3782464f72

+ 51 - 5
src/features/examwork/ExamManagement/ExamEdit.vue

@@ -1,5 +1,5 @@
 <template>
 <template>
-  <div>
+  <div v-loading="!orgSetting">
     <el-tabs v-model="activeName" type="card">
     <el-tabs v-model="activeName" type="card">
       <el-tab-pane label="考试规则设置" name="first">
       <el-tab-pane label="考试规则设置" name="first">
         <el-form
         <el-form
@@ -224,6 +224,8 @@
                 </el-radio>
                 </el-radio>
                 <el-radio
                 <el-radio
                   v-model="form.entryAuthenticationPolicy"
                   v-model="form.entryAuthenticationPolicy"
+                  :disabled="orgSettingDisableLiveness"
+                  :title="orgSettingDisableLiveness && '原因:机构禁用活体'"
                   label="LIVENESS_VERIFY"
                   label="LIVENESS_VERIFY"
                 >
                 >
                   安全级别:<span style="color: red; font-size: 20px;">
                   安全级别:<span style="color: red; font-size: 20px;">
@@ -239,12 +241,14 @@
             <el-form-item label="是否考中人脸识别">
             <el-form-item label="是否考中人脸识别">
               <el-radio
               <el-radio
                 :disabled="!!form.cameraPhotoUpload"
                 :disabled="!!form.cameraPhotoUpload"
+                :title="!!form.cameraPhotoUpload && '原因:拍照作答'"
                 v-model="form.inProcessFaceVerify"
                 v-model="form.inProcessFaceVerify"
                 :label="1"
                 :label="1"
                 >是
                 >是
               </el-radio>
               </el-radio>
               <el-radio
               <el-radio
                 :disabled="!!form.cameraPhotoUpload"
                 :disabled="!!form.cameraPhotoUpload"
+                :title="!!form.cameraPhotoUpload && '原因:拍照作答'"
                 v-model="form.inProcessFaceVerify"
                 v-model="form.inProcessFaceVerify"
                 :label="0"
                 :label="0"
                 >否
                 >否
@@ -255,12 +259,14 @@
             <el-form-item label="是否考中陌生人脸识别">
             <el-form-item label="是否考中陌生人脸识别">
               <el-radio
               <el-radio
                 :disabled="!!form.cameraPhotoUpload"
                 :disabled="!!form.cameraPhotoUpload"
+                :title="!!form.cameraPhotoUpload && '原因:拍照作答'"
                 v-model="form.inProcessFaceStrangerIgnore"
                 v-model="form.inProcessFaceStrangerIgnore"
                 :label="0"
                 :label="0"
                 >是
                 >是
               </el-radio>
               </el-radio>
               <el-radio
               <el-radio
                 :disabled="!!form.cameraPhotoUpload"
                 :disabled="!!form.cameraPhotoUpload"
+                :title="!!form.cameraPhotoUpload && '原因:拍照作答'"
                 v-model="form.inProcessFaceStrangerIgnore"
                 v-model="form.inProcessFaceStrangerIgnore"
                 :label="1"
                 :label="1"
                 >否
                 >否
@@ -271,12 +277,14 @@
             <el-form-item label="是否考开启真实性检测">
             <el-form-item label="是否考开启真实性检测">
               <el-radio
               <el-radio
                 :disabled="!!form.cameraPhotoUpload"
                 :disabled="!!form.cameraPhotoUpload"
+                :title="!!form.cameraPhotoUpload && '原因:拍照作答'"
                 v-model="form.inProcessRealnessVerify"
                 v-model="form.inProcessRealnessVerify"
                 :label="1"
                 :label="1"
                 >是
                 >是
               </el-radio>
               </el-radio>
               <el-radio
               <el-radio
                 :disabled="!!form.cameraPhotoUpload"
                 :disabled="!!form.cameraPhotoUpload"
+                :title="!!form.cameraPhotoUpload && '原因:拍照作答'"
                 v-model="form.inProcessRealnessVerify"
                 v-model="form.inProcessRealnessVerify"
                 :label="0"
                 :label="0"
                 >否
                 >否
@@ -286,13 +294,25 @@
           <el-row>
           <el-row>
             <el-form-item label="是否考中活体检测">
             <el-form-item label="是否考中活体检测">
               <el-radio
               <el-radio
-                :disabled="!!form.cameraPhotoUpload"
+                :disabled="
+                  !!form.cameraPhotoUpload || orgSettingDisableLiveness
+                "
+                :title="
+                  (!!form.cameraPhotoUpload || orgSettingDisableLiveness) &&
+                  '原因:机构禁用活体或选择拍照作答'
+                "
                 v-model="form.inProcessLivenessVerify"
                 v-model="form.inProcessLivenessVerify"
                 :label="1"
                 :label="1"
                 >是
                 >是
               </el-radio>
               </el-radio>
               <el-radio
               <el-radio
-                :disabled="!!form.cameraPhotoUpload"
+                :disabled="
+                  !!form.cameraPhotoUpload || orgSettingDisableLiveness
+                "
+                :title="
+                  (!!form.cameraPhotoUpload || orgSettingDisableLiveness) &&
+                  '原因:机构禁用活体或选择拍照作答'
+                "
                 v-model="form.inProcessLivenessVerify"
                 v-model="form.inProcessLivenessVerify"
                 :label="0"
                 :label="0"
                 >否
                 >否
@@ -339,24 +359,26 @@
             <el-form-item label="是否开启考生端监考直播">
             <el-form-item label="是否开启考生端监考直播">
               <el-radio
               <el-radio
                 :disabled="!!form.cameraPhotoUpload"
                 :disabled="!!form.cameraPhotoUpload"
+                :title="!!form.cameraPhotoUpload && '原因:拍照作答'"
                 v-model="form.monitorProxy"
                 v-model="form.monitorProxy"
                 :label="true"
                 :label="true"
                 >是
                 >是
               </el-radio>
               </el-radio>
               <el-radio
               <el-radio
                 :disabled="!!form.cameraPhotoUpload"
                 :disabled="!!form.cameraPhotoUpload"
+                :title="!!form.cameraPhotoUpload && '原因:拍照作答'"
                 v-model="form.monitorProxy"
                 v-model="form.monitorProxy"
                 :label="false"
                 :label="false"
                 >否
                 >否
               </el-radio>
               </el-radio>
             </el-form-item>
             </el-form-item>
           </el-row>
           </el-row>
-          <el-row>
+          <!-- <el-row>
             <el-form-item v-if="form.monitorProxy" label="是否需要视频回放">
             <el-form-item v-if="form.monitorProxy" label="是否需要视频回放">
               <el-radio v-model="form.monitorRecord" :label="1">是 </el-radio>
               <el-radio v-model="form.monitorRecord" :label="1">是 </el-radio>
               <el-radio v-model="form.monitorRecord" :label="0">否 </el-radio>
               <el-radio v-model="form.monitorRecord" :label="0">否 </el-radio>
             </el-form-item>
             </el-form-item>
-          </el-row>
+          </el-row> -->
           <el-row>
           <el-row>
             <el-form-item v-if="form.monitorProxy" label="电脑&手机监控方案">
             <el-form-item v-if="form.monitorProxy" label="电脑&手机监控方案">
               <el-checkbox-group v-model="form.monitorVideoSource">
               <el-checkbox-group v-model="form.monitorVideoSource">
@@ -367,6 +389,10 @@
                 <el-checkbox label="MOBILE_FIRST">手机主机位</el-checkbox>
                 <el-checkbox label="MOBILE_FIRST">手机主机位</el-checkbox>
                 <el-checkbox
                 <el-checkbox
                   :disabled="!form.monitorVideoSource.includes('MOBILE_FIRST')"
                   :disabled="!form.monitorVideoSource.includes('MOBILE_FIRST')"
+                  :title="
+                    !form.monitorVideoSource.includes('MOBILE_FIRST') &&
+                    '原因:先选择手机主机位'
+                  "
                   label="MOBILE_SECOND"
                   label="MOBILE_SECOND"
                   >手机辅机位</el-checkbox
                   >手机辅机位</el-checkbox
                 >
                 >
@@ -433,6 +459,7 @@ import ExamTypeSelect from "@/components/ExamTypeSelect";
 import MinuteInput from "@/components/MinuteInput";
 import MinuteInput from "@/components/MinuteInput";
 import { saveExam, getExamDetail } from "@/api/examwork-exam";
 import { saveExam, getExamDetail } from "@/api/examwork-exam";
 import { isNumber } from "lodash-es";
 import { isNumber } from "lodash-es";
+import { searchOrg } from "@/api/system-org";
 
 
 export default {
 export default {
   name: "ExamEdit",
   name: "ExamEdit",
@@ -473,6 +500,9 @@ export default {
         }
         }
       },
       },
     },
     },
+    orgSettingDisableLiveness() {
+      return !this.orgSetting?.enableLiveness;
+    },
   },
   },
   watch: {
   watch: {
     "form.mode": {
     "form.mode": {
@@ -555,6 +585,21 @@ export default {
       this.form.preNoticeClone = this.form.preNotice;
       this.form.preNoticeClone = this.form.preNotice;
       this.form.postNoticeClone = this.form.postNotice;
       this.form.postNoticeClone = this.form.postNotice;
     }
     }
+
+    // sleep
+    // await new Promise((res) =>
+    //   setTimeout(() => {
+    //     res();
+    //   }, 3000)
+    // );
+    const res = await searchOrg(this.$store.state.user.orgId);
+    this.orgSetting = res.data.data[0];
+    if (!this.orgSetting.enableLiveness) {
+      if (this.form.entryAuthenticationPolicy === "LIVENESS_VERIFY") {
+        this.form.entryAuthenticationPolicy = "FACE_VERIFY_FORCE";
+      }
+      this.form.inProcessLivenessVerify = 0;
+    }
   },
   },
   data() {
   data() {
     return {
     return {
@@ -628,6 +673,7 @@ export default {
           // message: "格式错误",
           // message: "格式错误",
         },
         },
       },
       },
+      orgSetting: null,
       loading: false,
       loading: false,
     };
     };
   },
   },

+ 1 - 1
src/features/system/OrgManagement/OrgManagementDialog.vue

@@ -63,7 +63,7 @@
         </el-form-item>
         </el-form-item>
       </el-row>
       </el-row>
       <el-row>
       <el-row>
-        <el-form-item label="是否视频转录" prop="enableMonitorRecord">
+        <el-form-item label="是否视频回放" prop="enableMonitorRecord">
           <el-radio-group
           <el-radio-group
             class="pull_right_sm"
             class="pull_right_sm"
             v-model="form.enableMonitorRecord"
             v-model="form.enableMonitorRecord"