From 2c461eb9efb980d55dfd7407ee70088fc90a4a7a Mon Sep 17 00:00:00 2001
From: 钟日健 <5689795+arsn@user.noreply.gitee.com>
Date: Tue, 08 Feb 2022 14:24:31 +0800
Subject: [PATCH] 保安员详情修改

---
 src/views/trainExam/singleperformance.vue |  116 +++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 90 insertions(+), 26 deletions(-)

diff --git a/src/views/trainExam/singleperformance.vue b/src/views/trainExam/singleperformance.vue
index c0075b2..878fc07 100644
--- a/src/views/trainExam/singleperformance.vue
+++ b/src/views/trainExam/singleperformance.vue
@@ -2,14 +2,19 @@
  * @Author: Morpheus
  * @Date: 2021-07-05 16:31:54
  * @Last Modified by: liu
- * @Last Modified time: 2021-10-26 15:38:19
+ * @Last Modified time: 2021-12-10 10:01:11
  * menu-name 成绩查看
  */
 <template>
   <el-row class="morpheus-box-score">
     <el-col :span="24">
       <el-card>
-        <div class="exam-card-body">
+        <div
+          :class="[
+            'exam-card-body',
+            $store.state.control.windowWidth >= 1024 ? 'tooRowSearch' : '',
+          ]"
+        >
           <avue-crud
             v-model="obj"
             class="company-box"
@@ -18,6 +23,7 @@
             :table-loading="questionBankLoading"
             :data="questionBankData"
             ref="questionBankCrud"
+            @sort-change="sortChange"
             :permission="permissionList"
             :page.sync="questionBankPage"
             @on-load="questionBankOnLoad"
@@ -109,6 +115,7 @@
 import { mapGetters } from "vuex";
 import { getRoleDetail } from "@/api/system/role";
 import Qs from "qs";
+import { getToken } from "@/util/auth";
 export default {
   data() {
     var validatePass = (rule, value, callback) => {
@@ -144,6 +151,8 @@
         // title: '成绩',
         align: "center",
         height: "auto",
+        sort:"",
+      sortName:"",
         calcHeight: 80,
         tip: false,
         searchShow: true,
@@ -156,6 +165,7 @@
         menu: false,
         menuWidth: 136,
         labelWidth: 120,
+        ...this.$store.state.control.clearOtherBut,
         column: [
           {
             label: "考试时间",
@@ -183,12 +193,13 @@
             viewDisplay: false,
           },
           {
-            label: "考试名称",
-            prop: "examName",
-            search: true,
-            searchSpan: 5,
-            slot: true,
-            viewDisplay: false,
+            label: "考试时间",
+            prop: "startTime",
+            type: "datetime",
+            format: "yyyy-MM-dd",
+            valueFormat: "yyyy-MM-dd",
+            width: 90,
+            viewDisplay: true,
             // 表单新增时是否禁止
             addDisabled: false,
             // 表单新增时是否可见
@@ -197,25 +208,26 @@
             addDetail: false,
             // 表单编辑时是否禁止
             editDisabled: true,
+            viewDisabled: true,
             // 表单编辑时是否可见
-            editDisplay: false,
+            editDisplay: true,
             // 表单编辑时是否为查看模式
             editDetail: false,
             rules: [
               {
                 required: true,
-                message: "请输入试卷名称",
+                message: "请输入考试时间",
                 trigger: "blur",
               },
             ],
-            // overHidden:true,
-            minWidth: 230,
+            overHidden:true,
           },
           {
             label: "姓名",
             prop: "securityName",
             search: true,
             searchSpan: 3,
+            searchLabelWidth: 50,
             slot: true,
             viewDisplay: true,
             // 表单新增时是否禁止
@@ -245,7 +257,7 @@
             label: "身份证号",
             prop: "account",
             search: true,
-            searchSpan: 4,
+            searchSpan: 5,
             slot: true,
             // 表单新增时是否禁止
             addDisabled: false,
@@ -299,6 +311,7 @@
             label: "所属公司",
             prop: "companyName",
             search: true,
+            sortable: true,
             searchSpan: 4,
             // dicUrl: '/api/blade-system/dept/tree',
             // props: {
@@ -373,12 +386,12 @@
             editDetail: false,
           },
           {
-            label: "状态",
+            label: "考试状态",
             prop: "isExam",
             type: "select",
             slot: true,
             search: true,
-            searchSpan: 3,
+            searchSpan: 4,
             dicData: [
               {
                 label: "发布成绩",
@@ -387,6 +400,14 @@
               {
                 label: "考试中",
                 value: 3,
+              },
+              {
+                label: "纸质考试",
+                value: 5,
+              },
+              {
+                label: "缺考",
+                value: 4,
               },
             ],
             width: 90,
@@ -414,6 +435,7 @@
             label: "理论成绩",
             prop: "theoryGrade",
             slot: true,
+            sortable: true,
             // 表单新增时是否禁止
             addDisabled: false,
             // 表单新增时是否可见
@@ -426,12 +448,13 @@
             editDisplay: true,
             // 表单编辑时是否为查看模式
             editDetail: false,
-            width: 68,
+            width: 95,
           },
           {
             label: "实操成绩",
             prop: "learnGrade",
             slot: true,
+            sortable: true,
             // 表单新增时是否禁止
             addDisabled: false,
             // 表单新增时是否可见
@@ -444,7 +467,7 @@
             editDisplay: true,
             // 表单编辑时是否为查看模式
             editDetail: false,
-            width: 68,
+            width: 95,
             rules: [
               { validator: validatePass, required: true, trigger: "blur" },
             ],
@@ -453,6 +476,7 @@
             label: "总成绩",
             prop: "allGrade",
             slot: true,
+            sortable: true,
             // 表单新增时是否禁止
             addDisabled: false,
             // 表单新增时是否可见
@@ -465,7 +489,7 @@
             editDisplay: true,
             // 表单编辑时是否为查看模式
             editDetail: false,
-            width: 58,
+            width: 80,
             rules: [
               {
                 required: true,
@@ -478,11 +502,11 @@
             label: "是否合格",
             prop: "qualified",
             type: "select",
+            sortable: true,
             slot: true,
             search: true,
-            searchSpan: 3,
-            width: 110,
-            width: 68,
+            searchSpan: 4,
+            width: 120,
             dicData: [
               {
                 label: "合格",
@@ -525,7 +549,8 @@
       questionBankPage: {
         pageSize: 10,
         currentPage: 1,
-        total: 16,
+        total: 0,
+        ...this.$store.state.control.changePageSize,
       },
       questionBankQuery: {},
       questionBankSelectionList: [],
@@ -533,7 +558,8 @@
   },
   created() {
     // console.log(this.$route.query,111);
-    this.questionBankSearch["examName"] = this.$route.query.examName;
+    this.questionBankSearch["examId"] = this.$route.query.id;
+    // console.log(this.$route.query,111);
   },
   mounted() {},
   computed: {
@@ -561,6 +587,30 @@
         query: obj,
       });
     },
+    //排序
+    sortChange(value) {
+      if(value.order=="ascending"){
+        this.sort = "asc";
+      }
+      if(value.order=="descending"){
+        this.sort = "desc";
+      }
+      this.sortName = value.prop;
+      //字段匹配
+      if(value.prop=="theoryGrade"){
+        this.sortName = "theory_grade";
+      }
+      if(value.prop=="learnGrade"){
+        this.sortName = "learn_grade";
+      }
+      if(value.prop=="allGrade"){
+        this.sortName = "all_grade";
+      }
+      if(value.prop=="companyName"){
+        this.sortName = "companyName";
+      }
+      this.questionBankOnLoad(this.questionBankPage);
+    },
     questionBankOnLoad(page, params = {}) {
       //判断角色,如果是保安公司管理员或保安,只能查看当前公司的考试成绩
       var that = this;
@@ -570,7 +620,11 @@
       roleIds.forEach((roleId) => {
         getRoleDetail(roleId).then((res) => {
           var roleAlias = res.data.data.roleAlias;
-          if (roleAlias == "保安公司管理员" || roleAlias == "保安") {
+          if (
+            roleAlias == "保安公司管理员" ||
+            roleAlias == "保安" ||
+            roleAlias == "分公司管理员"
+          ) {
             //如果是保安公司管理员
             params["deptId"] = that.userInfo.dept_id;
           }
@@ -580,6 +634,12 @@
           }
           that.questionBankLoading = false;
           params["examType"] = 2;
+          if(this.sort){
+            params["sort"] = this.sort;
+          }
+          if(this.sortName){
+            params["sortName"] = this.sortName;
+          }
           getList(
             page.currentPage,
             page.pageSize,
@@ -657,7 +717,7 @@
           isExam: this.questionBankSearch.isExam,
           qualified: this.questionBankSearch.qualified,
           securityName: this.questionBankSearch.securityName,
-          examName: this.questionBankSearch.examName,
+          examId:this.questionBankSearch.examId,
         };
         //导出
         if (
@@ -672,9 +732,13 @@
           data["trainUnitId"] = this.userInfo.dept_id;
         }
         data["examType"] = 2;
+        console.log(data,1234567989);
         //序列号url形式,用&拼接
         data = Qs.stringify(data);
-        window.open(`/api/examScore/export-examScore?` + data);
+        window.open(`/api/examScore/export-examScore?${
+            this.website.tokenHeader
+          }=${getToken()}&` + data
+        );
       });
     },
   },

--
Gitblit v1.9.3