From 3dc60960fc8a60188879ff3fad996b6c87a16d12 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Mon, 02 Aug 2021 19:08:42 +0800
Subject: [PATCH] 报名清册导入
---
/dev/null | 40 ---
src/router/views/index.js | 14 +
src/views/exam/startexam.vue | 19 +
public/papers.html | 4
src/views/trainApply/index.vue | 531 ++++++++++++++++++++++++++++++++++++++++++++++++
src/views/applydetailed/index.vue | 2
6 files changed, 564 insertions(+), 46 deletions(-)
diff --git a/public/papers.html b/public/papers.html
index 09d177a..a3fba99 100644
--- a/public/papers.html
+++ b/public/papers.html
@@ -113,8 +113,10 @@
return null;
};
var id = JSON.parse(getData("data")).id;
+ var examType = JSON.parse(getData("data")).examType;
+ // console.log(JSON.parse(getData("data")), 111);
- axios.get('http://192.168.0.114:81/apply/getApplyInfo?id=' + id).then(function(res) {
+ axios.get('http://192.168.0.114:81/apply/getApplyInfo?id=' + id + "&applyExamType=" + examType).then(function(res) {
var data = res.data.data;
var str = `<span class="title">${data.examName}</span>
<span class="title">准考证信息</span>
diff --git a/src/router/views/index.js b/src/router/views/index.js
index fe947e1..390b2eb 100644
--- a/src/router/views/index.js
+++ b/src/router/views/index.js
@@ -690,6 +690,20 @@
}]
},
{
+ path: '/trainApply',
+ redirect: '/trainApply/index',
+ component: Layout,
+ children: [{
+ path: 'index',
+ name: '报名清册',
+ meta: {
+ i18n: 'index',
+ },
+ component: () =>
+ import ( /* webpackChunkName: "views" */ '@/views/trainApply/index')
+ }]
+ },
+ {
path: '/startexam',
redirect: '/startexam/index',
component: Layout,
diff --git a/src/views/applydetailed/index.vue b/src/views/applydetailed/index.vue
index 02e2789..313f5b8 100644
--- a/src/views/applydetailed/index.vue
+++ b/src/views/applydetailed/index.vue
@@ -523,7 +523,7 @@
cancelButtonText: "取消",
type: "warning",
}).then(() => {
- window.open(`/api/apply/export-apply}`);
+ window.open(`/api/apply/export-apply?examId=${this.$route.query.id}`);
});
},
}
diff --git a/src/views/applydetailed/papers.vue b/src/views/applydetailed/papers.vue
deleted file mode 100644
index 70fee4a..0000000
--- a/src/views/applydetailed/papers.vue
+++ /dev/null
@@ -1,40 +0,0 @@
-<template>
- <!-- <iframe src="http://124.71.113.22/map/index.html?openid=PatrolManagement" style="width: 100%;height: 100%" frameborder="0"></iframe> -->
- <iframe :src="url" style="width: 100%; height: 100%" frameborder="0"></iframe>
-</template>
-
-<script>
-//占位路由 巡逻管理
-export default {
- data() {
- return {
- url: "/papers.html",
- };
- },
- created(){
- var d = this.$route.query;
- this.url += "?data=" + JSON.stringify(d);
- // console.log(d);
- },
- mounted() {
- var flag = false,
- i = 0,
- ind = null;
- this.$store.state.tags.tagList.forEach((item, index) => {
- if (item.label == "准考证信息") {
- if (flag == false) {
- ind = index;
- flag = true;
- }
- i++;
- }
- });
- if (i > 1) {
- this.$store.state.tags.tagList.splice(ind, 1);
- }
- },
-};
-</script>
-
-<style>
-</style>
\ No newline at end of file
diff --git a/src/views/exam/startexam.vue b/src/views/exam/startexam.vue
index 9e78287..37abb00 100644
--- a/src/views/exam/startexam.vue
+++ b/src/views/exam/startexam.vue
@@ -388,10 +388,21 @@
},
startExam (row) {
- this.$router.push({
- path: `/applydetailed`,
- query: row
- })
+ //正式考试
+ if(row.examType==1){
+ this.$router.push({
+ path: `/applydetailed`,
+ query: row
+ })
+ }
+
+ //模拟考试
+ if(row.examType==2){
+ this.$router.push({
+ path: `/trainApply`,
+ query: row
+ })
+ }
},
// 新增
questionBankRowSave (row, done, loading) {
diff --git a/src/views/trainApply/index.vue b/src/views/trainApply/index.vue
new file mode 100644
index 0000000..447281b
--- /dev/null
+++ b/src/views/trainApply/index.vue
@@ -0,0 +1,531 @@
+/*
+ * @Author: Morpheus
+ * @Date: 2021-07-05 16:31:54
+ * @Last Modified by: Morpheus
+ * @Last Modified time: 2021-07-19 19:39:45
+ * menu-name 报名考试
+ */
+<template>
+ <el-row class="morpheus-box-apply-exam">
+ <el-col :span="24" class="hasButOne">
+ <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"
+ ref="questionBankCrud"
+ :page.sync="questionBankPage"
+ @on-load="questionBankOnLoad"
+ @selection-change="questionBankSelectionChange"
+ @search-change="questionBankSearchChange"
+ @search-reset="questionBankSearchReset"
+ @current-change="questionBankCurrentChange"
+ @size-change="questionBankSizeChange"
+ @row-save="questionBankRowSave"
+ @row-del="questionBankRowDel">
+
+ <!-- 自定义按钮 -->
+ <template slot="menuLeft">
+ <el-button
+ type="warning"
+ size="small"
+ plain
+ icon="el-icon-download"
+ @click="handleExport"
+ >导出
+ </el-button>
+ </template>
+
+ <template slot-scope="{ type,row }" slot="menu">
+ <el-button
+ :type="type"
+ size="small"
+ icon="el-icon-receiving"
+ @click="handlePrint(row)"
+ >准考证打印
+ </el-button>
+ </template>
+
+ </avue-crud>
+
+ </div>
+
+ </el-card>
+ </el-col>
+ </el-row>
+</template>
+
+<script>
+
+import {getdata,adddata,remove} from "@/api/trainingRegistration/trainingRegistration";
+
+import { mapState } from 'vuex'
+
+
+
+
+export default {
+ data () {
+
+ return {
+ obj: {
+ name: '张三',
+ },
+ questionBankOption: {
+ // 操作栏多余按钮去除
+ delBtn: false,
+ editBtn: false,
+ addBtn: false,
+ selection: true,
+ menu: true,
+ // 导出按钮
+ // excelBtn: true,
+ viewBtn: false,
+
+ // title: '题库',
+
+ align: 'center',
+ height: 'auto',
+ calcHeight: 80,
+ tip: false,
+ searchShow: true,
+ searchMenuSpan: 4,
+ index: true,
+ indexLabel: '序号',
+ //dialogType: 'drawer',
+ dialogClickModal: false,
+ // 操作栏宽度
+ menuWidth: 200,
+
+ column: [
+ {
+ label: "保安姓名",
+ prop: "realName",
+ type: 'tree',
+ dicUrl: '',
+ search: true,
+ slot: true,
+ // 表单新增时是否禁止
+ addDisabled: false,
+ // 表单新增时是否可见
+ addDisplay: true,
+ // 表单新增时是否为查看模式
+ addDetail: false,
+ // 表单编辑时是否禁止
+ editDisabled: true,
+ // 表单编辑时是否可见
+ editDisplay: true,
+ // 表单编辑时是否为查看模式
+ editDetail: false,
+ props: {
+ label: "title",
+ value: "id",
+ },
+ rules: [{
+ required: true,
+ message: "请选择保安姓名",
+ trigger: "blur"
+ }]
+ },
+ {
+ label: "考试名称",
+ prop: "trainExamName",
+ type: 'tree',
+ dicUrl: '/api/exampaper/page-tree',
+ // search: true,
+ slot: true,
+ // 表单新增时是否禁止
+ addDisabled: false,
+ // 表单新增时是否可见
+ addDisplay: true,
+ // 表单新增时是否为查看模式
+ addDetail: false,
+ // 表单编辑时是否禁止
+ editDisabled: true,
+ // 表单编辑时是否可见
+ editDisplay: true,
+ // 表单编辑时是否为查看模式
+ editDetail: false,
+ props: {
+ label: "examName",
+ value: "id",
+ },
+ rules: [{
+ required: true,
+ message: "请选择试卷名称",
+ trigger: "blur"
+ }],
+ width: 220
+ },
+ {
+ label: "所属公司",
+ prop: "deptName",
+ search: true,
+ slot: true,
+ // 表单新增时是否禁止
+ addDisabled: false,
+ // 表单新增时是否可见
+ addDisplay: false,
+ // 表单新增时是否为查看模式
+ addDetail: false,
+ // 表单编辑时是否禁止
+ editDisabled: true,
+ // 表单编辑时是否可见
+ editDisplay: true,
+ // 表单编辑时是否为查看模式
+ editDetail: false,
+ rules: [{
+ required: true,
+ message: "请选择所属公司",
+ trigger: "blur"
+ }],
+ width: 220
+ },
+ {
+ label: "准考证号",
+ prop: "candidateNo",
+ slot: true,
+ // 表单新增时是否禁止
+ addDisabled: false,
+ // 表单新增时是否可见
+ addDisplay: false,
+ // 表单新增时是否为查看模式
+ addDetail: false,
+ // 表单编辑时是否禁止
+ editDisabled: false,
+ // 表单编辑时是否可见
+ editDisplay: true,
+ // 表单编辑时是否为查看模式
+ editDetail: false,
+ rules: [{
+ required: true,
+ message: "请选择准考证号",
+ trigger: "blur"
+ }]
+ },
+ {
+ label: "身份证号",
+ prop: "idCardNo",
+ slot: true,
+ // 表单新增时是否禁止
+ addDisabled: false,
+ // 表单新增时是否可见
+ addDisplay: false,
+ // 表单新增时是否为查看模式
+ addDetail: false,
+ // 表单编辑时是否禁止
+ editDisabled: false,
+ // 表单编辑时是否可见
+ editDisplay: true,
+ // 表单编辑时是否为查看模式
+ editDetail: false,
+ rules: [{
+ required: true,
+ message: "请选择准考证号",
+ trigger: "blur"
+ }],
+ width: 200
+ },
+ {
+ label: "报考证件",
+ prop: "applyCard",
+ slot: true,
+ // 表单新增时是否禁止
+ addDisabled: false,
+ // 表单新增时是否可见
+ addDisplay: false,
+ // 表单新增时是否为查看模式
+ addDetail: false,
+ // 表单编辑时是否禁止
+ editDisabled: false,
+ // 表单编辑时是否可见
+ editDisplay: true,
+ // 表单编辑时是否为查看模式
+ editDetail: false,
+ rules: [{
+ required: true,
+ message: "请选择准考证号",
+ trigger: "blur"
+ }],
+ },
+ // {
+ // label: "试卷分数",
+ // prop: "paperScore",
+ // slot: true,
+ // // 表单新增时是否禁止
+ // addDisabled: false,
+ // // 表单新增时是否可见
+ // addDisplay: false,
+ // // 表单新增时是否为查看模式
+ // addDetail: false,
+ // // 表单编辑时是否禁止
+ // editDisabled: true,
+ // // 表单编辑时是否可见
+ // editDisplay: true,
+ // // 表单编辑时是否为查看模式
+ // editDetail: false
+ // },
+ {
+ label: "报名时间",
+ prop: "trainingTime",
+ type: "datetime",
+ // span: 24,
+ format: 'yyyy-MM-dd HH:mm:ss',
+ valueFormat: 'yyyy-MM-dd HH:mm:ss',
+ // 表单新增时是否禁止
+ addDisabled: true,
+ // 表单新增时是否可见
+ addDisplay: true,
+ // 表单新增时是否为查看模式
+ addDetail: false,
+ // 表单编辑时是否禁止
+ editDisabled: true,
+ // 表单编辑时是否可见
+ editDisplay: true,
+ // 表单编辑时是否为查看模式
+ editDetail: false,
+ value: (new Date().getFullYear() + '-' + (new Date().getMonth() + 1 < 10
+ ? "0" + (new Date().getMonth() + 1)
+ : new Date().getMonth() + 1) + '-' + (new Date().getDate() < 10
+ ? "0" + new Date().getDate()
+ : new Date().getDate()) + ' ' + (new Date().getHours() < 10
+ ? "0" + new Date().getHours()
+ : new Date().getHours()) + ':' + (new Date().getMinutes() < 10
+ ? "0" + new Date().getMinutes()
+ : new Date().getMinutes()) + ':' + (new Date().getSeconds() < 10
+ ? "0" + new Date().getSeconds()
+ : new Date().getSeconds())),
+
+ width: 180
+ },
+ {
+ label: "考试时间",
+ prop: "trainExamTime",
+ type: "datetime",
+ // span: 24,
+ format: 'yyyy-MM-dd HH:mm:ss',
+ valueFormat: 'yyyy-MM-dd HH:mm:ss',
+ // 表单新增时是否禁止
+ addDisabled: false,
+ // 表单新增时是否可见
+ addDisplay: false,
+ // 表单新增时是否为查看模式
+ addDetail: false,
+ // 表单编辑时是否禁止
+ editDisabled: false,
+ // 表单编辑时是否可见
+ editDisplay: true,
+ // 表单编辑时是否为查看模式
+ editDetail: false,
+ width: 180
+ }
+ ]
+ },
+ questionBankSearch: {},
+ questionBankLoading: true,
+ questionBankData: [
+
+ ],
+ questionBankPage: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 16
+ },
+ questionBankQuery: {},
+ questionBankSelectionList: [],
+ }
+ },
+
+ watch: {
+ "form.examname": {
+ // form是表单或者表格绑定的数据集,v-model='form'
+ handler (val) {
+ if (val) {
+ //地址截取,从县/区开始截取,并且取从县区第一个出现的位置开始
+ var address = val.formattedAddress.toString();
+ if (address.search("县") != -1) {
+ this.form.address = address.substring(
+ address.indexOf("县") + 1,
+ address.length
+ );
+ }
+ if (address.search("区") != -1) {
+ this.form.address = address.substring(
+ address.indexOf("区") + 1,
+ address.length
+ );
+ }
+ }
+ },
+ immediate: true,
+ },
+ },
+ created () {
+
+ console.log(this.userInfo)
+
+ if (this.userInfo.role_name.indexOf('ksxtadmin') != -1) {
+
+ this.questionBankOption.column[0].dicUrl = "/api/blade-system/dept/lazy-tree-user?parentId="
+ } else {
+ this.questionBankOption.column[0].dicUrl = "/api/blade-system/dept/lazy-tree-user?parentId=" + this.userInfo.dept_id
+
+ }
+
+
+
+
+
+ },
+ mounted() {
+ var flag = false,
+ i = 0,
+ ind = null;
+ this.$store.state.tags.tagList.forEach((item, index) => {
+ if (item.label == "报名清册") {
+ if (flag == false) {
+ ind = index;
+ flag = true;
+ }
+ i++;
+ }
+ });
+ if (i > 1) {
+ this.$store.state.tags.tagList.splice(ind, 1);
+ }
+ },
+ computed: {
+ ...mapState({
+ userInfo: state => state.user.userInfo
+ }),
+ ids () {
+ let ids = [];
+ this.questionBankSelectionList.forEach(ele => {
+ ids.push(ele.id);
+ });
+ return ids.join(",");
+ },
+ },
+ methods: {
+ //准考证查看
+ handlePrint(row) {
+ var obj = row;
+ obj["name"] = "准考证信息";
+ this.$router.push({
+ path: `/applyexam/papers`,
+ query: obj,
+ });
+ },
+ questionBankOnLoad (page, params = {}) {
+ // debugger;
+ params['examId'] = this.$route.query.id;
+ this.questionBankLoading = false;
+ getdata(page.currentPage, page.pageSize, Object.assign(params, this.questionBankQuery)).then(res => {
+ const data = res.data.data;
+ this.questionBankPage.total = data.total;
+ this.questionBankData = data.records;
+ this.questionBankLoading = false;
+ this.questionBankSelectionClear();
+ });
+ },
+ 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;
+ },
+
+ // 新增
+ questionBankRowSave (row, done, loading) {
+
+ adddata({ userId: row.name, examId: row.examName, applyTime: row.applyTime }).then(() => {
+ this.questionBankOnLoad(this.questionBankPage);
+ this.$message({
+ type: "success",
+ message: "操作成功!"
+ });
+ done();
+ }, error => {
+ window.console.log(error);
+ loading();
+ });
+ },
+
+ questionBankRowDel (row) {
+ this.$confirm("确定将选择数据删除?", {
+ confirmButtonText: "确定",
+ cancelButtonText: "取消",
+ type: "warning"
+ })
+ .then(() => {
+ return remove(row.id);
+ })
+ .then(() => {
+ this.questionBankOnLoad(this.questionBankPage);
+ this.$message({
+ type: "success",
+ message: "操作成功!"
+ });
+ });
+ },
+
+ questionBankHandleDelete () {
+ 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.questionBankCrud.toggleSelection();
+ });
+ },
+
+ //导出数据
+ handleExport() {
+ this.$confirm("是否导出清册数据?", "提示", {
+ confirmButtonText: "确定",
+ cancelButtonText: "取消",
+ type: "warning",
+ }).then(() => {
+ window.open(`/api/trainingRegistration/export-apply?examId=${this.$route.query.id}`);
+ });
+ },
+ }
+}
+</script>
+
+<style lang="scss" scoped>
+</style>
--
Gitblit v1.9.3