钟日健
2022-02-08 a1a0a194ffc1ec214bdb50d2cd53c6849ee61131
Merge branch 'master' of http://192.168.0.105:10010/r/zhba_enterprises
1 files modified
404 ■■■■ changed files
src/views/trainExam/performance.vue 404 ●●●● patch | view | raw | blame | history
src/views/trainExam/performance.vue
@@ -1,10 +1,5 @@
/*
 * @Author: Morpheus
 * @Date: 2021-07-05 16:31:54
 * @Last Modified by: liu
 * @Last Modified time: 2021-11-27 10:20:19
 * menu-name 成绩管理
 */
/* * @Author: Morpheus * @Date: 2021-07-05 16:31:54 * @Last Modified by: liu *
@Last Modified time: 2021-11-27 10:20:19 * menu-name 成绩管理 */
<template>
  <el-row class="morpheus-box">
    <el-col :span="24">
@@ -12,7 +7,7 @@
        <div
          :class="[
            'exam-card-body',
            $store.state.control.windowWidth >= 1024 ? 'tooRowSearch' : '',
            $store.state.control.windowWidth >= 1024 ? 'tooRowSearch' : ''
          ]"
        >
          <avue-crud
@@ -304,12 +299,13 @@
            <el-button @click="gradeBoxVisible = false">取 消</el-button>
          </el-form-item>
        </el-form> -->
        <avue-form
        ref="form"
        :option="option"
        v-model="form"
        @reset-change="emptytChange"
        @submit="submit">
        <avue-form
          ref="form"
          :option="option"
          v-model="form"
          @reset-change="emptytChange"
          @submit="submit"
        >
        </avue-form>
      </div>
    </el-dialog>
@@ -344,14 +340,14 @@
import { getRoleDetail } from "@/api/system/role";
import {
  securityApply,
  add,
  add
} from "@/api/accreditationRecords/accreditationRecords";
import Qs from "qs";
import { getToken } from "@/util/auth";
import { putFile,removeFile } from "@/api/resource/oss";
import { putFile, removeFile } from "@/api/resource/oss";
export default {
  components: {
    baoanz,
    baoanz
  },
  data() {
    var validatePass = (rule, value, callback) => {
@@ -405,140 +401,140 @@
          {
            label: "考试名称",
            prop: "examName",
            labelWidth:110,
            labelWidth: 110,
            disabled: true,
            rules: [
              {
                required: true,
                message: "请输入考试名称",
                trigger: "blur",
              },
            ],
                trigger: "blur"
              }
            ]
          },
          {
            label: "姓名",
            prop: "securityName",
            labelWidth:110,
            labelWidth: 110,
            disabled: true,
            rules: [
              {
                required: true,
                message: "请输入姓名",
                trigger: "blur",
              },
            ],
                trigger: "blur"
              }
            ]
          },
          {
            label: "身份证号",
            prop: "account",
            labelWidth:110,
            labelWidth: 110,
            disabled: true,
            rules: [
              {
                required: true,
                message: "请输入身份证号",
                trigger: "blur",
              },
            ],
                trigger: "blur"
              }
            ]
          },
          {
            label: "准考证号",
            prop: "candidateNo",
            labelWidth:110,
            labelWidth: 110,
            disabled: true,
            rules: [
              {
                required: false,
                message: "请输入准考证号",
                trigger: "blur",
              },
            ],
                trigger: "blur"
              }
            ]
          },
          {
            label: "原理论成绩",
            prop: "theoryGrade",
            labelWidth:110,
            labelWidth: 110,
            disabled: true,
            rules: [
              {
                required: false,
                message: "请输入原理论成绩",
                trigger: "blur",
              },
            ],
                trigger: "blur"
              }
            ]
          },
          {
            label: "修改考试成绩",
            prop: "newScore",
            labelWidth:110,
            labelWidth: 110,
            rules: [
              {
                required: true,
                message: "请输入修改考试成绩",
                trigger: "blur",
              },
            ],
                trigger: "blur"
              }
            ]
          },
          {
            label: "实操成绩",
            prop: "learnGrade",
            labelWidth:110,
            labelWidth: 110,
            disabled: true,
            rules: [
              {
                required: false,
                message: "请输入实操成绩",
                trigger: "blur",
              },
            ],
                trigger: "blur"
              }
            ]
          },
          {
            label: "总成绩",
            prop: "allGrade",
            labelWidth:110,
            labelWidth: 110,
            disabled: true,
            rules: [
              {
                required: false,
                message: "请输入总成绩",
                trigger: "blur",
              },
            ],
                trigger: "blur"
              }
            ]
          },
          {
            label: "笔试答题图片",
            prop: "url",
            labelWidth:110,
            type: 'upload',
            dataType: 'string',
            labelWidth: 110,
            type: "upload",
            dataType: "string",
            span: 24,
            limit:5,
            listType: 'picture-card',
            tip: '只能上传jpg/png文件,最多上传5张',
            limit: 5,
            listType: "picture-card",
            tip: "只能上传jpg/png文件,最多上传5张",
            propsHttp: {
              res: 'data',
              res: "data",
              url: "url"
            },
            action: "/api/blade-resource/oss/endpoint/put-files",
            action: "/api/blade-resource/oss/endpoint/put-files"
          },
          {
            label: "修改理由",
            labelWidth:110,
            labelWidth: 110,
            span: 24,
            type: "textarea",
            prop: "editReason",
          },
        ],
            prop: "editReason"
          }
        ]
      },
      form: {},
      limit:5,
      dialogImageUrl: '',
      limit: 5,
      dialogImageUrl: "",
      dialogVisible: false,
      disabled: false,
      rules: {
        editGrades: [
          { validator: validatePass2, required: true, trigger: "blur" },
        ],
          { validator: validatePass2, required: true, trigger: "blur" }
        ]
      },
      gradeForm: {
        id: null,
@@ -551,13 +547,13 @@
        allGrade: "",
        editGrades: "",
        editReason: "",
        fileList:[],
        fileList: []
      },
      gradeBoxVisible: false,
      dialogVisiblezhengjian: false,
      baoanzdata: {},
      obj: {
        name: "张三",
        name: "张三"
      },
      excelBox: false,
      questionBankOption: {
@@ -571,7 +567,7 @@
        viewBtn: false,
        selection: true,
        reserveSelection: true,
        selectable: (row) => {
        selectable: row => {
          if (row.qualified != "0" || row.isPaper == 6) {
            return false;
          } else {
@@ -619,7 +615,7 @@
            editDisplay: false,
            // 表单编辑时是否为查看模式
            editDetail: false,
            viewDisplay: false,
            viewDisplay: false
          },
          {
            label: "考试时间",
@@ -646,10 +642,10 @@
              {
                required: true,
                message: "请输入试卷名称",
                trigger: "blur",
              },
                trigger: "blur"
              }
            ],
            overHidden: true,
            overHidden: true
          },
          {
            label: "姓名",
@@ -675,10 +671,10 @@
              {
                required: true,
                message: "请输入试卷名称",
                trigger: "blur",
              },
                trigger: "blur"
              }
            ],
            width: 80,
            width: 80
            // overHidden:true,
          },
          {
@@ -703,10 +699,10 @@
              {
                required: true,
                message: "请输入保安姓名",
                trigger: "blur",
              },
                trigger: "blur"
              }
            ],
            width: 140,
            width: 140
          },
          {
            label: "准考证号",
@@ -731,10 +727,10 @@
              {
                required: true,
                message: "请输入保安姓名",
                trigger: "blur",
              },
                trigger: "blur"
              }
            ],
            width: 110,
            width: 110
          },
          {
            label: "照片",
@@ -746,7 +742,7 @@
            // 表单编辑时是否可见
            editDisplay: false,
            // 表单编辑时是否为查看模式
            editDetail: false,
            editDetail: false
          },
          {
            label: "所属公司",
@@ -776,11 +772,11 @@
              {
                required: true,
                message: "请输入所属公司",
                trigger: "blur",
              },
                trigger: "blur"
              }
            ],
            width: 180,
            overHidden: true,
            overHidden: true
          },
          {
            label: "考试开始时间",
@@ -802,7 +798,7 @@
            // 表单编辑时是否可见
            editDisplay: true,
            // 表单编辑时是否为查看模式
            editDetail: false,
            editDetail: false
          },
          {
            label: "考试结束时间",
@@ -824,7 +820,7 @@
            // 表单编辑时是否可见
            editDisplay: true,
            // 表单编辑时是否为查看模式
            editDetail: false,
            editDetail: false
          },
          {
            label: "考试状态",
@@ -837,20 +833,20 @@
            dicData: [
              {
                label: "发布成绩",
                value: 2,
                value: 2
              },
              {
                label: "考试中",
                value: 3,
                value: 3
              },
              {
                label: "纸质考试",
                value: 5,
                value: 5
              },
              {
                label: "缺考",
                value: 4,
              },
                value: 4
              }
            ],
            // 表单新增时是否禁止
            addDisabled: false,
@@ -868,9 +864,9 @@
              {
                required: true,
                message: "请输入考试名称",
                trigger: "blur",
              },
            ],
                trigger: "blur"
              }
            ]
          },
          {
            label: "理论成绩",
@@ -889,7 +885,7 @@
            editDisplay: true,
            // 表单编辑时是否为查看模式
            editDetail: false,
            width: 95,
            width: 95
          },
          {
            label: "实操成绩",
@@ -910,8 +906,8 @@
            editDetail: false,
            width: 95,
            rules: [
              { validator: validatePass, required: true, trigger: "blur" },
            ],
              { validator: validatePass, required: true, trigger: "blur" }
            ]
          },
          {
            label: "总成绩",
@@ -930,7 +926,7 @@
            editDisplay: true,
            // 表单编辑时是否为查看模式
            editDetail: false,
            width: 80,
            width: 80
          },
          {
            label: "是否合格",
@@ -944,20 +940,20 @@
            dicData: [
              {
                label: "合格",
                value: 0,
                value: 0
              },
              {
                label: "不合格",
                value: 1,
                value: 1
              },
              {
                label: "暂未录实操成绩",
                value: 2,
                value: 2
              },
              {
                label: "缺考,成绩无效",
                value: 3,
              },
                value: 3
              }
            ],
            // 表单新增时是否禁止
            addDisabled: false,
@@ -972,7 +968,7 @@
            viewDetail: false,
            viewDisplay: false,
            // 表单编辑时是否为查看模式
            editDetail: false,
            editDetail: false
          },
          {
            label: "是否合格",
@@ -984,20 +980,20 @@
            dicData: [
              {
                label: "合格",
                value: 0,
                value: 0
              },
              {
                label: "不合格",
                value: 1,
                value: 1
              },
              {
                label: "暂未录实操成绩",
                value: 2,
                value: 2
              },
              {
                label: "缺考,成绩无效",
                value: 3,
              },
                value: 3
              }
            ],
            // 表单新增时是否禁止
            addDisabled: false,
@@ -1010,7 +1006,7 @@
            // 表单编辑时是否可见
            editDisplay: true,
            // 表单编辑时是否为查看模式
            editDetail: false,
            editDetail: false
          },
          {
            label: "是否制证",
@@ -1026,17 +1022,17 @@
            dicData: [
              {
                label: "全部",
                value: 10,
                value: 10
              },
              {
                label: "已制证",
                value: 6,
                value: 6
              },
              {
                label: "未制证",
                value: 7,
              },
            ],
                value: 7
              }
            ]
          },
          {
            label: "有无照片",
@@ -1053,19 +1049,19 @@
            dicData: [
              {
                label: "全部",
                value: 3,
                value: 3
              },
              {
                label: "有",
                value: 1,
                value: 1
              },
              {
                label: "无",
                value: 2,
              },
            ],
          },
        ],
                value: 2
              }
            ]
          }
        ]
      },
      questionBankSearch: {},
      questionBankLoading: true,
@@ -1076,7 +1072,7 @@
        pageSize: 10,
        currentPage: 1,
        total: 16,
        ...this.$store.state.control.changePageSize,
        ...this.$store.state.control.changePageSize
      },
      questionBankQuery: {},
      questionBankSelectionList: [],
@@ -1093,10 +1089,10 @@
            loadText: "模板上传中,请稍等",
            span: 24,
            propsHttp: {
              res: "data",
              res: "data"
            },
            tip: "请上传 .xls,.xlsx 标准格式文件",
            action: "/api/examScore/import-examScore",
            action: "/api/examScore/import-examScore"
          },
          // {
          //     label: "数据覆盖",
@@ -1128,11 +1124,11 @@
            label: "模板下载",
            prop: "excelTemplate",
            formslot: true,
            span: 24,
          },
        ],
            span: 24
          }
        ]
      },
      choiceList: [],
      choiceList: []
    };
  },
  created() {},
@@ -1154,28 +1150,28 @@
        excelBtn: this.vaildData(
          this.permission.trainExam_performance_export,
          false
        ),
        )
      };
    },
    }
  },
  methods: {
    //提交考试成绩修改申请
    submit(row, done, loading) {
      var that = this;
      row['createUser'] = this.userInfo.Id;
      row["createUser"] = this.userInfo.Id;
      // console.log(row,1234660);
      updateGrade(row).then(
        () => {
          that.$refs.form.resetFields();
          that.$message({
            type: "success",
            message: "操作成功!",
            message: "操作成功!"
          });
          that.gradeBoxVisible = false;
          done();
        },
        (error) => {
        error => {
          window.console.log(error);
          done();
        }
@@ -1189,14 +1185,14 @@
      const form = new FormData();
      // 文件对象
      form.append("file", file);
      putFile(form).then((res) => {
      putFile(form).then(res => {
        that.gradeForm.fileList.push({
          name:res.data.data.name,
          url:res.data.data.url
        })
        console.log(that.gradeForm.fileList,365441);
          name: res.data.data.name,
          url: res.data.data.url
        });
        console.log(that.gradeForm.fileList, 365441);
      });
      console.log(that.gradeForm.fileList,11122222);
      console.log(that.gradeForm.fileList, 11122222);
    },
    //图片展示
    handlePictureCardPreview(file) {
@@ -1207,17 +1203,17 @@
    handleRemove(file) {
      var index = [];
      //遍历图片集合,获取下标
      this.gradeForm.fileList.forEach(function (img,i){
        if(img.name==file.name){
      this.gradeForm.fileList.forEach(function(img, i) {
        if (img.name == file.name) {
          index.push(i);
          //存储对象中删除
          removeFile(img.name);
        }
      })
      });
      // console.log(index,222333);
      //删除
      for (var i = 0; i < index.length; i++) {
        this.gradeForm.fileList.splice(index[i]-i,1);
        this.gradeForm.fileList.splice(index[i] - i, 1);
      }
    },
    selectionChange(list) {
@@ -1225,7 +1221,7 @@
      this.choiceList = [];
      for (let k in list) {
        this.choiceList.push({
          id: list[k].userId,
          id: list[k].userId
        });
      }
    },
@@ -1240,7 +1236,7 @@
        {
          confirmButtonText: "确定",
          cancelButtonText: "取消",
          type: "warning",
          type: "warning"
        }
      )
        .then(() => {
@@ -1255,7 +1251,7 @@
          const data = {
            ids: str,
            createUser: this.userInfo.user_id,
            type: 2,
            type: 2
          };
          return securityApply(data);
        })
@@ -1263,7 +1259,7 @@
          this.$refs.questionBankCrud.toggleSelection();
          this.$message({
            type: "success",
            message: "操作成功!",
            message: "操作成功!"
          });
        });
    },
@@ -1273,12 +1269,12 @@
        $sex: row.sex == 1 ? "男" : "女",
        securitynumber: row.securityNumber,
        paperTime: row.paperTime,
        avatar: row.avatar,
        avatar: row.avatar
      };
      this.dialogVisiblezhengjian = true;
    },
    //关闭dialog
    dialogBeforeClose(done){
    dialogBeforeClose(done) {
      this.gradeForm.fileList = [];
      done();
    },
@@ -1317,8 +1313,8 @@
      var that = this;
      //获取当前登录人员的角色信息
      var roleIds = this.userInfo.role_id.split(",");
      roleIds.forEach((roleId) => {
        getRoleDetail(roleId).then((res) => {
      roleIds.forEach(roleId => {
        getRoleDetail(roleId).then(res => {
          var roleAlias = res.data.data.roleAlias;
          if (roleAlias == "保安公司管理员" || roleAlias == "保安") {
            //如果是保安公司管理员
@@ -1340,10 +1336,10 @@
            page.currentPage,
            page.pageSize,
            Object.assign(params, this.questionBankQuery)
          ).then((res) => {
          ).then(res => {
            const data = res.data.data;
            data.records.forEach((item) => {
            data.records.forEach(item => {
              if (item.isPaper == null || item.isPaper == -1) {
                item.isPaper = "";
              }
@@ -1374,23 +1370,23 @@
      this.$confirm("当前保安员已制证,确定要继续申请制证?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
        type: "warning"
      }).then(() => {
        const data = {
          createUser: this.userInfo.user_id,
          type: 2,
          userId: row.userId,
          userId: row.userId
        };
        add(data).then(
          () => {
            this.questionBankOnLoad(this.questionBankPage);
            this.$message({
              type: "success",
              message: "操作成功!",
              message: "操作成功!"
            });
            done();
          },
          (error) => {
          error => {
            window.console.log(error);
            loading();
          }
@@ -1402,7 +1398,7 @@
      this.$confirm("确定缺考标记?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
        type: "warning"
      }).then(() => {
        row.qualified = 3;
        updateAbsent(row).then(
@@ -1410,11 +1406,11 @@
            this.questionBankOnLoad(this.questionBankPage);
            this.$message({
              type: "success",
              message: "操作成功!",
              message: "操作成功!"
            });
            done();
          },
          (error) => {
          error => {
            window.console.log(error);
            loading();
          }
@@ -1428,54 +1424,54 @@
      //判断时间,获取系统时间,减去考试结束时间,小于24小时则可以申请,超过则提示无法申请
      var endTime = row.endTime;
      //必须把日期'-'转为'/'
      endTime = endTime.replace(/-/g,'/');
      endTime = endTime.replace(/-/g, "/");
      //得到时间戳
      var longtime = new Date(endTime).getTime();
      // console.log(longtime,123466);
      getNowDate().then((res)=>{
        var num = 24*3600*1000;
        if(this.userInfo.role_name =="培训公司管理员"){
          if(res.data.data-longtime<=num){
      getNowDate().then(res => {
        var num = 24 * 3600 * 1000;
        if (this.userInfo.role_name == "培训公司管理员") {
          if (res.data.data - longtime <= num) {
            this.form = {
              id:null,
              examScoreId:row.id,
              examName:row.examName,
              candidateNo:row.candidateNo,
              account:row.account,
              securityName:row.securityName,
              theoryGrade:row.theoryGrade,
              learnGrade:row.learnGrade,
              allGrade:row.allGrade,
            }
              id: null,
              examScoreId: row.id,
              examName: row.examName,
              candidateNo: row.candidateNo,
              account: row.account,
              securityName: row.securityName,
              theoryGrade: row.theoryGrade,
              learnGrade: row.learnGrade,
              allGrade: row.allGrade
            };
            this.gradeBoxVisible = true;
          }else{
          } else {
            //提示
            that.$message({
              type: "warning",
              message: "成绩修改申请只能在考试截止时间后的24小内提交!",
              message: "成绩修改申请只能在考试截止时间后的24小内提交!"
            });
          }
        }else{
        } else {
          this.form = {
              id:null,
              examScoreId:row.id,
              examName:row.examName,
              candidateNo:row.candidateNo,
              account:row.account,
              securityName:row.securityName,
              theoryGrade:row.theoryGrade,
              learnGrade:row.learnGrade,
              allGrade:row.allGrade,
            }
            this.gradeBoxVisible = true;
            id: null,
            examScoreId: row.id,
            examName: row.examName,
            candidateNo: row.candidateNo,
            account: row.account,
            securityName: row.securityName,
            theoryGrade: row.theoryGrade,
            learnGrade: row.learnGrade,
            allGrade: row.allGrade
          };
          this.gradeBoxVisible = true;
        }
      })
      });
    },
    uploadGrade(formName) {
      var that = this;
      this.$refs[formName].validate((valid) => {
      this.$refs[formName].validate(valid => {
        if (valid) {
          var obj = {};
          obj.oldScore = this.gradeForm.theoryGrade;
@@ -1489,12 +1485,12 @@
              that.questionBankOnLoad(that.questionBankPage);
              that.$message({
                type: "success",
                message: "操作成功!",
                message: "操作成功!"
              });
              that.gradeBoxVisible = false;
            },
            (error) => {
            error => {
              window.console.log(error);
            }
          );
@@ -1513,7 +1509,7 @@
      this.choiceList = [];
      for (let k in list) {
        this.choiceList.push({
          id: list[k].userId,
          id: list[k].userId
        });
      }
    },
@@ -1539,17 +1535,17 @@
        theoryGrade: row.theoryGrade,
        learnGrade: row.learnGrade,
        examId: row.examId,
        id: row.id,
        id: row.id
      }).then(
        () => {
          this.questionBankOnLoad(this.questionBankPage);
          this.$message({
            type: "success",
            message: "操作成功!",
            message: "操作成功!"
          });
          done();
        },
        (error) => {
        error => {
          window.console.log(error);
          loading();
        }
@@ -1583,7 +1579,7 @@
      this.$confirm("是否导出成绩数据?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
        type: "warning"
      }).then(() => {
        //获取查询条件
        // console.log(this.questionBankSearch, 456);
@@ -1596,7 +1592,7 @@
          securityName: this.questionBankSearch.securityName,
          examName: this.questionBankSearch.examName,
          isAvatar: this.questionBankSearch.isAvatar,
          isPaper: this.questionBankSearch.isPaper,
          isPaper: this.questionBankSearch.isPaper
        };
        //导出
        if (
@@ -1620,8 +1616,8 @@
          }=${getToken()}&` + data
        );
      });
    },
  },
    }
  }
};
</script>