From e0001b944ebd202e0640d164d7f1fb439193f7d4 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Thu, 04 Nov 2021 18:55:18 +0800
Subject: [PATCH] 培训考试成绩修改相关

---
 src/views/trainExam/performance.vue | 1757 ++++++++++++++++++++++++++++++++--------------------------
 1 files changed, 967 insertions(+), 790 deletions(-)

diff --git a/src/views/trainExam/performance.vue b/src/views/trainExam/performance.vue
index bd5c09c..6ef70be 100644
--- a/src/views/trainExam/performance.vue
+++ b/src/views/trainExam/performance.vue
@@ -1,45 +1,48 @@
 /*
  * @Author: Morpheus
  * @Date: 2021-07-05 16:31:54
- * @Last Modified by: liu
- * @Last Modified time: 2021-10-26 15:44:52
+ * @Last Modified by: Morpheus
+ * @Last Modified time: 2021-11-04 16:18:32
  * menu-name 成绩管理
  */
 <template>
-  <el-row class="morpheus-box">
-    <el-col :span="24" class="recruitmentManagement">
-      <el-card>
-        <div class="exam-card-body">
-          <avue-crud
-            v-model="obj"
-            class="company-box"
-            :option="questionBankOption"
-            :search.sync="questionBankSearch"
-            :table-loading="questionBankLoading"
-            :data="questionBankData"
-            :permission="permissionList"
-            ref="questionBankCrud"
-            :page.sync="questionBankPage"
-            @on-load="questionBankOnLoad"
-            @selection-change="questionBankSelectionChange"
-            @search-change="questionBankSearchChange"
-            @search-reset="questionBankSearchReset"
-            @current-change="questionBankCurrentChange"
-            @size-change="questionBankSizeChange"
-            @row-update="questionBankRowUpdate"
-            @refresh-change="refreshChange"
-          >
-            <template slot-scope="{ row }" slot="theoryGrade">
-              {{ row.theoryGrade == -1 ? "" : row.theoryGrade }}
-            </template>
-            <template slot-scope="{ row }" slot="learnGrade">
-              {{ row.learnGrade == -1 ? "暂未录入" : row.learnGrade }}
-            </template>
-            <template slot-scope="{ row }" slot="allGrade">
-              {{ row.allGrade == -1 ? "" : row.allGrade }}
-            </template>
-            <template slot-scope="{ row }" slot="qualified">
-              {{
+    <el-row class="morpheus-box">
+        <el-col :span="24"
+                class="recruitmentManagement">
+            <el-card>
+                <div class="exam-card-body">
+                    <avue-crud v-model="obj"
+                               class="company-box"
+                               :option="questionBankOption"
+                               :search.sync="questionBankSearch"
+                               :table-loading="questionBankLoading"
+                               :data="questionBankData"
+                               :permission="permissionList"
+                               ref="questionBankCrud"
+                               :page.sync="questionBankPage"
+                               @on-load="questionBankOnLoad"
+                               @selection-change="questionBankSelectionChange"
+                               @search-change="questionBankSearchChange"
+                               @search-reset="questionBankSearchReset"
+                               @current-change="questionBankCurrentChange"
+                               @size-change="questionBankSizeChange"
+                               @row-update="questionBankRowUpdate"
+                               @refresh-change="refreshChange">
+                        <template slot-scope="{ row }"
+                                  slot="theoryGrade">
+                            {{ row.theoryGrade == -1 ? "" : row.theoryGrade }}
+                        </template>
+                        <template slot-scope="{ row }"
+                                  slot="learnGrade">
+                            {{ row.learnGrade == -1 ? "暂未录入" : row.learnGrade }}
+                        </template>
+                        <template slot-scope="{ row }"
+                                  slot="allGrade">
+                            {{ row.allGrade == -1 ? "" : row.allGrade }}
+                        </template>
+                        <template slot-scope="{ row }"
+                                  slot="qualified">
+                            {{
                 row.qualified == -1
                   ? ""
                   : row.qualified == 0
@@ -50,794 +53,968 @@
                   ? "缺考,成绩无效"
                   : ""
               }}
-            </template>
+                        </template>
 
-            <!-- 自定义按钮 -->
-            <template slot="menuLeft">
-              <!-- <el-button type="danger"
+                        <!-- 自定义按钮 -->
+                        <template slot="menuLeft">
+                            <!-- <el-button type="danger"
                                        size="mini"
                                        icon="el-icon-delete"
                                        plain
                                        @click="handleDelete">新增
                             </el-button> -->
-              <!-- <el-button type="danger"
+                            <!-- <el-button type="danger"
                                        size="mini"
                                        icon="el-icon-delete"
                                        plain
                                        @click="handleDelete">删除
                             </el-button> -->
-              <el-button
-                type="success"
-                size="small"
-                plain
-                icon="el-icon-upload2"
-                v-if="permission.trainExam_performance_import"
-                @click="handleImport"
-                >实操成绩导入
-              </el-button>
-              <el-button
-                type="warning"
-                size="small"
-                plain
-                icon="el-icon-download"
-                v-if="permission.trainExam_performance_export"
-                @click="handleExport"
-                >成绩导出
-              </el-button>
-            </template>
+                            <el-button type="success"
+                                       size="small"
+                                       plain
+                                       icon="el-icon-upload2"
+                                       v-if="permission.trainExam_performance_import"
+                                       @click="handleImport">实操成绩导入
+                            </el-button>
+                            <el-button type="warning"
+                                       size="small"
+                                       plain
+                                       icon="el-icon-download"
+                                       v-if="permission.trainExam_performance_export"
+                                       @click="handleExport">成绩导出
+                            </el-button>
+                        </template>
 
-            <template slot-scope="{ type, size, row }" slot="menu">
-              <el-button
-                icon="el-icon-s-flag"
-                @click="absent(row)"
-                :size="size"
-                :type="type"
-                >缺考标记</el-button
-              >
-              <el-button
-                icon="el-icon-s-promotion"
-                @click="openzhengjian(row)"
-                :disabled="row.qualified != 0"
-                :size="size"
-                :type="type"
-                >查看证件</el-button
-              >
-            </template>
-          </avue-crud>
+                        <template slot-scope="{ type, size, row }"
+                                  slot="menu">
+                            <el-button icon="el-icon-s-flag"
+                                       @click="absent(row)"
+                                       :size="size"
+                                       :type="type">缺考标记</el-button>
+                            <el-button icon="el-icon-s-promotion"
+                                       @click="openzhengjian(row)"
+                                       :disabled="row.qualified != 0"
+                                       :size="size"
+                                       :type="type">查看证件</el-button>
+                            <el-button icon="el-icon-edit"
+                                       @click="modifiedGrades(row)"
+                                       :size="size"
+                                       :type="type">申请修改成绩</el-button>
+                        </template>
 
-          <el-dialog
-            title="实操成绩导入"
-            append-to-body
-            :visible.sync="excelBox"
-            width="555px"
-          >
-            <avue-form
-              :option="excelOption"
-              v-model="excelForm"
-              :upload-after="uploadAfter"
-            >
-              <template slot="excelTemplate">
-                <el-button type="primary" @click="handleTemplate">
-                  点击下载<i class="el-icon-download el-icon--right"></i>
-                </el-button>
-              </template>
-            </avue-form>
-          </el-dialog>
-        </div>
-      </el-card>
-    </el-col>
-    <!-- <el-dialog
+                    </avue-crud>
+
+                    <el-dialog title="实操成绩导入"
+                               append-to-body
+                               :visible.sync="excelBox"
+                               width="555px">
+                        <avue-form :option="excelOption"
+                                   v-model="excelForm"
+                                   :upload-after="uploadAfter">
+                            <template slot="excelTemplate">
+                                <el-button type="primary"
+                                           @click="handleTemplate">
+                                    点击下载<i class="el-icon-download el-icon--right"></i>
+                                </el-button>
+                            </template>
+                        </avue-form>
+                    </el-dialog>
+                </div>
+            </el-card>
+        </el-col>
+
+        <el-dialog title="申请修改成绩"
+                   :visible.sync="gradeBoxVisible"
+                   width="width"
+                   :modal='true'
+                   :modal-append-to-body='true'
+                   :append-to-body='true'
+                   :close-on-click-modal='false'
+                   :close-on-press-escape='false'
+                   :before-close="dialogBeforeClose">
+
+            <div>
+                <el-form ref="gradeForm"
+                         :model="gradeForm"
+                         :rules="rules"
+                         label-width="80px"
+                         label-position="left">
+
+                    <el-row :gutter="24">
+                        <el-col :span="12">
+                            <el-form-item label="考试名称"
+                                          label-width="108px">
+                                <el-input v-model="gradeForm.examName"
+                                          disabled></el-input>
+                            </el-form-item>
+                        </el-col>
+                        <el-col :span="12">
+                            <el-form-item label="姓名"
+                                          label-width="108px">
+                                <el-input v-model="gradeForm.securityName"
+                                          disabled></el-input>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+
+                    <el-row :gutter="24">
+                        <el-col :span="12">
+                            <el-form-item label="身份证号"
+                                          label-width="108px">
+                                <el-input v-model="gradeForm.account"
+                                          disabled></el-input>
+                            </el-form-item>
+                        </el-col>
+                        <el-col :span="12">
+                            <el-form-item label="准考证号"
+                                          label-width="108px">
+                                <el-input v-model="gradeForm.candidateNo"
+                                          disabled></el-input>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+
+                    <el-row :gutter="24">
+                        <el-col :span="12">
+                            <el-form-item label="原理论成绩"
+                                          label-width="108px">
+                                <el-input v-model="gradeForm.theoryGrade"
+                                          disabled></el-input>
+                            </el-form-item>
+                        </el-col>
+                        <el-col :span="12">
+                            <el-form-item label="修改考试成绩"
+                                          label-width="108px"
+                                          prop='editGrades'>
+                                <el-input v-model.number="gradeForm.editGrades"
+                                          autocomplete="off"></el-input>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+
+                    <el-row :gutter="24">
+                        <el-col :span="12">
+                            <el-form-item label="实操成绩"
+                                          label-width="108px">
+                                <el-input v-model="gradeForm.learnGrade"
+                                          disabled></el-input>
+                            </el-form-item>
+                        </el-col>
+                        <el-col :span="12">
+                            <el-form-item label="总成绩"
+                                          label-width="108px">
+                                <el-input v-model="gradeForm.allGrade"
+                                          disabled></el-input>
+                            </el-form-item>
+                        </el-col>
+                    </el-row>
+
+                    <el-form-item label="修改理由"
+                                  label-width="108px">
+                        <el-input type='textarea'
+                                  :rows="3"
+                                  placeholder="请输入修改理由"
+                                  resize='none'
+                                  v-model="gradeForm.editReason"></el-input>
+                    </el-form-item>
+
+                    <el-form-item style="text-align: center;"
+                                  label-width="0">
+                        <el-button type="primary"
+                                   @click="uploadGrade('gradeForm')">确 定</el-button>
+                        <el-button @click="gradeBoxVisible = false">取 消</el-button>
+                    </el-form-item>
+
+                </el-form>
+            </div>
+
+        </el-dialog>
+
+        <!-- <el-dialog
       title="打印证件"
       :visible.sync="dialogVisiblezhengjian"
       :modal-append-to-body="false"
     > -->
-    <div class="dialogVisiblezhengjian" v-if="dialogVisiblezhengjian">
-      <baoanz
-        :data="baoanzdata"
-        :close="1"
-        @close="closezhengjian"
-        :closePrint="1"
-      ></baoanz>
-    </div>
-    <!-- </el-dialog> -->
-  </el-row>
+        <div class="dialogVisiblezhengjian"
+             v-if="dialogVisiblezhengjian">
+            <baoanz :data="baoanzdata"
+                    :close="1"
+                    @close="closezhengjian"
+                    :closePrint="1"></baoanz>
+        </div>
+        <!-- </el-dialog> -->
+    </el-row>
 </template>
 
 <script>
 import baoanz from "../securityGuard/baoanz.vue";
-import { getList, update, updateAbsent } from "@/api/examapi/performance";
+import { getList, update, updateAbsent, updateGrade } from "@/api/examapi/performance";
 import { mapGetters } from "vuex";
 import { getRoleDetail } from "@/api/system/role";
 import Qs from "qs";
 export default {
-  components: {
-    baoanz,
-  },
-  data() {
-    var validatePass = (rule, value, callback) => {
-      console.log(value);
-      if (value == undefined || value == "") {
-        callback(new Error("请输入实操成绩"));
-        return;
-      } else if (value !== "" && isNaN(value) == true) {
-        callback(new Error("请输入数字"));
-      } else if (value <= 0) {
-        callback(new Error("分数设置请大于0"));
-      } else if (value > 100) {
-        callback(new Error("分数设置请小于100"));
-      } else {
-        callback();
-      }
-    };
-
-    return {
-      dialogVisiblezhengjian: false,
-      baoanzdata: {},
-      obj: {
-        name: "张三",
-      },
-      excelBox: false,
-      questionBankOption: {
-        // 操作栏多余按钮去除
-        delBtn: false,
-        editBtn: true,
-        addBtn: false,
-        selection: false,
-        // 导出按钮
-        // excelBtn: true,
-        // excelBtnText: "成绩导出",
-        viewBtn: true,
-        // title: '成绩',
-        align: "center",
-        height: "auto",
-        calcHeight: 80,
-        tip: false,
-        searchShow: true,
-        searchMenuSpan: 4,
-        index: true,
-        indexLabel: "序号",
-        //dialogType: 'drawer',
-        dialogClickModal: false,
-        // 操作栏宽度
-        menu: true,
-        menuWidth: 295,
-        labelWidth: 120,
-        column: [
-          {
-            label: "考试时间",
-            prop: "examDate",
-            type: "date",
-            hide: true,
-            format: "yyyy-MM-dd",
-            valueFormat: "yyyy-MM-dd",
-            width: 140,
-            slot: true,
-            search: true,
-            searchSpan: 4,
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: false,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: false,
-            // 表单编辑时是否可见
-            editDisplay: false,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-            viewDisplay: false,
-          },
-          {
-            label: "考试名称",
-            prop: "examName",
-            search: true,
-            searchSpan: 5,
-            slot: true,
-            viewDisplay: true,
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: true,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: true,
-            viewDisabled: true,
-            // 表单编辑时是否可见
-            editDisplay: true,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-            rules: [
-              {
-                required: true,
-                message: "请输入试卷名称",
-                trigger: "blur",
-              },
-            ],
-            width: 210,
-            // overHidden:true,
-          },
-          {
-            label: "姓名",
-            prop: "securityName",
-            search: true,
-            searchSpan: 3,
-            slot: true,
-            viewDisplay: true,
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: true,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: true,
-            viewDisabled: true,
-            // 表单编辑时是否可见
-            editDisplay: true,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-            rules: [
-              {
-                required: true,
-                message: "请输入试卷名称",
-                trigger: "blur",
-              },
-            ],
-            width: 80,
-            // overHidden:true,
-          },
-          {
-            label: "身份证号",
-            prop: "account",
-            search: true,
-            searchSpan: 4,
-            slot: true,
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: true,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: true,
-            // 表单编辑时是否可见
-            editDisplay: true,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-            rules: [
-              {
-                required: true,
-                message: "请输入保安姓名",
-                trigger: "blur",
-              },
-            ],
-            width: 140,
-          },
-          {
-            label: "准考证号",
-            prop: "candidateNo",
-            search: true,
-            searchSpan: 4,
-            slot: true,
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: true,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: true,
-            // 表单编辑时是否可见
-            editDisplay: true,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-            rules: [
-              {
-                required: true,
-                message: "请输入保安姓名",
-                trigger: "blur",
-              },
-            ],
-            width: 140,
-          },
-          {
-            label: "所属公司",
-            prop: "companyName",
-            search: true,
-            searchSpan: 4,
-            // dicUrl: '/api/blade-system/dept/tree',
-            // props: {
-            //     label: "title",
-            //     value: "id",
-            // },
-            slot: true,
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: true,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: true,
-            // 表单编辑时是否可见
-            editDisplay: true,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-            rules: [
-              {
-                required: true,
-                message: "请输入所属公司",
-                trigger: "blur",
-              },
-            ],
-            width: 230,
-          },
-          {
-            label: "考试开始时间",
-            prop: "examTime",
-            type: "datetime",
-            // span: 24,
-            format: "yyyy-MM-dd HH:mm:ss",
-            valueFormat: "yyyy-MM-dd HH:mm:ss",
-            width: 140,
-            slot: true,
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: true,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: true,
-            // 表单编辑时是否可见
-            editDisplay: true,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-          },
-          {
-            label: "考试结束时间",
-            prop: "examEndTime",
-            type: "datetime",
-            // span: 24,
-            format: "yyyy-MM-dd HH:mm:ss",
-            valueFormat: "yyyy-MM-dd HH:mm:ss",
-            width: 140,
-            slot: true,
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: true,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: true,
-            // 表单编辑时是否可见
-            editDisplay: true,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-          },
-          {
-            label: "状态",
-            prop: "isExam",
-            type: "select",
-            slot: true,
-            search: true,
-            searchSpan: 3,
-            width: 60,
-            dicData: [
-              {
-                label: "发布成绩",
-                value: 2,
-              },
-              {
-                label: "考试中",
-                value: 3,
-              },
-            ],
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: true,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: true,
-            // 表单编辑时是否可见
-            editDisplay: true,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-            rules: [
-              {
-                required: true,
-                message: "请输入考试名称",
-                trigger: "blur",
-              },
-            ],
-          },
-          {
-            label: "理论成绩",
-            prop: "theoryGrade",
-            slot: true,
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: true,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: true,
-            // 表单编辑时是否可见
-            editDisplay: true,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-            width: 68,
-          },
-          {
-            label: "实操成绩",
-            prop: "learnGrade",
-            slot: true,
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: true,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: false,
-            // 表单编辑时是否可见
-            editDisplay: true,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-            width: 68,
-            rules: [
-              { validator: validatePass, required: true, trigger: "blur" },
-            ],
-          },
-          {
-            label: "总成绩",
-            prop: "allGrade",
-            slot: true,
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: true,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: true,
-            // 表单编辑时是否可见
-            editDisplay: true,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-            width: 58,
-            rules: [
-              {
-                required: true,
-                message: "请输入考试名称",
-                trigger: "blur",
-              },
-            ],
-          },
-          {
-            label: "是否合格",
-            prop: "qualified",
-            type: "select",
-            slot: true,
-            search: true,
-            searchSpan: 3,
-            width: 68,
-            dicData: [
-              {
-                label: "合格",
-                value: 0,
-              },
-              {
-                label: "不合格",
-                value: 1,
-              },
-              {
-                label: "暂未录实操成绩",
-                value: 2,
-              },
-              {
-                label: "缺考,成绩无效",
-                value: 3,
-              },
-            ],
-            // 表单新增时是否禁止
-            addDisabled: false,
-            // 表单新增时是否可见
-            addDisplay: true,
-            // 表单新增时是否为查看模式
-            addDetail: false,
-            // 表单编辑时是否禁止
-            editDisabled: true,
-            // 表单编辑时是否可见
-            editDisplay: true,
-            // 表单编辑时是否为查看模式
-            editDetail: false,
-            rules: [
-              {
-                required: true,
-                message: "请输入考试名称",
-                trigger: "blur",
-              },
-            ],
-          },
-        ],
-      },
-      questionBankSearch: {},
-      questionBankLoading: true,
-      questionBankData: [],
-      questionBankPage: {
-        pageSize: 10,
-        currentPage: 1,
-        total: 16,
-      },
-      questionBankQuery: {},
-      questionBankSelectionList: [],
-      excelForm: {},
-      excelOption: {
-        submitBtn: false,
-        emptyBtn: false,
-        column: [
-          {
-            label: "模板上传",
-            prop: "excelFile",
-            type: "upload",
-            drag: true,
-            loadText: "模板上传中,请稍等",
-            span: 24,
-            propsHttp: {
-              res: "data",
-            },
-            tip: "请上传 .xls,.xlsx 标准格式文件",
-            action: "/api/examScore/import-examScore",
-          },
-          // {
-          //     label: "数据覆盖",
-          //     prop: "isCovered",
-          //     type: "switch",
-          //     align: "center",
-          //     width: 80,
-          //     dicData: [
-          //     {
-          //         label: "否",
-          //         value: 0,
-          //     },
-          //     {
-          //         label: "是",
-          //         value: 1,
-          //     },
-          //     ],
-          //     value: 0,
-          //     slot: true,
-          //     rules: [
-          //     {
-          //         required: true,
-          //         message: "请选择是否覆盖",
-          //         trigger: "blur",
-          //     },
-          //     ],
-          // },
-          {
-            label: "模板下载",
-            prop: "excelTemplate",
-            formslot: true,
-            span: 24,
-          },
-        ],
-      },
-    };
-  },
-  created() {},
-  mounted() {},
-  computed: {
-    ...mapGetters(["userInfo", "permission"]),
-    permissionList() {
-      return {
-        addBtn: this.vaildData(null, false),
-        viewBtn: this.vaildData(
-          this.permission.trainExam_performance_view,
-          false
-        ),
-        delBtn: this.vaildData(null, false),
-        editBtn: this.vaildData(
-          this.permission.trainExam_performance_edit,
-          false
-        ),
-        excelBtn: this.vaildData(
-          this.permission.trainExam_performance_export,
-          false
-        ),
-      };
+    components: {
+        baoanz,
     },
-  },
-  methods: {
-    openzhengjian(row) {
-      this.baoanzdata = {
-        realName: row.securityName,
-        $sex: row.sex == 1 ? "男" : "女",
-        securitynumber: row.securityNumber,
-        paperTime: row.paperTime,
-        avatar: row.avatar,
-      };
-      this.dialogVisiblezhengjian = true;
-    },
-    closezhengjian() {
-      this.dialogVisiblezhengjian = false;
-    },
-    questionBankOnLoad(page, params = {}) {
-      //判断角色,如果是保安公司管理员或保安,只能查看当前公司的考试成绩
-      var that = this;
-      //获取当前登录人员的角色信息
-      var roleIds = this.userInfo.role_id.split(",");
-      roleIds.forEach((roleId) => {
-        getRoleDetail(roleId).then((res) => {
-          var roleAlias = res.data.data.roleAlias;
-          if (roleAlias == "保安公司管理员" || roleAlias == "保安") {
-            //如果是保安公司管理员
-            params["deptId"] = that.userInfo.dept_id;
-          }
-          if (roleAlias == "培训公司管理员") {
-            //如果是培训公司管理员
-            params["trainUnitId"] = that.userInfo.dept_id;
-          }
-          that.questionBankLoading = false;
-          params["examType"] = 2;
-          getList(
-            page.currentPage,
-            page.pageSize,
-            Object.assign(params, this.questionBankQuery)
-          ).then((res) => {
-            const data = res.data.data;
-            that.questionBankPage.total = data.total;
-            that.questionBankData = data.records;
-            that.questionBankLoading = false;
-            that.questionBankSelectionClear();
-          });
-        });
-      });
-    },
-    //缺考标记
-    absent(row, done, loading) {
-      this.$confirm("确定缺考标记?", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      }).then(() => {
-        row.qualified = 3;
-        updateAbsent(row).then(
-          () => {
-            this.onLoad(this.page);
-            this.$message({
-              type: "success",
-              message: "操作成功!",
-            });
-            done();
-          },
-          (error) => {
-            window.console.log(error);
-            loading();
-          }
-        );
-      });
-    },
-    questionBankSelectionClear() {
-      this.questionBankSelectionList = [];
-      this.$refs.questionBankCrud.toggleSelection();
-    },
-    questionBankSelectionChange(list) {
-      this.questionBankSelectionList = list;
-    },
-    questionBankSearchChange(params, done) {
-      this.questionBankQuery = params;
-      this.questionBankPage.currentPage = 1;
-      this.questionBankOnLoad(this.questionBankPage, params);
-      done();
-    },
-    questionBankSearchReset() {
-      this.questionBankQuery = {};
-      this.questionBankOnLoad(this.questionBankPage);
-    },
-    questionBankCurrentChange(currentPage) {
-      this.questionBankPage.currentPage = currentPage;
-    },
-    questionBankSizeChange(pageSize) {
-      this.questionBankPage.pageSize = pageSize;
-    },
-
-    questionBankRowUpdate(row, index, done, loading) {
-      update({
-        theoryGrade: row.theoryGrade,
-        learnGrade: row.learnGrade,
-        examId: row.examId,
-        id: row.id,
-      }).then(
-        () => {
-          this.questionBankOnLoad(this.questionBankPage);
-          this.$message({
-            type: "success",
-            message: "操作成功!",
-          });
-          done();
-        },
-        (error) => {
-          window.console.log(error);
-          loading();
-        }
-      );
-    },
-    handleTemplate() {
-      window.open(`/api/examScore/export-template`);
-    },
-    handleImport() {
-      this.excelBox = true;
-    },
-    uploadAfter(res, done, loading, column) {
-      window.console.log(column);
-      this.excelBox = false;
-      // this.$message({
-      //   type: "success",
-      //   message: "操作成功!",
-      // });
-      this.refreshChange();
-      done();
-    },
-    refreshChange() {
-      this.questionBankOnLoad(this.questionBankPage, this.questionBankQuery);
-    },
-    //成绩导出
-    handleExport() {
-      this.$confirm("是否导出成绩数据?", "提示", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-      }).then(() => {
-        //获取查询条件
-        // console.log(this.questionBankSearch, 456);
-        var data = {
-          account: this.questionBankSearch.account,
-          companyName: this.questionBankSearch.companyName,
-          examDate: this.questionBankSearch.examDate,
-          isExam: this.questionBankSearch.isExam,
-          qualified: this.questionBankSearch.qualified,
-          securityName: this.questionBankSearch.securityName,
-          examName: this.questionBankSearch.examName,
+    data () {
+        var validatePass = (rule, value, callback) => {
+            if (value == undefined || value == "") {
+                callback(new Error("请输入实操成绩"));
+                return;
+            } else if (value !== "" && isNaN(value) == true) {
+                callback(new Error("请输入数字"));
+            } else if (value <= 0) {
+                callback(new Error("分数设置请大于0"));
+            } else if (value > 100) {
+                callback(new Error("分数设置请小于100"));
+            } else {
+                callback();
+            }
         };
-        //导出
-        if (
-          this.userInfo.role_name == "保安公司管理员" ||
-          this.userInfo.role_name == "保安"
-        ) {
-          //如果是保安公司管理员
-          data["deptId"] = this.userInfo.dept_id;
-        }
-        if (this.userInfo.role_name == "培训公司管理员") {
-          //如果是培训公司管理员
-          data["trainUnitId"] = this.userInfo.dept_id;
-        }
-        data["examType"] = 2;
-        //序列号url形式,用&拼接
-        data = Qs.stringify(data);
-        window.open(`/api/examScore/export-examScore?` + data);
-      });
+
+        return {
+            rules: {
+                editGrades: [
+                    { validator: validatePass, required: true, trigger: "blur" },
+                ]
+            },
+            gradeForm: {
+                id: null,
+                examName: '',
+                securityName: '',
+                account: '',
+                candidateNo: '',
+                theoryGrade: '',
+                learnGrade: '',
+                allGrade: '',
+                editGrades: '',
+                editReason: ''
+            },
+            gradeBoxVisible: false,
+            dialogVisiblezhengjian: false,
+            baoanzdata: {},
+            obj: {
+                name: "张三",
+            },
+            excelBox: false,
+            questionBankOption: {
+                // 操作栏多余按钮去除
+                delBtn: false,
+                editBtn: true,
+                addBtn: false,
+                selection: false,
+                // 导出按钮
+                // excelBtn: true,
+                // excelBtnText: "成绩导出",
+                viewBtn: true,
+                // title: '成绩',
+                align: "center",
+                height: "auto",
+                calcHeight: 80,
+                tip: false,
+                searchShow: true,
+                searchMenuSpan: 4,
+                index: true,
+                indexLabel: "序号",
+                //dialogType: 'drawer',
+                dialogClickModal: false,
+                // 操作栏宽度
+                menu: true,
+                menuWidth: 295,
+                labelWidth: 120,
+                column: [
+                    {
+                        label: "考试时间",
+                        prop: "examDate",
+                        type: "date",
+                        hide: true,
+                        format: "yyyy-MM-dd",
+                        valueFormat: "yyyy-MM-dd",
+                        width: 140,
+                        slot: true,
+                        search: true,
+                        searchSpan: 4,
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: false,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: false,
+                        // 表单编辑时是否可见
+                        editDisplay: false,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                        viewDisplay: false,
+                    },
+                    {
+                        label: "考试名称",
+                        prop: "examName",
+                        search: true,
+                        searchSpan: 5,
+                        slot: true,
+                        viewDisplay: true,
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: true,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: true,
+                        viewDisabled: true,
+                        // 表单编辑时是否可见
+                        editDisplay: true,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                        rules: [
+                            {
+                                required: true,
+                                message: "请输入试卷名称",
+                                trigger: "blur",
+                            },
+                        ],
+                        width: 210,
+                        // overHidden:true,
+                    },
+                    {
+                        label: "姓名",
+                        prop: "securityName",
+                        search: true,
+                        searchSpan: 3,
+                        slot: true,
+                        viewDisplay: true,
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: true,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: true,
+                        viewDisabled: true,
+                        // 表单编辑时是否可见
+                        editDisplay: true,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                        rules: [
+                            {
+                                required: true,
+                                message: "请输入试卷名称",
+                                trigger: "blur",
+                            },
+                        ],
+                        width: 80,
+                        // overHidden:true,
+                    },
+                    {
+                        label: "身份证号",
+                        prop: "account",
+                        search: true,
+                        searchSpan: 4,
+                        slot: true,
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: true,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: true,
+                        // 表单编辑时是否可见
+                        editDisplay: true,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                        rules: [
+                            {
+                                required: true,
+                                message: "请输入保安姓名",
+                                trigger: "blur",
+                            },
+                        ],
+                        width: 140,
+                    },
+                    {
+                        label: "准考证号",
+                        prop: "candidateNo",
+                        search: true,
+                        searchSpan: 4,
+                        slot: true,
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: true,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: true,
+                        // 表单编辑时是否可见
+                        editDisplay: true,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                        rules: [
+                            {
+                                required: true,
+                                message: "请输入保安姓名",
+                                trigger: "blur",
+                            },
+                        ],
+                        width: 140,
+                    },
+                    {
+                        label: "所属公司",
+                        prop: "companyName",
+                        search: true,
+                        searchSpan: 4,
+                        // dicUrl: '/api/blade-system/dept/tree',
+                        // props: {
+                        //     label: "title",
+                        //     value: "id",
+                        // },
+                        slot: true,
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: true,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: true,
+                        // 表单编辑时是否可见
+                        editDisplay: true,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                        rules: [
+                            {
+                                required: true,
+                                message: "请输入所属公司",
+                                trigger: "blur",
+                            },
+                        ],
+                        width: 230,
+                    },
+                    {
+                        label: "考试开始时间",
+                        prop: "examTime",
+                        type: "datetime",
+                        // span: 24,
+                        format: "yyyy-MM-dd HH:mm:ss",
+                        valueFormat: "yyyy-MM-dd HH:mm:ss",
+                        width: 140,
+                        slot: true,
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: true,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: true,
+                        // 表单编辑时是否可见
+                        editDisplay: true,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                    },
+                    {
+                        label: "考试结束时间",
+                        prop: "examEndTime",
+                        type: "datetime",
+                        // span: 24,
+                        format: "yyyy-MM-dd HH:mm:ss",
+                        valueFormat: "yyyy-MM-dd HH:mm:ss",
+                        width: 140,
+                        slot: true,
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: true,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: true,
+                        // 表单编辑时是否可见
+                        editDisplay: true,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                    },
+                    {
+                        label: "状态",
+                        prop: "isExam",
+                        type: "select",
+                        slot: true,
+                        search: true,
+                        searchSpan: 3,
+                        width: 60,
+                        dicData: [
+                            {
+                                label: "发布成绩",
+                                value: 2,
+                            },
+                            {
+                                label: "考试中",
+                                value: 3,
+                            },
+                        ],
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: true,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: true,
+                        // 表单编辑时是否可见
+                        editDisplay: true,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                        rules: [
+                            {
+                                required: true,
+                                message: "请输入考试名称",
+                                trigger: "blur",
+                            },
+                        ],
+                    },
+                    {
+                        label: "理论成绩",
+                        prop: "theoryGrade",
+                        slot: true,
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: true,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: true,
+                        // 表单编辑时是否可见
+                        editDisplay: true,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                        width: 68,
+                    },
+                    {
+                        label: "实操成绩",
+                        prop: "learnGrade",
+                        slot: true,
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: true,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: false,
+                        // 表单编辑时是否可见
+                        editDisplay: true,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                        width: 68,
+                        rules: [
+                            { validator: validatePass, required: true, trigger: "blur" },
+                        ],
+                    },
+                    {
+                        label: "总成绩",
+                        prop: "allGrade",
+                        slot: true,
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: true,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: true,
+                        // 表单编辑时是否可见
+                        editDisplay: true,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                        width: 58,
+                        rules: [
+                            {
+                                required: true,
+                                message: "请输入考试名称",
+                                trigger: "blur",
+                            },
+                        ],
+                    },
+                    {
+                        label: "是否合格",
+                        prop: "qualified",
+                        type: "select",
+                        slot: true,
+                        search: true,
+                        searchSpan: 3,
+                        width: 68,
+                        dicData: [
+                            {
+                                label: "合格",
+                                value: 0,
+                            },
+                            {
+                                label: "不合格",
+                                value: 1,
+                            },
+                            {
+                                label: "暂未录实操成绩",
+                                value: 2,
+                            },
+                            {
+                                label: "缺考,成绩无效",
+                                value: 3,
+                            },
+                        ],
+                        // 表单新增时是否禁止
+                        addDisabled: false,
+                        // 表单新增时是否可见
+                        addDisplay: true,
+                        // 表单新增时是否为查看模式
+                        addDetail: false,
+                        // 表单编辑时是否禁止
+                        editDisabled: true,
+                        // 表单编辑时是否可见
+                        editDisplay: true,
+                        // 表单编辑时是否为查看模式
+                        editDetail: false,
+                        rules: [
+                            {
+                                required: true,
+                                message: "请输入考试名称",
+                                trigger: "blur",
+                            },
+                        ],
+                    },
+                ],
+            },
+            questionBankSearch: {},
+            questionBankLoading: true,
+            questionBankData: [],
+            questionBankPage: {
+                pageSize: 10,
+                currentPage: 1,
+                total: 16,
+            },
+            questionBankQuery: {},
+            questionBankSelectionList: [],
+            excelForm: {},
+            excelOption: {
+                submitBtn: false,
+                emptyBtn: false,
+                column: [
+                    {
+                        label: "模板上传",
+                        prop: "excelFile",
+                        type: "upload",
+                        drag: true,
+                        loadText: "模板上传中,请稍等",
+                        span: 24,
+                        propsHttp: {
+                            res: "data",
+                        },
+                        tip: "请上传 .xls,.xlsx 标准格式文件",
+                        action: "/api/examScore/import-examScore",
+                    },
+                    // {
+                    //     label: "数据覆盖",
+                    //     prop: "isCovered",
+                    //     type: "switch",
+                    //     align: "center",
+                    //     width: 80,
+                    //     dicData: [
+                    //     {
+                    //         label: "否",
+                    //         value: 0,
+                    //     },
+                    //     {
+                    //         label: "是",
+                    //         value: 1,
+                    //     },
+                    //     ],
+                    //     value: 0,
+                    //     slot: true,
+                    //     rules: [
+                    //     {
+                    //         required: true,
+                    //         message: "请选择是否覆盖",
+                    //         trigger: "blur",
+                    //     },
+                    //     ],
+                    // },
+                    {
+                        label: "模板下载",
+                        prop: "excelTemplate",
+                        formslot: true,
+                        span: 24,
+                    },
+                ],
+            },
+        };
     },
-  },
+    created () { },
+    mounted () { },
+    computed: {
+        ...mapGetters(["userInfo", "permission"]),
+        permissionList () {
+            return {
+                addBtn: this.vaildData(null, false),
+                viewBtn: this.vaildData(
+                    this.permission.trainExam_performance_view,
+                    false
+                ),
+                delBtn: this.vaildData(null, false),
+                editBtn: this.vaildData(
+                    this.permission.trainExam_performance_edit,
+                    false
+                ),
+                excelBtn: this.vaildData(
+                    this.permission.trainExam_performance_export,
+                    false
+                ),
+            };
+        },
+    },
+    methods: {
+        openzhengjian (row) {
+            this.baoanzdata = {
+                realName: row.securityName,
+                $sex: row.sex == 1 ? "男" : "女",
+                securitynumber: row.securityNumber,
+                paperTime: row.paperTime,
+                avatar: row.avatar,
+            };
+            this.dialogVisiblezhengjian = true;
+        },
+        closezhengjian () {
+            this.dialogVisiblezhengjian = false;
+        },
+        questionBankOnLoad (page, params = {}) {
+            //判断角色,如果是保安公司管理员或保安,只能查看当前公司的考试成绩
+            var that = this;
+            //获取当前登录人员的角色信息
+            var roleIds = this.userInfo.role_id.split(",");
+            roleIds.forEach((roleId) => {
+                getRoleDetail(roleId).then((res) => {
+                    var roleAlias = res.data.data.roleAlias;
+                    if (roleAlias == "保安公司管理员" || roleAlias == "保安") {
+                        //如果是保安公司管理员
+                        params["deptId"] = that.userInfo.dept_id;
+                    }
+                    if (roleAlias == "培训公司管理员") {
+                        //如果是培训公司管理员
+                        params["trainUnitId"] = that.userInfo.dept_id;
+                    }
+                    that.questionBankLoading = false;
+                    params["examType"] = 2;
+                    getList(
+                        page.currentPage,
+                        page.pageSize,
+                        Object.assign(params, this.questionBankQuery)
+                    ).then((res) => {
+                        const data = res.data.data;
+                        that.questionBankPage.total = data.total;
+                        that.questionBankData = data.records;
+                        that.questionBankLoading = false;
+                        that.questionBankSelectionClear();
+                    });
+                });
+            });
+        },
+        //缺考标记
+        absent (row, done, loading) {
+            this.$confirm("确定缺考标记?", {
+                confirmButtonText: "确定",
+                cancelButtonText: "取消",
+                type: "warning",
+            }).then(() => {
+                row.qualified = 3;
+                updateAbsent(row).then(
+                    () => {
+                        this.questionBankOnLoad(this.questionBankPage);
+                        this.$message({
+                            type: "success",
+                            message: "操作成功!",
+                        });
+                        done();
+                    },
+                    (error) => {
+                        window.console.log(error);
+                        loading();
+                    }
+                );
+            });
+        },
+
+        // 修改考试成绩
+        modifiedGrades (row) {
+
+            var { id, examName, securityName, account, candidateNo, theoryGrade, learnGrade, allGrade } = row
+
+            this.gradeForm.examName = examName
+            this.gradeForm.securityName = securityName
+            this.gradeForm.account = account
+            this.gradeForm.candidateNo = candidateNo
+            this.gradeForm.theoryGrade = theoryGrade
+            this.gradeForm.learnGrade = learnGrade
+            this.gradeForm.allGrade = allGrade
+            this.gradeForm.editGrades = ''
+            this.gradeForm.editReason = ''
+            this.gradeForm.id = id
+
+            this.gradeBoxVisible = true
+
+        },
+
+
+        uploadGrade (formName) {
+
+            var that = this
+
+            this.$refs[formName].validate((valid) => {
+
+                if (valid) {
+                    var obj = {}
+                    obj.oldScore = this.gradeForm.theoryGrade
+                    obj.newScore = this.gradeForm.editGrades
+                    obj.applyCause = this.gradeForm.editReason
+                    obj.examScoreId = this.gradeForm.id
+                    obj.createUser = this.userInfo.Id
+
+                    updateGrade(obj).then(
+                        () => {
+                            that.questionBankOnLoad(that.questionBankPage)
+                            that.$message({
+                                type: "success",
+                                message: "操作成功!",
+                            })
+
+                            that.gradeBoxVisible = false
+                        },
+                        (error) => {
+                            window.console.log(error)
+                        }
+                    );
+
+                }
+
+            })
+
+        },
+
+        questionBankSelectionClear () {
+            this.questionBankSelectionList = [];
+            this.$refs.questionBankCrud.toggleSelection();
+        },
+        questionBankSelectionChange (list) {
+            this.questionBankSelectionList = list;
+        },
+        questionBankSearchChange (params, done) {
+            this.questionBankQuery = params;
+            this.questionBankPage.currentPage = 1;
+            this.questionBankOnLoad(this.questionBankPage, params);
+            done();
+        },
+        questionBankSearchReset () {
+            this.questionBankQuery = {};
+            this.questionBankOnLoad(this.questionBankPage);
+        },
+        questionBankCurrentChange (currentPage) {
+            this.questionBankPage.currentPage = currentPage;
+        },
+        questionBankSizeChange (pageSize) {
+            this.questionBankPage.pageSize = pageSize;
+        },
+
+        questionBankRowUpdate (row, index, done, loading) {
+            update({
+                theoryGrade: row.theoryGrade,
+                learnGrade: row.learnGrade,
+                examId: row.examId,
+                id: row.id,
+            }).then(
+                () => {
+                    this.questionBankOnLoad(this.questionBankPage);
+                    this.$message({
+                        type: "success",
+                        message: "操作成功!",
+                    });
+                    done();
+                },
+                (error) => {
+                    window.console.log(error);
+                    loading();
+                }
+            );
+        },
+        handleTemplate () {
+            window.open(`/api/examScore/export-template`);
+        },
+        handleImport () {
+            this.excelBox = true;
+        },
+        uploadAfter (res, done, loading, column) {
+            window.console.log(column);
+            this.excelBox = false;
+            // this.$message({
+            //   type: "success",
+            //   message: "操作成功!",
+            // });
+            this.refreshChange();
+            done();
+        },
+        refreshChange () {
+            this.questionBankOnLoad(this.questionBankPage, this.questionBankQuery);
+        },
+        //成绩导出
+        handleExport () {
+            this.$confirm("是否导出成绩数据?", "提示", {
+                confirmButtonText: "确定",
+                cancelButtonText: "取消",
+                type: "warning",
+            }).then(() => {
+                //获取查询条件
+                // console.log(this.questionBankSearch, 456);
+                var data = {
+                    account: this.questionBankSearch.account,
+                    companyName: this.questionBankSearch.companyName,
+                    examDate: this.questionBankSearch.examDate,
+                    isExam: this.questionBankSearch.isExam,
+                    qualified: this.questionBankSearch.qualified,
+                    securityName: this.questionBankSearch.securityName,
+                    examName: this.questionBankSearch.examName,
+                };
+                //导出
+                if (
+                    this.userInfo.role_name == "保安公司管理员" ||
+                    this.userInfo.role_name == "保安"
+                ) {
+                    //如果是保安公司管理员
+                    data["deptId"] = this.userInfo.dept_id;
+                }
+                if (this.userInfo.role_name == "培训公司管理员") {
+                    //如果是培训公司管理员
+                    data["trainUnitId"] = this.userInfo.dept_id;
+                }
+                data["examType"] = 2;
+                //序列号url形式,用&拼接
+                data = Qs.stringify(data);
+                window.open(`/api/examScore/export-examScore?` + data);
+            });
+        },
+    },
 };
 </script>
 
 <style lang="scss" scoped>
 .morpheus-box {
-  position: relative;
+    position: relative;
 }
 .dialogVisiblezhengjian {
-  position: absolute;
-  background-color: #fff;
-  width: 100%;
-  height: 100%;
-  z-index: 10000 !important;
+    position: absolute;
+    background-color: #fff;
+    width: 100%;
+    height: 100%;
+    z-index: 10000 !important;
 }
 </style>

--
Gitblit v1.9.3