Преглед изворни кода

feat: 统计页面接口调试

zhangjie пре 11 месеци
родитељ
комит
6fb07962ab

+ 6 - 0
src/constants/enumerate.js

@@ -415,3 +415,9 @@ export const COURSE_TYPE = {
   ENGINEERING_PRACTICE_AND_GRADUATE_DESIGN: "工程实践与毕业设计(论文)",
   OTHER: "其他",
 };
+
+// task
+export const TASK_STATUS = {
+  FINISH: "已完成",
+  UN_FINISH: "未完成",
+};

+ 4 - 4
src/modules/statistics/api.js

@@ -2,19 +2,19 @@ import { $postParam } from "@/plugins/axios";
 
 // scan-task-stat
 export const scanTaskStatListPage = (datas) => {
-  return $postParam("/api/admin/exam/structure/list_user_class", datas);
+  return $postParam("/api/admin/statistics/scan/count", datas);
 };
 export const scanTaskStatExport = (datas) => {
-  return $postParam("/api/admin/exam/structure/list_user_class", datas, {
+  return $postParam("/api/admin/statistics/scan/count/export", datas, {
     responseType: "blob",
   });
 };
 // print-task-stat
 export const printTaskStatListPage = (datas) => {
-  return $postParam("/api/admin/exam/structure/list_user_class", datas);
+  return $postParam("/api/admin/statistics/print/count", datas);
 };
 export const printTaskStatExport = (datas) => {
-  return $postParam("/api/admin/exam/structure/list_user_class", datas, {
+  return $postParam("/api/admin/statistics/print/count/export", datas, {
     responseType: "blob",
   });
 };

+ 4 - 4
src/modules/statistics/router.js

@@ -3,13 +3,13 @@ import ScanTaskStat from "./views/ScanTaskStat.vue";
 
 export default [
   {
-    path: "/statistics/marker-login",
-    name: "PrintTaskStat",
+    path: "/statistics/print-task",
+    name: "PrintCount",
     component: PrintTaskStat,
   },
   {
-    path: "/statistics/score-archive",
-    name: "ScanTaskStat",
+    path: "/statistics/scan-task",
+    name: "ScanCount",
     component: ScanTaskStat,
   },
 ];

+ 31 - 21
src/modules/statistics/views/PrintTaskStat.vue

@@ -4,7 +4,7 @@
       <el-form ref="FilterForm" label-position="left" label-width="90px" inline>
         <template v-if="checkPrivilege('condition', 'condition')">
           <secp-select
-            v-model="filterSe"
+            v-model="filter"
             defaultSelectExam
             @exam-default="search"
           ></secp-select>
@@ -25,13 +25,13 @@
           </el-form-item>
           <el-form-item label="状态:">
             <el-select
-              v-model="filter.status"
+              v-model="filter.finishStatus"
               placeholder="状态"
               clearable
               style="width: 120px"
             >
               <el-option
-                v-for="(val, key) in DATA_TASK_STATUS"
+                v-for="(val, key) in TASK_STATUS"
                 :key="key"
                 :value="key"
                 :label="val"
@@ -72,33 +72,44 @@
           :index="indexMethod"
         ></el-table-column>
         <el-table-column
-          prop="printPlanName"
-          label="印刷计划"
-          min-width="160"
-        ></el-table-column>
-        <el-table-column label="课程(代码)" min-width="260">
-          <template slot-scope="scope">
-            {{ scope.row.courseName | defaultFieldFilter }}({{
-              scope.row.courseCode | defaultFieldFilter
-            }})
-          </template>
+          prop="courseNameCode"
+          label="课程(代码)"
+          min-width="300"
+        >
         </el-table-column>
         <el-table-column prop="paperNumber" label="试卷编号" width="200">
         </el-table-column>
         <el-table-column prop="type" label="题卡类型" width="100">
-          <span slot-scope="scope">{{ scope.row.type | cardTypeFilter }}</span>
+          <span slot-scope="scope">{{
+            scope.row.cardType | cardTypeFilter
+          }}</span>
         </el-table-column>
-        <el-table-column prop="openCollege" label="开课学院" min-width="160">
+        <el-table-column prop="college" label="开课学院" min-width="160">
         </el-table-column>
-        <el-table-column prop="createMethod" label="总考场数" width="100">
+        <el-table-column prop="totalExamination" label="总考场数" width="100">
         </el-table-column>
         <el-table-column prop="createMethod" label="已生成/未生成" width="120">
+          <template slot-scope="scope">
+            <span class="color-primary">{{ scope.row.generate }}</span>
+            <span class="mlr-1">/</span>
+            <span class="color-danger">{{ scope.row.unGenerated }}</span>
+          </template>
         </el-table-column>
         <el-table-column prop="createMethod" label="已印刷/未印刷" width="120">
+          <template slot-scope="scope">
+            <span class="color-primary">{{ scope.row.printed }}</span>
+            <span class="mlr-1">/</span>
+            <span class="color-danger">{{ scope.row.unPrinted }}</span>
+          </template>
         </el-table-column>
         <el-table-column prop="createMethod" label="已打回/已作废" width="120">
+          <template slot-scope="scope">
+            <span>{{ scope.row.invalid }}</span>
+            <span class="mlr-1">/</span>
+            <span class="color-danger">{{ scope.row.reject }}</span>
+          </template>
         </el-table-column>
-        <el-table-column prop="status" label="状态" width="100">
+        <el-table-column prop="finishStatusStr" label="状态" width="100">
         </el-table-column>
       </el-table>
       <div class="part-page">
@@ -119,7 +130,7 @@
 </template>
 
 <script>
-import { CARD_TYPE, DATA_TASK_STATUS } from "../../../constants/enumerate";
+import { CARD_TYPE, TASK_STATUS } from "../../../constants/enumerate";
 import { printTaskStatListPage, printTaskStatExport } from "../api";
 import { downloadByApi } from "@/plugins/download";
 
@@ -130,16 +141,15 @@ export default {
       filter: {
         semesterId: "",
         examId: "",
-        printPlanId: "",
         openCollegeId: "",
         courseId: "",
         paperNumber: "",
         cardType: "",
-        status: "",
+        finishStatus: "",
       },
       dataList: [],
       CARD_TYPE,
-      DATA_TASK_STATUS,
+      TASK_STATUS,
       current: 1,
       size: this.GLOBAL.pageSize,
       total: 0,

+ 15 - 14
src/modules/statistics/views/ScanTaskStat.vue

@@ -4,7 +4,7 @@
       <el-form ref="FilterForm" label-position="left" label-width="90px" inline>
         <template v-if="checkPrivilege('condition', 'condition')">
           <secp-select
-            v-model="filterSe"
+            v-model="filter"
             defaultSelectExam
             @exam-default="search"
           ></secp-select>
@@ -57,29 +57,30 @@
           :index="indexMethod"
         ></el-table-column>
         <el-table-column
-          prop="openCollege"
+          prop="college"
           label="开课学院"
           min-width="160"
         ></el-table-column>
-        <el-table-column label="课程(代码)" min-width="260">
-          <template slot-scope="scope">
-            {{ scope.row.courseName | defaultFieldFilter }}({{
-              scope.row.courseCode | defaultFieldFilter
-            }})
-          </template>
+        <el-table-column
+          prop="courseNameCode"
+          label="课程(代码)"
+          min-width="300"
+        >
         </el-table-column>
         <el-table-column prop="paperNumber" label="试卷编号" width="200">
         </el-table-column>
-        <el-table-column prop="type" label="题卡类型" width="100">
-          <span slot-scope="scope">{{ scope.row.type | cardTypeFilter }}</span>
+        <el-table-column prop="cardType" label="题卡类型" width="100">
+          <span slot-scope="scope">{{
+            scope.row.cardType | cardTypeFilter
+          }}</span>
         </el-table-column>
-        <el-table-column prop="createMethod" label="考生数" width="100">
+        <el-table-column prop="studentCount" label="考生数" width="100">
         </el-table-column>
-        <el-table-column prop="createMethod" label="已扫张数" width="100">
+        <el-table-column prop="sheetCount" label="已扫张数" width="100">
         </el-table-column>
-        <el-table-column prop="createMethod" label="缺考数" width="100">
+        <el-table-column prop="absentCount" label="缺考数" width="100">
         </el-table-column>
-        <el-table-column prop="createMethod" label="扫描进度" width="100">
+        <el-table-column prop="scanUploadRateStr" label="扫描进度" width="100">
         </el-table-column>
       </el-table>
       <div class="part-page">