Administrator
2022-01-12 21c7375b7b38ebf2c8a2ca8fbf6fe9fb4f28250f
src/views/trainExam/performance.vue
@@ -25,6 +25,7 @@
            :permission="permissionList"
            ref="questionBankCrud"
            :page.sync="questionBankPage"
            @sort-change="sortChange"
            @on-load="questionBankOnLoad"
            @selection-change="questionBankSelectionChange"
            @search-change="questionBankSearchChange"
@@ -102,6 +103,7 @@
            <template slot-scope="{ type, size, row }" slot="menu">
              <el-button
                style="display:none"
                icon="el-icon-s-flag"
                @click="absent(row)"
                :size="size"
@@ -122,6 +124,14 @@
                :size="size"
                :type="type"
                >申请修改成绩</el-button
              >
              <el-button
                icon="el-icon-edit"
                v-if="row.isPaper==6"
                @click="securityPaperApply(row)"
                :size="size"
                :type="type"
                >补证申请</el-button
              >
            </template>
          </avue-crud>
@@ -273,7 +283,7 @@
} from "@/api/examapi/performance";
import { mapGetters } from "vuex";
import { getRoleDetail } from "@/api/system/role";
import { securityApply } from "@/api/accreditationRecords/accreditationRecords";
import { securityApply,add} from "@/api/accreditationRecords/accreditationRecords";
import Qs from "qs";
export default {
  components: {
@@ -342,11 +352,11 @@
        // 导出按钮
        // excelBtn: true,
        // excelBtnText: "成绩导出",
        viewBtn: true,
        viewBtn: false,
        selection: true,
        reserveSelection: true,
        selectable: (row) => {
          if (row.qualified != "0" || row.avatar==null || row.avatar=="") {
          if (row.qualified != "0" || row.isPaper==6) {
            return false;
          } else {
            return true;
@@ -365,7 +375,7 @@
        dialogClickModal: false,
        // 操作栏宽度
        menu: true,
        menuWidth: 295,
        menuWidth: 330,
        labelWidth: 120,
        ...this.$store.state.control.clearOtherBut,
@@ -422,8 +432,8 @@
                trigger: "blur",
              },
            ],
            width: 210,
            // overHidden:true,
            width: 200,
            overHidden:true,
          },
          {
            label: "姓名",
@@ -487,6 +497,7 @@
            prop: "candidateNo",
            search: true,
            searchSpan: 4,
            hide:true,
            slot: true,
            // 表单新增时是否禁止
            addDisabled: false,
@@ -507,13 +518,14 @@
                trigger: "blur",
              },
            ],
            width: 140,
            width: 110,
          },
          {
            label: "照片",
            prop: "avatar",
            type: "upload",
            listType: "picture-img",
            width:60,
          },
          {
            label: "所属公司",
@@ -545,7 +557,7 @@
                trigger: "blur",
              },
            ],
            width: 210,
            width: 180,
            overHidden: true,
          },
          {
@@ -599,7 +611,7 @@
            slot: true,
            search: true,
            searchSpan: 3,
            width: 60,
            width: 80,
            dicData: [
              {
                label: "发布成绩",
@@ -638,6 +650,7 @@
            label: "理论成绩",
            prop: "theoryGrade",
            slot: true,
            sortable: true,
            // 表单新增时是否禁止
            addDisabled: false,
            // 表单新增时是否可见
@@ -656,6 +669,7 @@
            label: "实操成绩",
            prop: "learnGrade",
            slot: true,
            sortable: true,
            // 表单新增时是否禁止
            addDisabled: false,
            // 表单新增时是否可见
@@ -677,6 +691,7 @@
            label: "总成绩",
            prop: "allGrade",
            slot: true,
            sortable: true,
            // 表单新增时是否禁止
            addDisabled: false,
            // 表单新增时是否可见
@@ -773,6 +788,32 @@
            editDetail: false,
          },
          {
            label: "是否制证",
            prop: "isPaper",
            type: "select",
            search: true,
            width: 70,
            searchSpan: 3,
            addDisplay: false,
            editDisplay: false,
            // hide: true,
            display: false,
            dicData: [
              {
                label: "全部",
                value: 10,
              },
              {
                label: "已制证",
                value: 6,
              },
              {
                label: "未制证",
                value: 7,
              },
            ],
          },
          {
            label: "有无照片",
            prop: "isAvatar",
            type: "select",
@@ -804,6 +845,8 @@
      questionBankSearch: {},
      questionBankLoading: true,
      questionBankData: [],
      sort:"",
      sortName:"",
      questionBankPage: {
        pageSize: 10,
        currentPage: 1,
@@ -951,6 +994,27 @@
    closezhengjian() {
      this.dialogVisiblezhengjian = false;
    },
    //排序
    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";
      }
      this.questionBankOnLoad(this.questionBankPage);
    },
    questionBankOnLoad(page, params = {}) {
      //判断角色,如果是保安公司管理员或保安,只能查看当前公司的考试成绩
      var that = this;
@@ -969,6 +1033,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,
@@ -977,6 +1047,9 @@
            const data = res.data.data;
            data.records.forEach((item) => {
              if (item.isPaper == null || item.isPaper == -1) {
                item.isPaper = "";
              }
              if (item.theoryGrade == null && item.learnGrade == -1) {
                item.qualified = "";
              }
@@ -997,6 +1070,34 @@
            that.questionBankSelectionClear();
          });
        });
      });
    },
    //补证申请
    securityPaperApply(row,done,loading){
      this.$confirm("当前保安员已制证,确定要继续申请制证?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      }).then(() => {
        const data = {
          createUser:this.userInfo.user_id,
          type:2,
          userId:row.userId
        }
        add(data).then(
          () => {
            this.questionBankOnLoad(this.questionBankPage);
            this.$message({
              type: "success",
              message: "操作成功!",
            });
            done();
          },
          (error) => {
            window.console.log(error);
            loading();
          }
        );
      });
    },
    //缺考标记
@@ -1083,6 +1184,8 @@
    questionBankSelectionClear() {
      this.questionBankSelectionList = [];
      this.sort = "";
      this.sortName = "";
      // this.$refs.questionBankCrud.toggleSelection();
    },
    questionBankSelectionChange(list) {
@@ -1169,6 +1272,7 @@
          securityName: this.questionBankSearch.securityName,
          examName: this.questionBankSearch.examName,
          isAvatar: this.questionBankSearch.isAvatar,
          isPaper: this.questionBankSearch.isPaper,
        };
        //导出
        if (