Преглед на файлове

feat: 优化考试信息输入,重构交付数据处理逻辑

xieyong преди 1 седмица
родител
ревизия
661c1f548f
променени са 1 файла, в които са добавени 34 реда и са изтрити 22 реда
  1. 34 22
      src/views/safetyTraining/onlineTrainingPlans/deliver.vue

+ 34 - 22
src/views/safetyTraining/onlineTrainingPlans/deliver.vue

@@ -206,7 +206,10 @@
             </el-col>
             <el-col :span="8">
               <el-form-item label="考试地点:" required>
-                <el-input v-model="task.examPlace" placeholder="请输入考试地点" />
+                <el-input
+                  v-model="task.examPlace"
+                  placeholder="请输入考试地点"
+                />
               </el-form-item>
             </el-col>
           </el-row>
@@ -214,7 +217,10 @@
           <el-row :gutter="20">
             <el-col :span="8">
               <el-form-item label="考试时长:" required>
-                <el-input v-model="task.examDurationMinutes" placeholder="请输入">
+                <el-input
+                  v-model="task.examDurationMinutes"
+                  placeholder="请输入"
+                >
                   <template slot="append">分钟</template>
                 </el-input>
               </el-form-item>
@@ -238,7 +244,10 @@
                 required
                 :error="passScoreError(task)"
               >
-                <el-input v-model="task.passScore" placeholder="请输入合格分数" />
+                <el-input
+                  v-model="task.passScore"
+                  placeholder="请输入合格分数"
+                />
               </el-form-item>
             </el-col>
           </el-row>
@@ -303,7 +312,9 @@
       examType: '1',
       examPlace: exam?.examPlace || '',
       examDurationMinutes:
-        exam && exam.durationMinutes !== undefined && exam.durationMinutes !== null
+        exam &&
+        exam.durationMinutes !== undefined &&
+        exam.durationMinutes !== null
           ? exam.durationMinutes
           : '',
       totalScore:
@@ -539,25 +550,26 @@
           }
         }
         this.saving = true;
+        const deliverData = {
+          planId: this.plan.id,
+          taskList: this.tasks.map((task, index) => ({
+            trainingLecturer: task.trainingLecturer,
+            lecturerQualification: task.lecturerQualification,
+            trainingStartTime: task.trainingStartTime,
+            requiredCompleteTime: task.requiredCompleteTime,
+            trainingPersonIds: task.trainingPersons.map((item) => item.id),
+            examDurationMinutes: Number(task.examDurationMinutes),
+            examPlace: task.examPlace,
+            passScore: Number(task.passScore),
+            examName: this.examNameText(index),
+            examType: task.examType,
+            totalScore: Number(task.totalScore),
+            needSignIn: !!task.needSignIn,
+            randomSort: !!task.randomSort
+          }))
+        };
         try {
-          await deliver({
-            planId: this.plan.id,
-            taskList: this.tasks.map((task, index) => ({
-              trainingLecturer: task.trainingLecturer,
-              lecturerQualification: task.lecturerQualification,
-              trainingStartTime: task.trainingStartTime,
-              requiredCompleteTime: task.requiredCompleteTime,
-              trainingPersonIds: task.trainingPersons.map((item) => item.id),
-              examDurationMinutes: Number(task.examDurationMinutes),
-              examPlace: task.examPlace,
-              passScore: Number(task.passScore),
-              examName: this.examNameText(index),
-              examType: task.examType,
-              totalScore: Number(task.totalScore),
-              needSignIn: !!task.needSignIn,
-              randomSort: !!task.randomSort
-            }))
-          });
+          await deliver(deliverData);
           this.$message.success('计划下达成功');
           this.visible = false;
           this.$emit('reload');