Explorar o código

feat: 卷库查询新增导出

zhangjie hai 1 mes
pai
achega
d61ecfab2f
Modificáronse 2 ficheiros con 55 adicións e 0 borrados
  1. 8 0
      src/modules/exam/api.js
  2. 47 0
      src/modules/exam/views/TaskPaperManage.vue

+ 8 - 0
src/modules/exam/api.js

@@ -202,6 +202,9 @@ export const restartTaskPaper = ({ examTaskId, paperType }) => {
 export const taskPaperApplyEdit = (datas) => {
   return $post("/api/admin/exam/task/paper_update", datas);
 };
+export const taskPaperLinkStudent = (datas) => {
+  return $postParam("/api/admin/exam/task/relate_studentse", datas);
+};
 export const downloadPaper = (examTaskId) => {
   return $postParam(
     "/api/admin/exam/task/paper_download",
@@ -209,6 +212,11 @@ export const downloadPaper = (examTaskId) => {
     { responseType: "blob" }
   );
 };
+export const downloadExamTaskPaperList = (datas) => {
+  return $postParam("/api/admin/exam/task/export_paper_list", datas, {
+    responseType: "blob",
+  });
+};
 export const paperAndCardBatchExport = (datas) => {
   return $postParam("/api/admin/exam/task/paper_card_download_pdf", datas);
 };

+ 47 - 0
src/modules/exam/views/TaskPaperManage.vue

@@ -31,6 +31,24 @@
       <div class="box-justify">
         <div></div>
         <div>
+          <el-button
+            v-if="checkPrivilege('button', 'AutoRelateStudent')"
+            icon="el-icon-link"
+            type="primary"
+            :loading="loading"
+            @click="toLinkStudent"
+          >
+            关联考生
+          </el-button>
+          <el-button
+            v-if="checkPrivilege('button', 'ExportPaperList')"
+            icon="el-icon-download"
+            type="primary"
+            :loading="loading"
+            @click="toExportPaperList"
+          >
+            下载试卷清单
+          </el-button>
           <el-button
             v-if="checkPrivilege('button', 'BatchDownload')"
             icon="el-icon-download"
@@ -219,6 +237,8 @@ import {
   taskPaperListPage,
   ableTaskPaper,
   downloadPaper,
+  downloadExamTaskPaperList,
+  taskPaperLinkStudent,
   paperAndCardBatchExport,
   cancelTaskPaper,
   restartTaskPaper,
@@ -406,6 +426,33 @@ export default {
       if (!res) return;
       this.$message.success("下载成功!");
     },
+    async toLinkStudent() {
+      if (this.loading) return;
+
+      this.loading = true;
+      const res = await taskPaperLinkStudent({
+        examId: this.filter.examId,
+      }).catch(() => {});
+      this.loading = false;
+
+      if (!res) return;
+      this.$message.success("关联成功!");
+      this.getList();
+    },
+    async toExportPaperList() {
+      if (this.loading) return;
+
+      this.loading = true;
+      const res = await downloadByApi(() => {
+        return downloadExamTaskPaperList(this.filter);
+      }, "").catch((e) => {
+        this.$message.error(e || "下载失败,请重新尝试!");
+      });
+      this.loading = false;
+
+      if (!res) return;
+      this.$message.success("下载成功!");
+    },
     async toBatchExport() {
       // 异步导出
       if (this.loading) return;