瀏覽代碼

导出考生

Michael Wang 4 年之前
父節點
當前提交
3873fec0d2

+ 30 - 0
src/api/examwork-examstudent.js

@@ -36,6 +36,36 @@ export function searchExamStudents({
   );
 }
 
+export function exportExamStudent({
+  examId = "",
+  activityId = "",
+  roomCode = "",
+  courseCode = "",
+  name = "",
+  identity = "",
+  grade = "",
+  classNo = "",
+  hasPhoto = "",
+}) {
+  const data = pickBy(
+    {
+      examId,
+      activityId,
+      roomCode,
+      name,
+      courseCode,
+      identity,
+      grade,
+      classNo,
+      hasPhoto,
+    },
+    (v) => v !== "" && v !== null
+  );
+  return httpApp.post(
+    "/api/admin/examStudent/export?" + object2QueryString(data)
+  );
+}
+
 export function saveExamStudent({
   id = "",
   examId = "",

+ 1 - 0
src/constant/constants.js

@@ -119,6 +119,7 @@ export const IMPORT_EXPORT_TASKS = [
   { code: "IMPORT_EXAM_PAPER", name: "导入试卷" },
   { code: "IMPORT_INVIGILATE_USER", name: "导入监考员" },
   { code: "EXPORT_INVIGILATE_USER", name: "导出监考员" },
+  { code: "EXPORT_EXAM_STUDENT", name: "导出考生" },
 ];
 
 let domain;

+ 18 - 1
src/features/examwork/ExamStudentManagement/ExamStudentManagement.vue

@@ -54,7 +54,12 @@
             @click="toggleEnableExamStudentArray({ enable: 0 })"
             >禁用</el-button
           >
-          <!-- <el-button>导入</el-button> -->
+          <el-button
+            type="primary"
+            icon="icon icon-upload"
+            @click="exportExamStudent"
+            >导出</el-button
+          >
         </div>
       </div>
     </div>
@@ -154,6 +159,7 @@
 
 <script>
 import {
+  exportExamStudent,
   searchExamStudents,
   toggleEnableExamStudent,
   toggleEnableExamStudentArray,
@@ -256,6 +262,17 @@ export default {
       this.selectedBasePhoto = url;
       this.basePhotoDialogVisible = true;
     },
+    async exportExamStudent() {
+      try {
+        const valid = await this.$refs.form.validate();
+        if (!valid) return;
+      } catch (error) {
+        console.log(error);
+        return;
+      }
+      await exportExamStudent(this.form);
+      this.$notify({ title: "导出任务已成功启动", type: "success" });
+    },
   },
 };
 </script>

+ 1 - 1
src/features/examwork/ImportExportTask/ImportExportTask.vue

@@ -141,7 +141,7 @@ export default {
   },
   filters: {
     taskName(code) {
-      return IMPORT_EXPORT_TASKS.find((v) => v.code == code).name;
+      return IMPORT_EXPORT_TASKS.find((v) => v.code == code)?.name;
     },
   },
 };