From f2a74b0b28b74dc29be85ec8e6328bdd262f84b9 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Fri, 24 May 2024 14:35:58 +0800
Subject: [PATCH] 地址配置修改
---
src/views/trainExam/performance.vue | 994 ++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 726 insertions(+), 268 deletions(-)
diff --git a/src/views/trainExam/performance.vue b/src/views/trainExam/performance.vue
index 2adcbd4..2708875 100644
--- a/src/views/trainExam/performance.vue
+++ b/src/views/trainExam/performance.vue
@@ -1,162 +1,179 @@
-/*
- * @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">
- <el-card>
- <div
- :class="[
- 'exam-card-body',
- $store.state.control.windowWidth >= 1024 ? 'tooRowSearch' : '',
- ]"
- >
- <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"
- @sort-change="sortChange"
- @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 }}
- </template>
- <template slot-scope="{ row }" slot="learnGrade">
- {{ row.learnGrade == "" ? "暂未录入" : row.learnGrade }}
- </template>
- <template slot-scope="{ row }" slot="allGrade">
- {{ row.allGrade == -1 ? "" : row.allGrade }}
- </template>
- <template slot-scope="{ row }" slot="qualified">
- {{
- row.qualified == ""
- ? ""
- : row.qualified == 0
- ? "合格"
- : row.qualified == 1
- ? "不合格"
- : row.qualified == 3
- ? "缺考,成绩无效"
- : ""
- }}
- </template>
+ <basic-container
+ :class="[
+ 'exam-card-body',
+ $store.state.control.screenSize == 1366 ? 'smallSize' : 'normalSize',
+ $store.state.control.windowWidth >= 1024 ? 'tooRowSearch1' : '',
+ ]"
+ >
+ <avue-crud
+ v-model="obj"
+ class="company-box tablesss"
+ :option="questionBankOption"
+ :search.sync="questionBankSearch"
+ :table-loading="questionBankLoading"
+ :data="questionBankData"
+ :permission="permissionList"
+ ref="questionBankCrud"
+ :page.sync="questionBankPage"
+ @sort-change="sortChange"
+ @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 }}
+ </template>
+ <!-- <template slot-scope="{ row }" slot="learnGrade">
+ {{ row.learnGrade == -1 ? "暂未录入" : row.learnGrade==0?'合格':'不合格'}}
+ </template> -->
+ <template slot-scope="{ row }" slot="allGrade">
+ {{ row.allGrade == -1 ? "" : row.allGrade }}
+ </template>
+ <template slot-scope="{ row }" slot="qualified">
+ {{
+ row.qualified == ""
+ ? ""
+ : row.qualified == 0
+ ? "合格"
+ : row.qualified == 1
+ ? "不合格"
+ : row.qualified == 3
+ ? "缺考,成绩无效"
+ : ""
+ }}
+ </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>
- <el-button
- type="primary"
- size="small"
- plain
- v-if="permission.trainExam_performance_paper_apply"
- icon="el-icon-collection-tag"
- @click="handleSecurityPaperApply"
- >证书制证申请
- </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>
+ <el-button
+ type="danger"
+ size="small"
+ plain
+ icon="el-icon-delete"
+ v-if="permission.trainExam_performance_delete"
+ @click="handleDelete"
+ >删 除
+ </el-button>
+ <el-button
+ type="primary"
+ size="small"
+ plain
+ v-if="permission.trainExam_performance_paper_apply"
+ icon="el-icon-collection-tag"
+ @click="handleSecurityPaperApply"
+ >证书制证申请
+ </el-button>
+ <el-button
+ type="primary"
+ size="small"
+ plain
+ v-if="permission.trainExam_performance_worker_paper_apply"
+ style="display: none"
+ icon="el-icon-collection-tag"
+ @click="handleWorkerPaperApply"
+ >上岗证制证申请
+ </el-button>
+ </template>
- <template slot-scope="{ type, size, row }" slot="menu">
- <el-button
- style="display:none"
- 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
- >
- <el-button
- icon="el-icon-edit"
- v-if="row.isPaper==6"
- @click="securityPaperApply(row)"
- :size="size"
- :type="type"
- >补证申请</el-button
- >
- </template>
- </avue-crud>
+ <template slot-scope="{ type, size, row }" slot="menu">
+ <el-button
+ style="display: none"
+ 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
+ v-show="row.theoryGrade < 60 && row.theoryGrade != null && row.theoryGrade != '' && row.theoryGrade > -1 && permission.resetExamBtn"
+ icon="el-icon-refresh"
+ @click="reself(row)"
+ :size="size"
+ :type="type"
+ >重置考试</el-button
+ >
+ <el-button
+ icon="el-icon-edit"
+ @click="modifiedGrades(row)"
+ :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>
- <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="实操成绩导入"
+ 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>
<el-dialog
title="申请修改成绩"
@@ -170,7 +187,7 @@
:before-close="dialogBeforeClose"
>
<div>
- <el-form
+ <!-- <el-form
ref="gradeForm"
:model="gradeForm"
:rules="rules"
@@ -236,6 +253,57 @@
</el-col>
</el-row>
+ <el-form-item
+ prop="businessLicense"
+ label="笔试答题图片"
+ label-width="108px"
+ >
+ <el-upload
+ list-type="picture-card"
+ action=""
+ :show-file-list="true"
+ :file-list="gradeForm.fileList"
+ :limit="limit"
+ :auto-upload="true"
+ :http-request="httpRequest"
+ >
+ <i class="el-icon-plus"></i>
+ <div slot="file" slot-scope="{ file }">
+ <img
+ class="el-upload-list__item-thumbnail"
+ :src="file.url"
+ alt=""
+ />
+ <span class="el-upload-list__item-actions">
+ <span
+ class="el-upload-list__item-preview"
+ @click="handlePictureCardPreview(file)"
+ >
+ <i class="el-icon-zoom-in"></i>
+ </span>
+ <span
+ v-if="!disabled"
+ class="el-upload-list__item-delete"
+ @click="handleRemove(file)"
+ >
+ <i class="el-icon-delete"></i>
+ </span>
+ </span>
+ </div>
+ <div class="el-upload__tip" slot="tip">
+ 请上传笔试答题图片,只能上传jpg/png文件,最多上传5张图片
+ </div>
+ </el-upload>
+ <el-dialog :visible.sync="dialogVisible"
+ :modal="true"
+ :modal-append-to-body="true"
+ :append-to-body="true"
+ :close-on-click-modal="false"
+ :close-on-press-escape="false">
+ <img width="100%" :src="dialogImageUrl" alt="">
+ </el-dialog>
+ </el-form-item>
+
<el-form-item label="修改理由" label-width="108px">
<el-input
type="textarea"
@@ -252,7 +320,15 @@
>
<el-button @click="gradeBoxVisible = false">取 消</el-button>
</el-form-item>
- </el-form>
+ </el-form> -->
+ <avue-form
+ ref="form"
+ :option="option"
+ v-model="form"
+ @reset-change="emptytChange"
+ @submit="submit"
+ >
+ </avue-form>
</div>
</el-dialog>
@@ -269,8 +345,7 @@
:closePrint="1"
></baoanz>
</div>
- <!-- </el-dialog> -->
- </el-row>
+ </basic-container>
</template>
<script>
@@ -280,12 +355,19 @@
update,
updateAbsent,
updateGrade,
+ remove,
+ getNowDate,
+ reselfExamScore,
} from "@/api/examapi/performance";
import { mapGetters } from "vuex";
import { getRoleDetail } from "@/api/system/role";
-import { securityApply,add} from "@/api/accreditationRecords/accreditationRecords";
+import {
+ securityApply,
+ add,
+} from "@/api/accreditationRecords/accreditationRecords";
import Qs from "qs";
import { getToken } from "@/util/auth";
+import { putFile, removeFile } from "@/api/resource/oss";
export default {
components: {
baoanz,
@@ -321,6 +403,172 @@
};
return {
+ option: {
+ height: "auto",
+ calcHeight: 30,
+ dialogWidth: 1000,
+ tip: false,
+ searchShow: true,
+ searchMenuSpan: 6,
+ border: true,
+ index: true,
+ stripe: true,
+ viewBtn: false,
+ addBtn: false,
+ editBtn: false,
+ selection: true,
+ excelBtn: false,
+ menuWidth: 230,
+ dialogClickModal: false,
+ column: [
+ {
+ label: "考试名称",
+ prop: "examName",
+ labelWidth: 110,
+ disabled: true,
+ rules: [
+ {
+ required: true,
+ message: "请输入考试名称",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ label: "姓名",
+ prop: "securityName",
+ labelWidth: 110,
+ disabled: true,
+ rules: [
+ {
+ required: true,
+ message: "请输入姓名",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ label: "身份证号",
+ prop: "account",
+ labelWidth: 110,
+ disabled: true,
+ rules: [
+ {
+ required: true,
+ message: "请输入身份证号",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ label: "准考证号",
+ prop: "candidateNo",
+ labelWidth: 110,
+ disabled: true,
+ rules: [
+ {
+ required: false,
+ message: "请输入准考证号",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ label: "原理论成绩",
+ prop: "theoryGrade",
+ labelWidth: 110,
+ disabled: true,
+ rules: [
+ {
+ required: false,
+ message: "请输入原理论成绩",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ label: "修改考试成绩",
+ prop: "newScore",
+ labelWidth: 110,
+ rules: [
+ {
+ required: true,
+ message: "请输入修改考试成绩",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ label: "实操成绩",
+ prop: "learnGrade",
+ labelWidth: 110,
+ type: "select",
+ disabled: true,
+ rules: [
+ {
+ required: false,
+ message: "请输入实操成绩",
+ trigger: "blur",
+ },
+ ],
+ dicData: [
+ {
+ label: "合格",
+ value: 0,
+ },
+ {
+ label: "不合格",
+ value: 1,
+ },
+ {
+ label: "暂未录实操成绩",
+ value: 2,
+ },
+ ],
+ },
+ // {
+ // label: "总成绩",
+ // prop: "allGrade",
+ // labelWidth: 110,
+ // disabled: true,
+ // rules: [
+ // {
+ // required: false,
+ // message: "请输入总成绩",
+ // trigger: "blur"
+ // }
+ // ]
+ // },
+ {
+ label: "笔试答题图片",
+ prop: "url",
+ labelWidth: 110,
+ type: "upload",
+ dataType: "string",
+ span: 24,
+ limit: 5,
+ listType: "picture-card",
+ tip: "只能上传jpg/png文件,最多上传5张",
+ propsHttp: {
+ res: "data",
+ url: "url",
+ },
+ action: "/api/blade-resource/oss/endpoint/put-files",
+ },
+ {
+ label: "修改理由",
+ labelWidth: 110,
+ span: 24,
+ type: "textarea",
+ prop: "editReason",
+ },
+ ],
+ },
+ form: {},
+ limit: 5,
+ dialogImageUrl: "",
+ dialogVisible: false,
+ disabled: false,
rules: {
editGrades: [
{ validator: validatePass2, required: true, trigger: "blur" },
@@ -337,6 +585,7 @@
allGrade: "",
editGrades: "",
editReason: "",
+ fileList: [],
},
gradeBoxVisible: false,
dialogVisiblezhengjian: false,
@@ -357,7 +606,7 @@
selection: true,
reserveSelection: true,
selectable: (row) => {
- if (row.qualified != "0" || row.isPaper==6) {
+ if (row.isExam == 3) {
return false;
} else {
return true;
@@ -407,11 +656,12 @@
viewDisplay: false,
},
{
- label: "考试名称",
- prop: "examName",
- search: true,
- searchSpan: 5,
- slot: true,
+ label: "考试时间",
+ prop: "startTime",
+ type: "datetime",
+ format: "yyyy-MM-dd",
+ valueFormat: "yyyy-MM-dd",
+ width: 90,
viewDisplay: true,
// 表单新增时是否禁止
addDisabled: false,
@@ -433,8 +683,7 @@
trigger: "blur",
},
],
- width: 200,
- overHidden:true,
+ overHidden: true,
},
{
label: "姓名",
@@ -454,6 +703,7 @@
viewDisabled: true,
// 表单编辑时是否可见
editDisplay: true,
+ searchLabelWidth: 50,
// 表单编辑时是否为查看模式
editDetail: false,
rules: [
@@ -498,7 +748,7 @@
prop: "candidateNo",
search: true,
searchSpan: 4,
- hide:true,
+ hide: true,
slot: true,
// 表单新增时是否禁止
addDisabled: false,
@@ -526,19 +776,18 @@
prop: "avatar",
type: "upload",
listType: "picture-img",
- width:60,
+ width: 60,
+ editDisabled: false,
+ // 表单编辑时是否可见
+ editDisplay: false,
+ // 表单编辑时是否为查看模式
+ editDetail: false,
},
{
- label: "所属公司",
- prop: "companyName",
+ label: "从业单位",
+ prop: "unitName",
search: true,
searchSpan: 4,
- // dicUrl: '/api/blade-system/dept/tree',
- // props: {
- // label: "title",
- // value: "id",
- // },
- slot: true,
// 表单新增时是否禁止
addDisabled: false,
// 表单新增时是否可见
@@ -554,7 +803,7 @@
rules: [
{
required: true,
- message: "请输入所属公司",
+ message: "请输入从业单位",
trigger: "blur",
},
],
@@ -623,6 +872,10 @@
value: 3,
},
{
+ label: "纸质考试",
+ value: 5,
+ },
+ {
label: "缺考",
value: 4,
},
@@ -664,13 +917,14 @@
editDisplay: true,
// 表单编辑时是否为查看模式
editDetail: false,
- width: 68,
+ width: 95,
},
{
label: "实操成绩",
prop: "learnGrade",
- slot: true,
- sortable: true,
+ type: "select",
+ // slot: true,
+ // sortable: true,
// 表单新增时是否禁止
addDisabled: false,
// 表单新增时是否可见
@@ -683,31 +937,37 @@
editDisplay: true,
// 表单编辑时是否为查看模式
editDetail: false,
- width: 68,
- rules: [
- { validator: validatePass, required: true, trigger: "blur" },
+ width: 95,
+ dicData: [
+ {
+ label: "合格",
+ value: 0,
+ },
+ {
+ label: "不合格",
+ value: 1,
+ },
],
},
- {
- label: "总成绩",
- prop: "allGrade",
- slot: true,
- sortable: true,
- // 表单新增时是否禁止
- addDisabled: false,
- // 表单新增时是否可见
- addDisplay: true,
- // 表单新增时是否为查看模式
- addDetail: false,
- // 表单编辑时是否禁止
- editDisabled: true,
- // 表单编辑时是否可见
- editDisplay: true,
- // 表单编辑时是否为查看模式
- editDetail: false,
-
- width: 58,
- },
+ // {
+ // label: "总成绩",
+ // prop: "allGrade",
+ // slot: true,
+ // sortable: true,
+ // // 表单新增时是否禁止
+ // addDisabled: false,
+ // // 表单新增时是否可见
+ // addDisplay: true,
+ // // 表单新增时是否为查看模式
+ // addDetail: false,
+ // // 表单编辑时是否禁止
+ // editDisabled: true,
+ // // 表单编辑时是否可见
+ // editDisplay: true,
+ // // 表单编辑时是否为查看模式
+ // editDetail: false,
+ // width: 80
+ // },
{
label: "是否合格",
prop: "qualified",
@@ -715,8 +975,8 @@
slot: true,
hide: true,
search: true,
- searchSpan: 3,
- width: 68,
+ searchSpan: 4,
+ width: 90,
dicData: [
{
label: "合格",
@@ -754,9 +1014,9 @@
label: "是否合格",
prop: "qualifieds",
type: "select",
- // search: true,
+ sortable: true,
searchSpan: 3,
- width: 68,
+ width: 100,
dicData: [
{
label: "合格",
@@ -788,31 +1048,40 @@
// 表单编辑时是否为查看模式
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: "isPaper",
- type: "select",
- search: true,
- width: 70,
- searchSpan: 3,
+ label: "保安员证编号",
+ prop: "securityNumber",
+ width: 110,
addDisplay: false,
editDisplay: false,
// hide: true,
display: false,
- dicData: [
- {
- label: "全部",
- value: 10,
- },
- {
- label: "已制证",
- value: 6,
- },
- {
- label: "未制证",
- value: 7,
- },
- ],
},
{
label: "有无照片",
@@ -846,8 +1115,8 @@
questionBankSearch: {},
questionBankLoading: true,
questionBankData: [],
- sort:"",
- sortName:"",
+ sort: "",
+ sortName: "",
questionBankPage: {
pageSize: 10,
currentPage: 1,
@@ -855,6 +1124,7 @@
...this.$store.state.control.changePageSize,
},
questionBankQuery: {},
+ selectionList: [],
questionBankSelectionList: [],
excelForm: {},
excelOption: {
@@ -912,9 +1182,18 @@
};
},
created() {},
- mounted() {},
+ mounted() {
+ this.$store.commit("setWindowSizeHeightAdd");
+ },
computed: {
...mapGetters(["userInfo", "permission"]),
+ ids() {
+ let ids = [];
+ this.questionBankSelectionList.forEach((ele) => {
+ ids.push(ele.id);
+ });
+ return ids.join(",");
+ },
permissionList() {
return {
addBtn: this.vaildData(null, false),
@@ -931,12 +1210,117 @@
this.permission.trainExam_performance_export,
false
),
+ trainExam_performance_paper_apply:this.vaildData(this.permission.trainExam_performance_paper_apply,true)
};
},
},
methods: {
+ // 考试重置
+ reself({id}) {
+ reselfExamScore(id).then((res) => {
+ if (res.data.data.code == 200) {
+ this.$message({
+ showClose: true,
+ message: "重置成功",
+ type: "success",
+ });
+
+ this.questionBankOnLoad(this.questionBankPage);
+ } else {
+ this.$message({
+ showClose: true,
+ message: res.data.data.msg,
+ type: "warning",
+ });
+ }
+ });
+ },
+ // 批量删除
+ handleDelete() {
+ if (this.questionBankSelectionList.length === 0) {
+ this.$message.warning("请选择至少一条数据");
+ return;
+ }
+ this.$confirm("确定将选择考试成绩删除?", {
+ confirmButtonText: "确定",
+ cancelButtonText: "取消",
+ type: "warning",
+ })
+ .then(() => {
+ return remove(this.ids);
+ })
+ .then(() => {
+ this.questionBankOnLoad(this.questionBankPage);
+ this.$message({
+ type: "success",
+ message: "操作成功!",
+ });
+ this.$refs.crud.toggleSelection();
+ });
+ },
+ //提交考试成绩修改申请
+ submit(row, done, loading) {
+ var that = this;
+ row["createUser"] = this.userInfo.Id;
+ // console.log(row,1234660);
+ updateGrade(row).then(
+ () => {
+ that.$refs.form.resetFields();
+ that.$message({
+ type: "success",
+ message: "操作成功!",
+ });
+ that.gradeBoxVisible = false;
+
+ done();
+ },
+ (error) => {
+ window.console.log(error);
+ done();
+ }
+ );
+ },
+ //自定义上传
+ httpRequest(opt) {
+ var that = this;
+ const file = opt.file;
+ // 根据后台需求数据格式
+ const form = new FormData();
+ // 文件对象
+ form.append("file", file);
+ putFile(form).then((res) => {
+ that.gradeForm.fileList.push({
+ name: res.data.data.name,
+ url: res.data.data.url,
+ });
+ // console.log(that.gradeForm.fileList, 365441);
+ });
+ // console.log(that.gradeForm.fileList, 11122222);
+ },
+ //图片展示
+ handlePictureCardPreview(file) {
+ this.dialogImageUrl = file.url;
+ this.dialogVisible = true;
+ },
+ //图片删除
+ handleRemove(file) {
+ var index = [];
+ //遍历图片集合,获取下标
+ 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);
+ }
+ },
selectionChange(list) {
- // this.selectionList = list;
+ this.selectionList = list;
this.choiceList = [];
for (let k in list) {
this.choiceList.push({
@@ -982,6 +1366,46 @@
});
});
},
+ //上岗证制证申请
+ handleWorkerPaperApply() {
+ if (this.choiceList.length === 0) {
+ this.$message.warning("请勾选至少一位持证保安员");
+ return;
+ }
+ this.$confirm(
+ "共选择上岗证制证申请人数" +
+ this.choiceList.length +
+ "人,确定申请制证?",
+ {
+ confirmButtonText: "确定",
+ cancelButtonText: "取消",
+ type: "warning",
+ }
+ )
+ .then(() => {
+ let cho = this.choiceList;
+ let str = "";
+ for (let k in cho) {
+ str += cho[k].id;
+ if (k != cho.length - 1) {
+ str += ",";
+ }
+ }
+ const data = {
+ ids: str,
+ createUser: this.userInfo.user_id,
+ type: 1,
+ };
+ return securityApply(data);
+ })
+ .then(() => {
+ this.$refs.questionBankCrud.toggleSelection();
+ this.$message({
+ type: "success",
+ message: "操作成功!",
+ });
+ });
+ },
openzhengjian(row) {
this.baoanzdata = {
realName: row.securityName,
@@ -992,27 +1416,38 @@
};
this.dialogVisiblezhengjian = true;
},
+ //关闭dialog
+ dialogBeforeClose(done) {
+ this.gradeForm.fileList = [];
+ done();
+ },
closezhengjian() {
this.dialogVisiblezhengjian = false;
},
//排序
sortChange(value) {
- if(value.order=="ascending"){
+ if (value.order == "ascending") {
this.sort = "asc";
}
- if(value.order=="descending"){
+ if (value.order == "descending") {
this.sort = "desc";
}
this.sortName = value.prop;
//字段匹配
- if(value.prop=="theoryGrade"){
+ if (value.prop == "theoryGrade") {
this.sortName = "theory_grade";
}
- if(value.prop=="learnGrade"){
+ if (value.prop == "learnGrade") {
this.sortName = "learn_grade";
}
- if(value.prop=="allGrade"){
+ if (value.prop == "allGrade") {
this.sortName = "all_grade";
+ }
+ if (value.prop == "qualifieds") {
+ this.sortName = "qualified";
+ }
+ if (value.prop == "companyName") {
+ this.sortName = "companyName";
}
this.questionBankOnLoad(this.questionBankPage);
},
@@ -1034,10 +1469,10 @@
}
that.questionBankLoading = false;
params["examType"] = 2;
- if(this.sort){
+ if (this.sort) {
params["sort"] = this.sort;
}
- if(this.sortName){
+ if (this.sortName) {
params["sortName"] = this.sortName;
}
getList(
@@ -1068,23 +1503,24 @@
that.questionBankPage.total = data.total;
that.questionBankData = data.records;
that.questionBankLoading = false;
+ that.$store.commit("setWindowSizeHeightAdd");
that.questionBankSelectionClear();
});
});
});
},
//补证申请
- securityPaperApply(row,done,loading){
+ securityPaperApply(row, done, loading) {
this.$confirm("当前保安员已制证,确定要继续申请制证?", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
}).then(() => {
const data = {
- createUser:this.userInfo.user_id,
- type:2,
- userId:row.userId
- }
+ createUser: this.userInfo.user_id,
+ type: 2,
+ userId: row.userId,
+ };
add(data).then(
() => {
this.questionBankOnLoad(this.questionBankPage);
@@ -1125,34 +1561,55 @@
);
});
},
-
// 修改考试成绩
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;
+ var that = this;
+ //判断时间,获取系统时间,减去考试结束时间,小于24小时则可以申请,超过则提示无法申请
+ var endTime = row.endTime;
+ //必须把日期'-'转为'/'
+ 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) {
+ 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;
+ // } else {
+ // //提示
+ // that.$message({
+ // type: "warning",
+ // message: "成绩修改申请只能在考试截止时间后的24小内提交!"
+ // });
+ // }
+ } 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;
+ }
+ });
},
-
uploadGrade(formName) {
var that = this;
@@ -1182,7 +1639,6 @@
}
});
},
-
questionBankSelectionClear() {
this.questionBankSelectionList = [];
this.sort = "";
@@ -1190,7 +1646,7 @@
// this.$refs.questionBankCrud.toggleSelection();
},
questionBankSelectionChange(list) {
- // this.questionBankSelectionList = list;
+ this.questionBankSelectionList = list;
this.choiceList = [];
for (let k in list) {
this.choiceList.push({
@@ -1214,7 +1670,6 @@
questionBankSizeChange(pageSize) {
this.questionBankPage.pageSize = pageSize;
},
-
questionBankRowUpdate(row, index, done, loading) {
update({
theoryGrade: row.theoryGrade,
@@ -1237,10 +1692,11 @@
);
},
handleTemplate() {
- window.open(`/api/examScore/export-template?${
- this.website.tokenHeader
- }=${getToken()}&`
- );
+ window.open(
+ `/api/examScore/export-template?${
+ this.website.tokenHeader
+ }=${getToken()}&`
+ );
},
handleImport() {
this.excelBox = true;
@@ -1294,7 +1750,8 @@
// console.log(data,11225111);
//序列号url形式,用&拼接
data = Qs.stringify(data);
- window.open(`/api/examScore/export-examScore?${
+ window.open(
+ `/api/examScore/export-examScore?${
this.website.tokenHeader
}=${getToken()}&` + data
);
@@ -1308,6 +1765,7 @@
.morpheus-box {
position: relative;
}
+
.dialogVisiblezhengjian {
position: absolute;
background-color: #fff;
--
Gitblit v1.9.3