Explorar el Código

批次编辑:代理属性

Michael Wang hace 4 años
padre
commit
bfa9a7b4c8
Se han modificado 1 ficheros con 33 adiciones y 26 borrados
  1. 33 26
      src/features/examwork/ExamManagement/ExamEdit.vue

+ 33 - 26
src/features/examwork/ExamManagement/ExamEdit.vue

@@ -74,31 +74,31 @@
           </el-row>
           <el-row>
             <el-form-item label="启用开考口令">
-              <el-radio v-model="form.enableShortCodeProxy" :label="1"
+              <el-radio v-model="enableShortCodeProxy" :label="true"
                 >是</el-radio
               >
-              <el-radio v-model="form.enableShortCodeProxy" :label="0"
+              <el-radio v-model="enableShortCodeProxy" :label="false"
                 >否</el-radio
               >
               <el-input
-                v-if="form.enableShortCodeProxy"
+                v-if="enableShortCodeProxy"
                 v-model.trim="form.shortCode"
               ></el-input>
             </el-form-item>
           </el-row>
           <el-row>
             <el-form-item label="是否允许断点续考">
-              <el-radio v-model="form.enableBreakProxy" :label="1">是</el-radio>
-              <el-radio v-model="form.enableBreakProxy" :label="0">否</el-radio>
+              <el-radio v-model="enableBreakProxy" :label="true">是</el-radio>
+              <el-radio v-model="enableBreakProxy" :label="false">否</el-radio>
             </el-form-item>
           </el-row>
           <el-row>
-            <el-form-item v-if="form.enableBreakProxy" label="断点次数">
+            <el-form-item v-if="enableBreakProxy" label="断点次数">
               <el-input v-model.trim="form.breakResumeCount"></el-input>
             </el-form-item>
           </el-row>
           <el-row>
-            <el-form-item v-if="form.enableBreakProxy" label="断点时长(分钟)">
+            <el-form-item v-if="enableBreakProxy" label="断点时长(分钟)">
               <MinuteInput v-model.trim="form.breakExpireSeconds">
               </MinuteInput>
             </el-form-item>
@@ -390,6 +390,32 @@ export default {
     isModeAnytime() {
       return this.form.mode === "ANYTIME";
     },
+    enableShortCodeProxy: {
+      get() {
+        return !!this.form.shortCode;
+      },
+      set(v) {
+        if (v) {
+          this.form.shortCode = "123";
+        } else {
+          this.form.shortCode = null;
+        }
+      },
+    },
+    enableBreakProxy: {
+      get() {
+        return !!(this.form.breakResumeCount || this.form.breakExpireSeconds);
+      },
+      set(v) {
+        if (v) {
+          this.form.breakResumeCount = 0;
+          this.form.breakExpireSeconds = 0;
+        } else {
+          this.form.breakResumeCount = null;
+          this.form.breakExpireSeconds = null;
+        }
+      },
+    },
   },
   watch: {
     "form.startEndTimeProxy": {
@@ -429,23 +455,6 @@ export default {
         }
       },
     },
-    "form.enableShortCodeProxy": {
-      immediate: true,
-      handler(v) {
-        if (!v) {
-          this.form.shortCode = null;
-        }
-      },
-    },
-    "form.enableBreakProxy": {
-      immediate: true,
-      handler(v) {
-        if (!v) {
-          this.form.breakResumeCount = null;
-          this.form.breakExpireSeconds = null;
-        }
-      },
-    },
   },
   async created() {
     if (this.isEdit) {
@@ -473,9 +482,7 @@ export default {
         openingSeconds: 0,
         minDurationSeconds: 0,
         forceFinish: 1,
-        enableShortCodeProxy: 1,
         shortCode: "",
-        enableBreakProxy: 1,
         breakResumeCount: 0,
         breakExpireSeconds: 0,
         reexamAuditing: 0,