Merge branch 'master' of http://192.168.0.105:10010/r/zhba_enterprises
8 files modified
8 files added
| New file |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="en"> |
| | | |
| | | <head> |
| | | <meta charset="UTF-8"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | | <style> |
| | | #table { |
| | | color: #000; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | flex-direction: column; |
| | | } |
| | | |
| | | .user-info-table { |
| | | margin-top: 30px; |
| | | width: 90%; |
| | | height: 90%; |
| | | border: 1px solid #000; |
| | | background-color: #fff; |
| | | } |
| | | |
| | | .user-info-tr { |
| | | height: 50px; |
| | | font-size: 14px; |
| | | } |
| | | |
| | | .avatar { |
| | | width: 140px; |
| | | height: 190px; |
| | | } |
| | | |
| | | .title { |
| | | margin-top: 20px; |
| | | font-size: 28px; |
| | | font-weight: 500; |
| | | } |
| | | |
| | | .avatar { |
| | | width: 140px; |
| | | height: 190px; |
| | | } |
| | | |
| | | .my-picture { |
| | | width: 150px; |
| | | /* height: 200px; */ |
| | | } |
| | | </style> |
| | | <script src="https://unpkg.com/axios/dist/axios.min.js"></script> |
| | | <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> |
| | | </head> |
| | | |
| | | |
| | | <body> |
| | | <div> |
| | | <div> |
| | | <button onclick="preview(1)">打印</button> |
| | | </div> |
| | | <!--startprint--> |
| | | <div id="table"> |
| | | <!-- <span class="title">准考证信息</span> |
| | | <table class="user-info-table" border="1px" align="center" cellspacing="0" cellpadding="10"> |
| | | </table> |
| | | </div> --> |
| | | <!--endprint--> |
| | | |
| | | </div> |
| | | <script> |
| | | var getData = function(name) { |
| | | var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); |
| | | var r = window.location.search.substr(1).match(reg); |
| | | if (r != null) return unescape(r[2]); |
| | | return null; |
| | | }; |
| | | var id = JSON.parse(getData("data")).examId; |
| | | var name = JSON.parse(getData("data")).name; |
| | | // console.log(JSON.parse(getData("data")), 111); |
| | | |
| | | axios.get('http://localhost:81/apply/getApplyDetailList?examId=' + id).then(function(res) { |
| | | var data = res.data; |
| | | var list = data.applyList; |
| | | console.log(data, 123); |
| | | var str = `<span class="title">${data.examName}</span> |
| | | <table class="user-info-table" border="1px" align="center" cellspacing="0" cellpadding="10"> |
| | | <tr class="user-info-tr"> |
| | | <td width="80px">姓名</td> |
| | | <td width="60px">性别</td> |
| | | <td width="120px">准考证号</td> |
| | | <td width="160px">身份证号</td> |
| | | <td width="300px">单位名称</td> |
| | | <td width="100px">报考证件</td> |
| | | <td width="200px">报名时间</td> |
| | | </tr>` |
| | | |
| | | for (var k in list) { |
| | | str += ` |
| | | <tr class="user-info-tr"> |
| | | <td>${list[k].realName}</td> |
| | | <td>${list[k].sex==1?"男":(data.sex==2?"女":"")}</td> |
| | | <td>${list[k].candidateNo}</td> |
| | | <td>${list[k].idCardNo}</td> |
| | | <td>${list[k].deptName}</td> |
| | | <td>${list[k].applyCard}</td> |
| | | <td>${list[k].applyTime}</td> |
| | | </tr> |
| | | ` |
| | | } |
| | | |
| | | // <tr class="user-info-tr"> |
| | | // <td></td> |
| | | // <td></td> |
| | | // <td></td> |
| | | // <td></td> |
| | | // <td></td> |
| | | // <td></td> |
| | | // <td></td> |
| | | // </tr> |
| | | |
| | | str += ` <tr class="user-info-tr"> |
| | | <td>总人数</td> |
| | | <td colspan="6">${data.num}人</td> |
| | | </tr> |
| | | |
| | | </table> |
| | | </div>` |
| | | |
| | | var dom = $('#table'); |
| | | dom.empty(); |
| | | dom.append(str); |
| | | }) |
| | | |
| | | function preview(oper) { |
| | | if (oper < 10) { |
| | | bdhtml = window.document.body.innerHTML; |
| | | // 打印开始的标志 |
| | | sprnstr = "<!--startprint-->"; |
| | | // 打印结束的标志 |
| | | eprnstr = "<!--endprint-->"; |
| | | // 从打印开始的位置截取到末尾 |
| | | prnhtml = bdhtml.substr(bdhtml.indexOf(sprnstr)); |
| | | // 从开始截取到打印结束的位置 |
| | | prnhtml = prnhtml.substring(0, prnhtml.indexOf(eprnstr)); |
| | | // 替换html |
| | | window.document.body.innerHTML = prnhtml; |
| | | // 打印 |
| | | window.print(); |
| | | window.document.body.innerHTML = bdhtml; |
| | | } else { |
| | | window.print(); |
| | | } |
| | | } |
| | | </script> |
| | | </body> |
| | | |
| | | </html> |
| New file |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="en"> |
| | | |
| | | <head> |
| | | <meta charset="UTF-8"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | | <style> |
| | | #table { |
| | | color: #000; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | flex-direction: column; |
| | | } |
| | | |
| | | .user-info-table { |
| | | margin-top: 30px; |
| | | width: 90%; |
| | | height: 90%; |
| | | border: 1px solid #000; |
| | | background-color: #fff; |
| | | } |
| | | |
| | | .user-info-tr { |
| | | height: 50px; |
| | | font-size: 14px; |
| | | } |
| | | |
| | | .avatar { |
| | | width: 140px; |
| | | height: 190px; |
| | | } |
| | | |
| | | .title { |
| | | margin-top: 20px; |
| | | font-size: 28px; |
| | | font-weight: 500; |
| | | } |
| | | |
| | | .avatar { |
| | | width: 140px; |
| | | height: 190px; |
| | | } |
| | | |
| | | .my-picture { |
| | | width: 150px; |
| | | /* height: 200px; */ |
| | | } |
| | | </style> |
| | | <script src="https://unpkg.com/axios/dist/axios.min.js"></script> |
| | | <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> |
| | | </head> |
| | | |
| | | |
| | | <body> |
| | | <div> |
| | | <div> |
| | | <button onclick="preview(1)">打印</button> |
| | | </div> |
| | | <!--startprint--> |
| | | <div id="table"> |
| | | <!-- <span class="title">准考证信息</span> |
| | | <table class="user-info-table" border="1px" align="center" cellspacing="0" cellpadding="10"> |
| | | </table> |
| | | </div> --> |
| | | <!--endprint--> |
| | | |
| | | </div> |
| | | <script> |
| | | var getData = function(name) { |
| | | var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); |
| | | var r = window.location.search.substr(1).match(reg); |
| | | if (r != null) return unescape(r[2]); |
| | | return null; |
| | | }; |
| | | var id = JSON.parse(getData("data")).examId; |
| | | var name = JSON.parse(getData("data")).name; |
| | | // console.log(JSON.parse(getData("data")), 111); |
| | | |
| | | axios.get('http://localhost:81/apply/getApplyDetailList?examId=' + id).then(function(res) { |
| | | var data = res.data; |
| | | var list = data.applyList; |
| | | console.log(data, 123); |
| | | var str = `<span class="title">${data.examName}</span> |
| | | <table class="user-info-table" border="1px" align="center" cellspacing="0" cellpadding="10"> |
| | | <tr class="user-info-tr"> |
| | | <td width="80px">姓名</td> |
| | | <td width="60px">性别</td> |
| | | <td width="120px">准考证号</td> |
| | | <td width="160px">身份证号</td> |
| | | <td width="300px">单位名称</td> |
| | | <td width="100px">报考证件</td> |
| | | <td width="200px">报名时间</td> |
| | | </tr>` |
| | | |
| | | for (var k in list) { |
| | | str += ` |
| | | <tr class="user-info-tr"> |
| | | <td>${list[k].realName}</td> |
| | | <td>${list[k].sex==1?"男":(data.sex==2?"女":"")}</td> |
| | | <td>${list[k].candidateNo}</td> |
| | | <td>${list[k].idCardNo}</td> |
| | | <td>${list[k].deptName}</td> |
| | | <td>${list[k].applyCard}</td> |
| | | <td>${list[k].applyTime}</td> |
| | | </tr> |
| | | ` |
| | | } |
| | | |
| | | // <tr class="user-info-tr"> |
| | | // <td></td> |
| | | // <td></td> |
| | | // <td></td> |
| | | // <td></td> |
| | | // <td></td> |
| | | // <td></td> |
| | | // <td></td> |
| | | // </tr> |
| | | |
| | | str += ` <tr class="user-info-tr"> |
| | | <td>总人数</td> |
| | | <td colspan="6">${data.num}人</td> |
| | | </tr> |
| | | |
| | | </table> |
| | | </div>` |
| | | |
| | | var dom = $('#table'); |
| | | dom.empty(); |
| | | dom.append(str); |
| | | }) |
| | | |
| | | function preview(oper) { |
| | | if (oper < 10) { |
| | | bdhtml = window.document.body.innerHTML; |
| | | // 打印开始的标志 |
| | | sprnstr = "<!--startprint-->"; |
| | | // 打印结束的标志 |
| | | eprnstr = "<!--endprint-->"; |
| | | // 从打印开始的位置截取到末尾 |
| | | prnhtml = bdhtml.substr(bdhtml.indexOf(sprnstr)); |
| | | // 从开始截取到打印结束的位置 |
| | | prnhtml = prnhtml.substring(0, prnhtml.indexOf(eprnstr)); |
| | | // 替换html |
| | | window.document.body.innerHTML = prnhtml; |
| | | // 打印 |
| | | window.print(); |
| | | window.document.body.innerHTML = bdhtml; |
| | | } else { |
| | | window.print(); |
| | | } |
| | | } |
| | | </script> |
| | | </body> |
| | | |
| | | </html> |
| | |
| | | }) |
| | | } |
| | | |
| | | |
| | | export const cancelApply = (row) => { |
| | | return request({ |
| | | url: '/api/apply/cancelApply', |
| | | method: 'post', |
| | | data: row |
| | | }) |
| | | } |
| | | |
| | | export const updateApply = (row) => { |
| | | return request({ |
| | | url: '/api/apply/submit', |
| | |
| | | }) |
| | | } |
| | | |
| | | export const addExam = (ids, examTime, startTime, endTime) => { |
| | | return request({ |
| | | url: '/api/apply/batchExam', |
| | | method: 'post', |
| | | params: { |
| | | ids, |
| | | examTime, |
| | | startTime, |
| | | endTime |
| | | } |
| | | }) |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | |
| | | }) |
| | | } |
| | | |
| | | export const getListApply = (current, size, params) => { |
| | | return request({ |
| | | url: '/api/blade-user/page-security-apply', |
| | | method: 'get', |
| | | params: { |
| | | ...params, |
| | | current, |
| | | size |
| | | } |
| | | }) |
| | | } |
| | | |
| | | export const remove = (ids) => { |
| | | return request({ |
| | | url: '/api/blade-user/remove', |
| | |
| | | }) |
| | | } |
| | | |
| | | |
| | | export const addBatchApply = (row) => { |
| | | return request({ |
| | | url: '/api/apply/batchApply', |
| | | method: 'post', |
| | | data: row |
| | | }) |
| | | } |
| | | |
| | | export const update = (row) => { |
| | | return request({ |
| | | url: '/api/blade-user/update', |
| New file |
| | |
| | | import request from '@/router/axios'; |
| | | |
| | | export const getList = (current, size, params) => { |
| | | return request({ |
| | | url: '/api/blade-talk/talk/page', |
| | | method: 'get', |
| | | params: { |
| | | ...params, |
| | | current, |
| | | size, |
| | | } |
| | | }) |
| | | } |
| | | |
| | | export const getDetail = (id) => { |
| | | return request({ |
| | | url: '/api/blade-talk/talk/detail', |
| | | method: 'get', |
| | | params: { |
| | | id |
| | | } |
| | | }) |
| | | } |
| | | |
| | | export const remove = (ids) => { |
| | | return request({ |
| | | url: '/api/blade-talk/talk/remove', |
| | | method: 'post', |
| | | params: { |
| | | ids, |
| | | } |
| | | }) |
| | | } |
| | | |
| | | export const add = (row) => { |
| | | return request({ |
| | | url: '/api/blade-talk/talk/submit', |
| | | method: 'post', |
| | | data: row |
| | | }) |
| | | } |
| | | |
| | | export const update = (row) => { |
| | | return request({ |
| | | url: '/api/blade-talk/talk/submit', |
| | | method: 'post', |
| | | data: row |
| | | }) |
| | | } |
| | | |
| | |
| | | import Layout from '@/page/index/' |
| | | |
| | | export default [{ |
| | | path: '/wel', |
| | | component: Layout, |
| | | redirect: '/wel/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '首页', |
| | | meta: { |
| | | i18n: 'dashboard' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/wel/index') |
| | | path: '/wel', |
| | | component: Layout, |
| | | redirect: '/wel/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '首页', |
| | | meta: { |
| | | i18n: 'dashboard' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/wel/index') |
| | | }, { |
| | | path: 'dashboard', |
| | | name: '控制台', |
| | | meta: { |
| | | i18n: 'dashboard', |
| | | menu: false, |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/wel/dashboard') |
| | | }] |
| | | }, { |
| | | path: 'dashboard', |
| | | name: '控制台', |
| | | meta: { |
| | | i18n: 'dashboard', |
| | | menu: false, |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/wel/dashboard') |
| | | }] |
| | | }, { |
| | | path: '/test', |
| | | component: Layout, |
| | | redirect: '/test/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '测试页', |
| | | meta: { |
| | | i18n: 'test' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/util/test') |
| | | }] |
| | | }, { |
| | | path: '/dict-horizontal', |
| | | component: Layout, |
| | | redirect: '/dict-horizontal/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '字典管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/util/demo/dict-horizontal') |
| | | }] |
| | | }, { |
| | | path: '/dict-vertical', |
| | | component: Layout, |
| | | redirect: '/dict-vertical/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '字典管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/util/demo/dict-vertical') |
| | | }] |
| | | }, { |
| | | path: '/info', |
| | | component: Layout, |
| | | redirect: '/info/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '个人信息', |
| | | meta: { |
| | | i18n: 'info' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/system/userinfo') |
| | | }] |
| | | }, { |
| | | path: '/work/process/leave', |
| | | component: Layout, |
| | | redirect: '/work/process/leave/form', |
| | | children: [{ |
| | | path: 'form/:processDefinitionId', |
| | | name: '请假流程', |
| | | meta: { |
| | | i18n: 'work' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/work/process/leave/form') |
| | | path: '/test', |
| | | component: Layout, |
| | | redirect: '/test/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '测试页', |
| | | meta: { |
| | | i18n: 'test' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/util/test') |
| | | }] |
| | | }, { |
| | | path: 'handle/:taskId/:processInstanceId/:businessId', |
| | | name: '处理请假流程', |
| | | meta: { |
| | | i18n: 'work' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/work/process/leave/handle') |
| | | path: '/dict-horizontal', |
| | | component: Layout, |
| | | redirect: '/dict-horizontal/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '字典管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/util/demo/dict-horizontal') |
| | | }] |
| | | }, { |
| | | path: 'detail/:processInstanceId/:businessId', |
| | | name: '请假流程详情', |
| | | meta: { |
| | | i18n: 'work' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/work/process/leave/detail') |
| | | }] |
| | | }, { |
| | | path: '/securityAnalysis', |
| | | component: Layout, |
| | | redirect: '/securityAnalysis/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安单位情况智能分析', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/securityAnalysis/index') |
| | | }] |
| | | }, { |
| | | path: '/recruitmentManagement', |
| | | component: Layout, |
| | | redirect: '/recruitmentManagement/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '招聘管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/recruitmentManagement/index') |
| | | }] |
| | | }, { |
| | | path: '/securityUnit', |
| | | component: Layout, |
| | | redirect: '/securityUnit/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安单位信息', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/securityUnit/index') |
| | | }] |
| | | }, { |
| | | path: '/securityGuard', |
| | | component: Layout, |
| | | redirect: '/securityGuard/securityGuard', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安员查询', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/securityGuard/securityGuard') |
| | | }] |
| | | }, { |
| | | path: '/securityGuardDetail', |
| | | component: Layout, |
| | | redirect: '/securityGuardDetail/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安员详情', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/securityGuard/securityGuardDetail') |
| | | }] |
| | | }, { |
| | | path: '/resource', |
| | | component: Layout, |
| | | redirect: '/resource/attach', |
| | | children: [{ |
| | | path: 'attach', |
| | | name: '附件上传', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/resource/attach') |
| | | }] |
| | | }, { |
| | | path: '/securityUnitChild', |
| | | component: Layout, |
| | | redirect: '/securityUnitChild/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安单位详情', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/securityUnitChild/index') |
| | | }] |
| | | }, { |
| | | path: '/securityGuard', |
| | | component: Layout, |
| | | redirect: '/securityGuard/securityGuard', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安员管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/securityGuard/securityGuard') |
| | | }] |
| | | }, |
| | | // { |
| | | // path: '/dispatch/dispatch', |
| | | // component: Layout, |
| | | // redirect: '/dispatch/dispatch', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '派遣服务管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/dispatch/dispatch') |
| | | // }] |
| | | // }, |
| | | { |
| | | path: '/desk', |
| | | component: Layout, |
| | | redirect: '/desk/notice', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '通知公告', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/desk/notice') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/workreport', |
| | | component: Layout, |
| | | redirect: '/workreport/workreport', |
| | | children: [{ |
| | | path: 'workreport', |
| | | name: '发起的汇报', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/workreport/workreport') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/workreport', |
| | | component: Layout, |
| | | redirect: '/workreport/workreply', |
| | | children: [{ |
| | | path: 'workreply', |
| | | name: '接收的汇报', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/workreport/workreply') |
| | | }] |
| | | }, { |
| | | path: '/resource', |
| | | component: Layout, |
| | | redirect: '/resource/attachCopy', |
| | | children: [{ |
| | | path: 'attachCopy', |
| | | name: '保安单位附件上传', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/resource/attachCopy') |
| | | }] |
| | | }, |
| | | // { |
| | | // path: '/dispatch', |
| | | // component: Layout, |
| | | // redirect: '/dispatch/dispatch', |
| | | // children: [{ |
| | | // path: 'dispatch', |
| | | // name: '派遣单位管理', |
| | | // meta: { |
| | | // i18n: 'dispatch' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/dispatch/dispatch') |
| | | // }, { |
| | | // path: 'dispatchChildoperable', |
| | | // name: '派遣记录管理', |
| | | // meta: { |
| | | // i18n: 'dispatch' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/dispatch/dispatchChildoperable') |
| | | // }] |
| | | // }, |
| | | // { |
| | | // path: '/dispatchChild', |
| | | // component: Layout, |
| | | // redirect: '/dispatchChild/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '派遣服务记录', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/dispatchChild/index') |
| | | // }] |
| | | // }, |
| | | // { |
| | | // path: '/equipments', |
| | | // component: Layout, |
| | | // redirect: '/equipments/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '保安公司装备管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/equipments/index') |
| | | // }] |
| | | // }, { |
| | | // path: '/car', |
| | | // component: Layout, |
| | | // redirect: '/car/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '保安公司车辆管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/car/index') |
| | | // }] |
| | | // }, { |
| | | // path: '/gun', |
| | | // component: Layout, |
| | | // redirect: '/gun/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '保安公司枪支管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/gun/index') |
| | | // }] |
| | | // }, |
| | | // { |
| | | // path: '/securityEquipment', |
| | | // component: Layout, |
| | | // redirect: '/securityEquipment', |
| | | // children: [{ |
| | | // path: 'equipments', |
| | | // name: '装备管理', |
| | | // meta: { |
| | | // i18n: 'securityEquipment' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/securityEquipment/equipments') |
| | | // }, { |
| | | // path: 'car', |
| | | // name: '车辆管理', |
| | | // meta: { |
| | | // i18n: 'car' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/securityEquipment/car') |
| | | // }, { |
| | | // path: 'gun', |
| | | // name: '车辆管理', |
| | | // meta: { |
| | | // i18n: 'gun' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/securityEquipment/gun') |
| | | // }] |
| | | // }, |
| | | { |
| | | path: '/trainingRegistration', |
| | | component: Layout, |
| | | redirect: '/trainingRegistration/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安培训报名管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/trainingRegistration/index') |
| | | }] |
| | | }, { |
| | | path: '/securityAnalysis', |
| | | component: Layout, |
| | | redirect: '/securityAnalysis/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安单位情况智能分析', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/securityAnalysis/index') |
| | | }] |
| | | }, { |
| | | path: '/recruitmentManagement', |
| | | component: Layout, |
| | | redirect: '/recruitmentManagement/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '招聘管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/recruitmentManagement/index') |
| | | }] |
| | | }, { |
| | | path: '/securityUnit', |
| | | component: Layout, |
| | | redirect: '/securityUnit/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安单位信息', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/securityUnit/index') |
| | | }] |
| | | }, { |
| | | path: '/securityGuard', |
| | | component: Layout, |
| | | redirect: '/securityGuard/securityGuard', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安员查询', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/securityGuard/securityGuard') |
| | | }] |
| | | }, { |
| | | path: '/securityGuardDetail', |
| | | component: Layout, |
| | | redirect: '/securityGuardDetail/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安员详情', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/securityGuard/securityGuardDetail') |
| | | }] |
| | | }, { |
| | | path: '/resource', |
| | | component: Layout, |
| | | redirect: '/resource/attach', |
| | | children: [{ |
| | | path: 'attach', |
| | | name: '附件上传', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/resource/attach') |
| | | }] |
| | | }, { |
| | | path: '/securityUnitChild', |
| | | component: Layout, |
| | | redirect: '/securityUnitChild/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安单位详情', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/securityUnitChild/index') |
| | | }] |
| | | }, { |
| | | path: '/securityGuard', |
| | | component: Layout, |
| | | redirect: '/securityGuard/securityGuard', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安员管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/securityGuard/securityGuard') |
| | | }] |
| | | }, |
| | | // { |
| | | // path: '/dispatch/dispatch', |
| | | // component: Layout, |
| | | // redirect: '/dispatch/dispatch', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '派遣服务管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/dispatch/dispatch') |
| | | // }] |
| | | // }, |
| | | { |
| | | path: '/desk', |
| | | component: Layout, |
| | | redirect: '/desk/notice', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '通知公告', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/desk/notice') |
| | | }] |
| | | }, { |
| | | path: '/dispatch', |
| | | component: Layout, |
| | | redirect: '/dispatch/dispatch', |
| | | children: [{ |
| | | path: 'dispatch', |
| | | name: '派遣单位管理', |
| | | meta: { |
| | | i18n: 'dispatch' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/dispatch/dispatch') |
| | | path: '/dict-vertical', |
| | | component: Layout, |
| | | redirect: '/dict-vertical/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '字典管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/util/demo/dict-vertical') |
| | | }] |
| | | }, { |
| | | path: 'dispatchChildoperable', |
| | | name: '派遣记录管理', |
| | | meta: { |
| | | i18n: 'dispatch' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/dispatch/dispatchChildoperable') |
| | | }] |
| | | }, { |
| | | path: '/dispatchChild', |
| | | path: '/info', |
| | | component: Layout, |
| | | redirect: '/info/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '个人信息', |
| | | meta: { |
| | | i18n: 'info' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/system/userinfo') |
| | | }] |
| | | }, { |
| | | path: '/work/process/leave', |
| | | component: Layout, |
| | | redirect: '/work/process/leave/form', |
| | | children: [{ |
| | | path: 'form/:processDefinitionId', |
| | | name: '请假流程', |
| | | meta: { |
| | | i18n: 'work' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/work/process/leave/form') |
| | | }, { |
| | | path: 'handle/:taskId/:processInstanceId/:businessId', |
| | | name: '处理请假流程', |
| | | meta: { |
| | | i18n: 'work' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/work/process/leave/handle') |
| | | }, { |
| | | path: 'detail/:processInstanceId/:businessId', |
| | | name: '请假流程详情', |
| | | meta: { |
| | | i18n: 'work' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/work/process/leave/detail') |
| | | }] |
| | | }, { |
| | | path: '/securityAnalysis', |
| | | component: Layout, |
| | | redirect: '/securityAnalysis/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安单位情况智能分析', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/securityAnalysis/index') |
| | | }] |
| | | }, { |
| | | path: '/recruitmentManagement', |
| | | component: Layout, |
| | | redirect: '/recruitmentManagement/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '招聘管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/recruitmentManagement/index') |
| | | }] |
| | | }, { |
| | | path: '/securityUnit', |
| | | component: Layout, |
| | | redirect: '/securityUnit/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安单位信息', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/securityUnit/index') |
| | | }] |
| | | }, { |
| | | path: '/securityGuard', |
| | | component: Layout, |
| | | redirect: '/securityGuard/securityGuard', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安员查询', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/securityGuard/securityGuard') |
| | | }] |
| | | }, { |
| | | path: '/securityGuardDetail', |
| | | component: Layout, |
| | | redirect: '/securityGuardDetail/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安员详情', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/securityGuard/securityGuardDetail') |
| | | }] |
| | | }, { |
| | | path: '/resource', |
| | | component: Layout, |
| | | redirect: '/resource/attach', |
| | | children: [{ |
| | | path: 'attach', |
| | | name: '附件上传', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/resource/attach') |
| | | }] |
| | | }, { |
| | | path: '/securityUnitChild', |
| | | component: Layout, |
| | | redirect: '/securityUnitChild/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安单位详情', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/securityUnitChild/index') |
| | | }] |
| | | }, { |
| | | path: '/securityGuard', |
| | | component: Layout, |
| | | redirect: '/securityGuard/securityGuard', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安员管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/securityGuard/securityGuard') |
| | | }] |
| | | }, |
| | | // { |
| | | // path: '/dispatch/dispatch', |
| | | // component: Layout, |
| | | // redirect: '/dispatch/dispatch', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '派遣服务管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/dispatch/dispatch') |
| | | // }] |
| | | // }, |
| | | { |
| | | path: '/desk', |
| | | component: Layout, |
| | | redirect: '/desk/notice', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '通知公告', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/desk/notice') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/talk', |
| | | component: Layout, |
| | | redirect: '/dispatchChild/index', |
| | | redirect: '/talk/talk', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '派遣服务记录', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/dispatchChild/index') |
| | | path: 'index', |
| | | name: '心里咨询', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/talk/talk') |
| | | }] |
| | | }, { |
| | | path: '/applyexam', |
| | | redirect: '/applyexam/papers', |
| | | component: Layout, |
| | | children: [{ |
| | | path: 'papers', |
| | | name: '准考证信息', |
| | | meta: { |
| | | i18n: 'index', |
| | | }, |
| | | }, |
| | | { |
| | | path: '/workreport', |
| | | component: Layout, |
| | | redirect: '/workreport/workreport', |
| | | children: [{ |
| | | path: 'workreport', |
| | | name: '发起的汇报', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/workreport/workreport') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/workreport', |
| | | component: Layout, |
| | | redirect: '/workreport/workreply', |
| | | children: [{ |
| | | path: 'workreply', |
| | | name: '接收的汇报', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/workreport/workreply') |
| | | }] |
| | | }, { |
| | | path: '/resource', |
| | | component: Layout, |
| | | redirect: '/resource/attachCopy', |
| | | children: [{ |
| | | path: 'attachCopy', |
| | | name: '保安单位附件上传', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/resource/attachCopy') |
| | | }] |
| | | }, |
| | | // { |
| | | // path: '/dispatch', |
| | | // component: Layout, |
| | | // redirect: '/dispatch/dispatch', |
| | | // children: [{ |
| | | // path: 'dispatch', |
| | | // name: '派遣单位管理', |
| | | // meta: { |
| | | // i18n: 'dispatch' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/dispatch/dispatch') |
| | | // }, { |
| | | // path: 'dispatchChildoperable', |
| | | // name: '派遣记录管理', |
| | | // meta: { |
| | | // i18n: 'dispatch' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/dispatch/dispatchChildoperable') |
| | | // }] |
| | | // }, |
| | | // { |
| | | // path: '/dispatchChild', |
| | | // component: Layout, |
| | | // redirect: '/dispatchChild/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '派遣服务记录', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/dispatchChild/index') |
| | | // }] |
| | | // }, |
| | | // { |
| | | // path: '/equipments', |
| | | // component: Layout, |
| | | // redirect: '/equipments/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '保安公司装备管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/equipments/index') |
| | | // }] |
| | | // }, { |
| | | // path: '/car', |
| | | // component: Layout, |
| | | // redirect: '/car/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '保安公司车辆管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/car/index') |
| | | // }] |
| | | // }, { |
| | | // path: '/gun', |
| | | // component: Layout, |
| | | // redirect: '/gun/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '保安公司枪支管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/gun/index') |
| | | // }] |
| | | // }, |
| | | // { |
| | | // path: '/securityEquipment', |
| | | // component: Layout, |
| | | // redirect: '/securityEquipment', |
| | | // children: [{ |
| | | // path: 'equipments', |
| | | // name: '装备管理', |
| | | // meta: { |
| | | // i18n: 'securityEquipment' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/securityEquipment/equipments') |
| | | // }, { |
| | | // path: 'car', |
| | | // name: '车辆管理', |
| | | // meta: { |
| | | // i18n: 'car' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/securityEquipment/car') |
| | | // }, { |
| | | // path: 'gun', |
| | | // name: '车辆管理', |
| | | // meta: { |
| | | // i18n: 'gun' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/securityEquipment/gun') |
| | | // }] |
| | | // }, |
| | | { |
| | | path: '/trainingRegistration', |
| | | component: Layout, |
| | | redirect: '/trainingRegistration/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安培训报名管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/trainingRegistration/index') |
| | | }] |
| | | }, { |
| | | path: '/securityAnalysis', |
| | | component: Layout, |
| | | redirect: '/securityAnalysis/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安单位情况智能分析', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/securityAnalysis/index') |
| | | }] |
| | | }, { |
| | | path: '/recruitmentManagement', |
| | | component: Layout, |
| | | redirect: '/recruitmentManagement/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '招聘管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/recruitmentManagement/index') |
| | | }] |
| | | }, { |
| | | path: '/securityUnit', |
| | | component: Layout, |
| | | redirect: '/securityUnit/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安单位信息', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/securityUnit/index') |
| | | }] |
| | | }, { |
| | | path: '/securityGuard', |
| | | component: Layout, |
| | | redirect: '/securityGuard/securityGuard', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安员查询', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/securityGuard/securityGuard') |
| | | }] |
| | | }, { |
| | | path: '/securityGuardDetail', |
| | | component: Layout, |
| | | redirect: '/securityGuardDetail/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安员详情', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/securityGuard/securityGuardDetail') |
| | | }] |
| | | }, { |
| | | path: '/resource', |
| | | component: Layout, |
| | | redirect: '/resource/attach', |
| | | children: [{ |
| | | path: 'attach', |
| | | name: '附件上传', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/resource/attach') |
| | | }] |
| | | }, { |
| | | path: '/securityUnitChild', |
| | | component: Layout, |
| | | redirect: '/securityUnitChild/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安单位详情', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/securityUnitChild/index') |
| | | }] |
| | | }, { |
| | | path: '/securityGuard', |
| | | component: Layout, |
| | | redirect: '/securityGuard/securityGuard', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安员管理', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/securityGuard/securityGuard') |
| | | }] |
| | | }, |
| | | // { |
| | | // path: '/dispatch/dispatch', |
| | | // component: Layout, |
| | | // redirect: '/dispatch/dispatch', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '派遣服务管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/dispatch/dispatch') |
| | | // }] |
| | | // }, |
| | | { |
| | | path: '/desk', |
| | | component: Layout, |
| | | redirect: '/desk/notice', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '通知公告', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/desk/notice') |
| | | }] |
| | | }, { |
| | | path: '/dispatch', |
| | | component: Layout, |
| | | redirect: '/dispatch/dispatch', |
| | | children: [{ |
| | | path: 'dispatch', |
| | | name: '派遣单位管理', |
| | | meta: { |
| | | i18n: 'dispatch' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/dispatch/dispatch') |
| | | }, { |
| | | path: 'dispatchChildoperable', |
| | | name: '派遣记录管理', |
| | | meta: { |
| | | i18n: 'dispatch' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/dispatch/dispatchChildoperable') |
| | | }] |
| | | }, { |
| | | path: '/dispatchChild', |
| | | component: Layout, |
| | | redirect: '/dispatchChild/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '派遣服务记录', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/dispatchChild/index') |
| | | }] |
| | | }, { |
| | | path: '/applyexam', |
| | | redirect: '/applyexam/papers', |
| | | component: Layout, |
| | | children: [{ |
| | | path: 'papers', |
| | | name: '准考证信息', |
| | | meta: { |
| | | i18n: 'index', |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/applyexam/papers') |
| | | }] |
| | | }, |
| | | // { |
| | | // path: '/equipments', |
| | | // component: Layout, |
| | | // redirect: '/equipments/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '保安公司装备管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/equipments/index') |
| | | // }] |
| | | // }, { |
| | | // path: '/car', |
| | | // component: Layout, |
| | | // redirect: '/car/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '保安公司车辆管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/car/index') |
| | | // }] |
| | | // }, { |
| | | // path: '/gun', |
| | | // component: Layout, |
| | | // redirect: '/gun/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '保安公司枪支管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/gun/index') |
| | | // }] |
| | | // }, |
| | | // { |
| | | // path: '/securityEquipment', |
| | | // component: Layout, |
| | | // redirect: '/securityEquipment', |
| | | // children: [{ |
| | | // path: 'equipments', |
| | | // name: '装备管理', |
| | | // meta: { |
| | | // i18n: 'securityEquipment' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/securityEquipment/equipments') |
| | | // }, { |
| | | // path: 'car', |
| | | // name: '车辆管理', |
| | | // meta: { |
| | | // i18n: 'car' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/securityEquipment/car') |
| | | // }, { |
| | | // path: 'gun', |
| | | // name: '车辆管理', |
| | | // meta: { |
| | | // i18n: 'gun' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/securityEquipment/gun') |
| | | // }] |
| | | // }, |
| | | { |
| | | path: '/trainingRegistration', |
| | | component: Layout, |
| | | redirect: '/trainingRegistration/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安培训报名', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/trainingRegistration/index') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/trainExam', |
| | | component: Layout, |
| | | redirect: '/trainExam/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '考试申请', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/trainExam/index') |
| | | }] |
| | | }, |
| | | // { |
| | | // path: '/applyexam', |
| | | // redirect: '/applyexam/index', |
| | | // component: Layout, |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '报名考试', |
| | | // meta: { |
| | | // i18n: 'index', |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/applyexam/index') |
| | | // }] |
| | | // }, |
| | | { |
| | | path: '/applydetailed', |
| | | redirect: '/applydetailed/index', |
| | | component: Layout, |
| | | children: [{ |
| | | path: 'index', |
| | | name: '报名清册', |
| | | meta: { |
| | | i18n: 'index', |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/applydetailed/index') |
| | | }] |
| | | }, |
| | | { |
| | | 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, |
| | | children: [{ |
| | | path: 'index', |
| | | name: '开始考试', |
| | | meta: { |
| | | i18n: 'index', |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/startexam/index') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/titleDetails', |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/applyexam/papers') |
| | | }] |
| | | }, |
| | | // { |
| | | // path: '/equipments', |
| | | // component: Layout, |
| | | // redirect: '/equipments/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '保安公司装备管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/equipments/index') |
| | | // }] |
| | | // }, { |
| | | // path: '/car', |
| | | // component: Layout, |
| | | // redirect: '/car/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '保安公司车辆管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/car/index') |
| | | // }] |
| | | // }, { |
| | | // path: '/gun', |
| | | // component: Layout, |
| | | // redirect: '/gun/index', |
| | | // children: [{ |
| | | // path: 'index', |
| | | // name: '保安公司枪支管理', |
| | | // meta: { |
| | | // i18n: 'dict' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/gun/index') |
| | | // }] |
| | | // }, |
| | | // { |
| | | // path: '/securityEquipment', |
| | | // component: Layout, |
| | | // redirect: '/securityEquipment', |
| | | // children: [{ |
| | | // path: 'equipments', |
| | | // name: '装备管理', |
| | | // meta: { |
| | | // i18n: 'securityEquipment' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/securityEquipment/equipments') |
| | | // }, { |
| | | // path: 'car', |
| | | // name: '车辆管理', |
| | | // meta: { |
| | | // i18n: 'car' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/securityEquipment/car') |
| | | // }, { |
| | | // path: 'gun', |
| | | // name: '车辆管理', |
| | | // meta: { |
| | | // i18n: 'gun' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/securityEquipment/gun') |
| | | // }] |
| | | // }, |
| | | { |
| | | path: '/trainingRegistration', |
| | | component: Layout, |
| | | redirect: '/trainingRegistration/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '保安培训报名', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/trainingRegistration/index') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/trainExam', |
| | | component: Layout, |
| | | redirect: '/trainExam/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '考试申请', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/trainExam/index') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/applyexam', |
| | | redirect: '/applyexam/index', |
| | | component: Layout, |
| | | children: [{ |
| | | path: 'index', |
| | | name: '报名考试', |
| | | meta: { |
| | | i18n: 'index', |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/applyexam/index') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/applydetailed', |
| | | redirect: '/applydetailed/index', |
| | | component: Layout, |
| | | children: [{ |
| | | path: 'index', |
| | | name: '报名清册', |
| | | meta: { |
| | | i18n: 'index', |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/applydetailed/index') |
| | | }] |
| | | }, |
| | | { |
| | | 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, |
| | | children: [{ |
| | | path: 'index', |
| | | name: '开始考试', |
| | | meta: { |
| | | i18n: 'index', |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/startexam/index') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/titleDetails', |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/exam/topicDetails') |
| | | }, |
| | | { |
| | | path: '', |
| | | component: Layout, |
| | | children: [{ |
| | | path: '/exam/subjects/:id', |
| | | component: () => |
| | | import('@/views/exam/examSubjects'), |
| | | name: '题目管理', |
| | | title: '题目管理', |
| | | noCache: true |
| | | }] |
| | | }, |
| | | { |
| | | path: '', |
| | | component: Layout, |
| | | children: [{ |
| | | path: '/startexam/:id', |
| | | component: () => |
| | | import('@/views/startexam/index'), |
| | | name: '开始考试', |
| | | title: '开始考试', |
| | | noCache: true |
| | | }] |
| | | }, |
| | | { |
| | | path: '/traincompany', |
| | | component: Layout, |
| | | redirect: '/traincompany/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '培训公司查询', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/traincompany/index') |
| | | }] |
| | | }, { |
| | | path: '/dispatchChildoperableSee', |
| | | component: Layout, |
| | | redirect: '/dispatchChildoperableSee/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '派遣记录', |
| | | meta: { |
| | | i18n: 'index' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/dispatch/dispatchChildoperableSee') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/expression', |
| | | component: Layout, |
| | | redirect: '/expression/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '表现记录', |
| | | meta: { |
| | | i18n: 'index' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/people/expression') |
| | | }] |
| | | }, { |
| | | path: '/job', |
| | | component: Layout, |
| | | redirect: '/job/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '从业记录', |
| | | meta: { |
| | | i18n: 'index' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/people/job') |
| | | }] |
| | | }, { |
| | | path: '/resource', |
| | | redirect: '/resource/uploadNotice', |
| | | component: Layout, |
| | | children: [{ |
| | | path: 'uploadNotice', |
| | | name: '通知公告>附件上传', |
| | | meta: { |
| | | i18n: 'index', |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/resource/uploadNotice') |
| | | }] |
| | | } |
| | | import ( /* webpackChunkName: "views" */ '@/views/exam/topicDetails') |
| | | }, |
| | | { |
| | | path: '', |
| | | component: Layout, |
| | | children: [{ |
| | | path: '/exam/subjects/:id', |
| | | component: () => |
| | | import ('@/views/exam/examSubjects'), |
| | | name: '题目管理', |
| | | title: '题目管理', |
| | | noCache: true |
| | | }] |
| | | }, |
| | | { |
| | | path: '', |
| | | component: Layout, |
| | | children: [{ |
| | | path: '/startexam/:id', |
| | | component: () => |
| | | import ('@/views/startexam/index'), |
| | | name: '开始考试', |
| | | title: '开始考试', |
| | | noCache: true |
| | | }] |
| | | }, |
| | | { |
| | | path: '/traincompany', |
| | | component: Layout, |
| | | redirect: '/traincompany/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '培训公司查询', |
| | | meta: { |
| | | i18n: 'dict' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/traincompany/index') |
| | | }] |
| | | }, { |
| | | path: '/dispatchChildoperableSee', |
| | | component: Layout, |
| | | redirect: '/dispatchChildoperableSee/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '派遣记录', |
| | | meta: { |
| | | i18n: 'index' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/dispatch/dispatchChildoperableSee') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/expression', |
| | | component: Layout, |
| | | redirect: '/expression/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '表现记录', |
| | | meta: { |
| | | i18n: 'index' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/people/expression') |
| | | }] |
| | | }, { |
| | | path: '/job', |
| | | component: Layout, |
| | | redirect: '/job/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '从业记录', |
| | | meta: { |
| | | i18n: 'index' |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/people/job') |
| | | }] |
| | | }, { |
| | | path: '/resource', |
| | | redirect: '/resource/uploadNotice', |
| | | component: Layout, |
| | | children: [{ |
| | | path: 'uploadNotice', |
| | | name: '通知公告>附件上传', |
| | | meta: { |
| | | i18n: 'index', |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/resource/uploadNotice') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/applydetailed', |
| | | redirect: '/applydetailed/papers', |
| | | component: Layout, |
| | | children: [{ |
| | | path: 'papers', |
| | | name: '报名清册信息', |
| | | meta: { |
| | | i18n: 'index', |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/applydetailed/papers') |
| | | }] |
| | | }, |
| | | { |
| | | path: '/exam', |
| | | redirect: '/exam/papers', |
| | | component: Layout, |
| | | children: [{ |
| | | path: 'papers', |
| | | name: '保安证', |
| | | meta: { |
| | | i18n: 'index', |
| | | }, |
| | | component: () => |
| | | import ( /* webpackChunkName: "views" */ '@/views/exam/papers') |
| | | }] |
| | | } |
| | | ] |
| | |
| | | * menu-name 报名考试 |
| | | */ |
| | | <template> |
| | | <el-row class="morpheus-box-apply-exam-1"> |
| | | <el-col :span="24" class="hasButOne"> |
| | | <el-card> |
| | | <div class="exam-card-body"> |
| | | <el-row class="morpheus-box-apply-exam-1"> |
| | | <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> |
| | | <el-button |
| | | style="display:none" |
| | | type="success" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-receiving" |
| | | @click="handleImport" |
| | | >清册打印 |
| | | </el-button> |
| | | </template> |
| | | |
| | | <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-scope="{ type, row }" slot="menu"> |
| | | <el-button |
| | | :type="type" |
| | | size="small" |
| | | icon="el-icon-receiving" |
| | | :disabled="row.applyStatus == 4" |
| | | @click="handlePrint(row)" |
| | | >准考证打印 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | |
| | | <!-- 自定义按钮 --> |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="warning" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-download" |
| | | @click="handleExport" |
| | | >导出 |
| | | </el-button> |
| | | <el-button |
| | | type="success" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-upload2" |
| | | @click="handleImport" |
| | | >导入 |
| | | </el-button> |
| | | </template> |
| | | |
| | | <template slot-scope="{ type,row }" slot="menu"> |
| | | <el-button |
| | | :type="type" |
| | | size="small" |
| | | icon="el-icon-receiving" |
| | | :disabled="row.applyStatus==4" |
| | | @click="handlePrint(row)" |
| | | >准考证打印 |
| | | </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-row> |
| | | <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-row> |
| | | </template> |
| | | |
| | | <script> |
| | | |
| | | import { |
| | | getApplyList, |
| | | addApply, |
| | | remove |
| | | } from "@/api/examapi/applyexam"; |
| | | import { mapState } from 'vuex' |
| | | |
| | | import { getApplyList, addApply, remove } from "@/api/examapi/applyexam"; |
| | | import { mapState } from "vuex"; |
| | | |
| | | var DIC = { |
| | | applyStatus: [{ |
| | | label: '已报名', |
| | | value: 2 |
| | | }, { |
| | | label: '已取消', |
| | | value: 4 |
| | | }] |
| | | } |
| | | applyStatus: [ |
| | | { |
| | | label: "已报名", |
| | | value: 2, |
| | | }, |
| | | { |
| | | label: "已取消", |
| | | value: 4, |
| | | }, |
| | | ], |
| | | }; |
| | | |
| | | export default { |
| | | data () { |
| | | data() { |
| | | return { |
| | | obj: { |
| | | name: "张三", |
| | | }, |
| | | excelBox: false, |
| | | questionBankOption: { |
| | | // 操作栏多余按钮去除 |
| | | delBtn: false, |
| | | editBtn: false, |
| | | addBtn: false, |
| | | selection: true, |
| | | menu: true, |
| | | // 导出按钮 |
| | | // excelBtn: true, |
| | | viewBtn: false, |
| | | |
| | | return { |
| | | obj: { |
| | | name: '张三', |
| | | // 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: "userId", |
| | | type: "tree", |
| | | dicUrl: "", |
| | | hide: true, |
| | | slot: true, |
| | | searchSpan: 4, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | viewDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | viewDisplay: false, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | props: { |
| | | label: "title", |
| | | value: "id", |
| | | }, |
| | | excelBox: false, |
| | | 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: "userId", |
| | | type: 'tree', |
| | | dicUrl: '', |
| | | search: true, |
| | | hide: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: "name", |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: false, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: false, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | viewDisplay:true, |
| | | props: { |
| | | label: "title", |
| | | value: "id", |
| | | }, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择保安姓名", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "考试名称", |
| | | prop: "examName", |
| | | 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" |
| | | }], |
| | | width:100 |
| | | }, |
| | | { |
| | | 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: "applyTime", |
| | | 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: 160 |
| | | }, |
| | | { |
| | | label: "考试时间", |
| | | prop: "examTime", |
| | | 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: 160 |
| | | },{ |
| | | label: "报名状态", |
| | | prop: "applyStatus", |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: false, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | dicData:DIC.applyStatus, |
| | | search:true, |
| | | type:"select" |
| | | }, |
| | | ] |
| | | }, |
| | | questionBankSearch: {}, |
| | | questionBankLoading: true, |
| | | questionBankData: [ |
| | | |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择保安姓名", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | questionBankPage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 16 |
| | | width: 80, |
| | | }, |
| | | { |
| | | label: "保安姓名", |
| | | prop: "realName", |
| | | searchSpan: 4, |
| | | search: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: false, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: false, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | viewDisplay: true, |
| | | props: { |
| | | label: "title", |
| | | value: "id", |
| | | }, |
| | | 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/apply/import-apply", |
| | | }, |
| | | { |
| | | label: "模板下载", |
| | | prop: "excelTemplate", |
| | | formslot: true, |
| | | span: 24, |
| | | }, |
| | | ], |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择保安姓名", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "考试名称", |
| | | prop: "examName", |
| | | 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", |
| | | }, |
| | | ], |
| | | width: 100, |
| | | }, |
| | | { |
| | | 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: "applyTime", |
| | | 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()), |
| | | |
| | | 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 |
| | | ); |
| | | } |
| | | } |
| | | width: 160, |
| | | }, |
| | | // { |
| | | // label: "考试时间", |
| | | // prop: "examTime", |
| | | // 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: 160 |
| | | // },{ |
| | | // label: "报名状态", |
| | | // prop: "applyStatus", |
| | | // slot: true, |
| | | // // 表单新增时是否禁止 |
| | | // addDisabled: false, |
| | | // // 表单新增时是否可见 |
| | | // addDisplay: false, |
| | | // // 表单新增时是否为查看模式 |
| | | // addDetail: false, |
| | | // // 表单编辑时是否禁止 |
| | | // editDisabled: false, |
| | | // // 表单编辑时是否可见 |
| | | // editDisplay: true, |
| | | // // 表单编辑时是否为查看模式 |
| | | // editDetail: false, |
| | | // dicData:DIC.applyStatus, |
| | | // search:true, |
| | | // type:"select" |
| | | // }, |
| | | ], |
| | | }, |
| | | 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", |
| | | }, |
| | | immediate: true, |
| | | }, |
| | | }, |
| | | created () { |
| | | tip: "请上传 .xls,.xlsx 标准格式文件", |
| | | action: "/api/apply/import-apply", |
| | | }, |
| | | { |
| | | label: "模板下载", |
| | | prop: "excelTemplate", |
| | | formslot: true, |
| | | span: 24, |
| | | }, |
| | | ], |
| | | }, |
| | | }; |
| | | }, |
| | | created() { |
| | | console.log(this.userInfo); |
| | | |
| | | 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; |
| | | getApplyList(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) { |
| | | |
| | | addApply({ 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/apply/export-apply?examId=${this.$route.query.id}`); |
| | | }); |
| | | }, |
| | | handleImport() { |
| | | this.excelBox = true; |
| | | }, |
| | | handleTemplate() { |
| | | window.open( |
| | | `/api/apply/export-template` |
| | | ); |
| | | }, |
| | | uploadAfter(res, done, loading, column) { |
| | | window.console.log(column); |
| | | this.excelBox = false; |
| | | this.refreshChange(); |
| | | done(); |
| | | }, |
| | | refreshChange() { |
| | | this.questionBankOnLoad(this.page, this.query); |
| | | }, |
| | | 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, |
| | | }); |
| | | }, |
| | | //清册生成 |
| | | handleExport() { |
| | | var obj ={}; |
| | | obj["name"] = "报名清册信息"; |
| | | obj["examId"] = this.$route.query.id; |
| | | this.$router.push({ |
| | | path: `/applydetailed/papers`, |
| | | query: obj, |
| | | }); |
| | | }, |
| | | questionBankOnLoad(page, params = {}) { |
| | | // debugger; |
| | | params["examId"] = this.$route.query.id; |
| | | this.questionBankLoading = false; |
| | | getApplyList( |
| | | 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) { |
| | | addApply({ |
| | | 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(); |
| | | }); |
| | | }, |
| | | |
| | | |
| | | handleImport() { |
| | | this.excelBox = true; |
| | | }, |
| | | handleTemplate() { |
| | | window.open(`/api/apply/export-template`); |
| | | }, |
| | | uploadAfter(res, done, loading, column) { |
| | | window.console.log(column); |
| | | this.excelBox = false; |
| | | this.refreshChange(); |
| | | done(); |
| | | }, |
| | | refreshChange() { |
| | | this.questionBankOnLoad(this.page, this.query); |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| New file |
| | |
| | | <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: "/papersApply.html", |
| | | }; |
| | | }, |
| | | created(){ |
| | | var d = this.$route.query; |
| | | this.url += "?data=" + JSON.stringify(d); |
| | | console.log(d,11); |
| | | }, |
| | | 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> |
| | |
| | | @click="questionBankHandleDelete">删 除 |
| | | </el-button> |
| | | </template> --> |
| | | <!-- 自定义按钮 --> |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="primary" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-folder-checked" |
| | | @click="handleBatchExam" |
| | | v-if="examPersission" |
| | | >生成考试 |
| | | </el-button> |
| | | <el-button |
| | | type="primary" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-folder-checked" |
| | | @click="handleImport" |
| | | >清册导入 |
| | | </el-button> |
| | | </template> |
| | | |
| | | <template slot-scope="{ type, row }" slot="menu"> |
| | | <el-button |
| | | :type="type" |
| | | size="small" |
| | | icon="el-icon-refresh-left" |
| | | :disabled="row.applyStatus == 4" |
| | | :disabled="row.isApply == 2" |
| | | @click="handleCancel(row)" |
| | | >取消报名 |
| | | </el-button> |
| | |
| | | @reset-change="emptytChange" |
| | | @submit="submit" |
| | | ></avue-form> |
| | | |
| | | </el-dialog> |
| | | |
| | | <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="考试生成" |
| | | append-to-body |
| | | :visible.sync="dialogExamFormVisible" |
| | | width="1000px" |
| | | @close='closeDialog' |
| | | > |
| | | <avue-form |
| | | ref="formExamApply" |
| | | v-model="examApply" |
| | | :option="optionExamApply" |
| | | @reset-change="emptytChange" |
| | | @submit="submitExamApply" |
| | | ></avue-form> |
| | | </el-dialog> |
| | | </div> |
| | | </el-card> |
| | |
| | | addApply, |
| | | updateApply, |
| | | remove, |
| | | addExam |
| | | } from "@/api/examapi/applyexam"; |
| | | import { mapState } from "vuex"; |
| | | |
| | |
| | | data() { |
| | | return { |
| | | dialogFormVisible: false, |
| | | dialogExamFormVisible: false, |
| | | examPersission:false, |
| | | applyExport:false, |
| | | excelBox:false, |
| | | Audit: {}, |
| | | 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/apply/import-apply", |
| | | }, |
| | | { |
| | | label: "模板下载", |
| | | prop: "excelTemplate", |
| | | formslot: true, |
| | | span: 24, |
| | | }, |
| | | ], |
| | | }, |
| | | optionAudit: { |
| | | height: "auto", |
| | | calcHeight: 30, |
| | |
| | | }, |
| | | ], |
| | | }, |
| | | optionExamApply: { |
| | | height: "auto", |
| | | filterBtn: true, |
| | | calcHeight: 30, |
| | | dialogWidth: 950, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 6, |
| | | border: false, |
| | | index: true, |
| | | stripe: true, |
| | | viewBtn: true, |
| | | selection: true, |
| | | excelBtn: false, |
| | | menuWidth: 380, |
| | | dialogClickModal: false, |
| | | column: [ |
| | | { |
| | | label: "考试时间", |
| | | prop: "examTime", |
| | | type: "daterange", |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | startPlaceholder: "考试开始时间", |
| | | endPlaceholder: "考试结束时间", |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择考试时间", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | span: 24, |
| | | }, |
| | | ], |
| | | }, |
| | | questionBankOption: { |
| | | // 操作栏多余按钮去除 |
| | | delBtn: false, |
| | | editBtn: false, |
| | | addBtn: true, |
| | | addBtn: false, |
| | | selection: true, |
| | | menu: true, |
| | | // 导出按钮 |
| | | // excelBtn: true, |
| | | viewBtn: false, |
| | | viewBtn: true, |
| | | |
| | | // title: '题库', |
| | | |
| | |
| | | //tree 默认展开 |
| | | defaultExpandAll: true, |
| | | // 操作栏宽度 |
| | | menuWidth: 200, |
| | | menuWidth: 300, |
| | | |
| | | column: [ |
| | | { |
| | |
| | | prop: "userId", |
| | | type: "tree", |
| | | dicUrl: "", |
| | | search: true, |
| | | hide: true, |
| | | slot: true, |
| | | searchSpan: 4, |
| | |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | viewDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | viewDisplay: false, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | props: { |
| | |
| | | }, |
| | | { |
| | | label: "保安姓名", |
| | | prop: "name", |
| | | prop: "realName", |
| | | searchSpan: 4, |
| | | search: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | |
| | | prop: "deptName", |
| | | search: true, |
| | | slot: true, |
| | | searchSpan: 4, |
| | | searchSpan: 6, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | |
| | | |
| | | width: 150, |
| | | }, |
| | | { |
| | | label: "考试时间", |
| | | prop: "examTime", |
| | | 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: 150, |
| | | }, |
| | | { |
| | | label: "报名状态", |
| | | prop: "applyStatus", |
| | | slot: true, |
| | | searchSpan: 4, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: false, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | dicData: DIC.applyStatus, |
| | | search: true, |
| | | type: "select", |
| | | }, |
| | | // { |
| | | // label: "考试时间", |
| | | // prop: "examTime", |
| | | // 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: 150, |
| | | // }, |
| | | // { |
| | | // label: "报名状态", |
| | | // prop: "applyStatus", |
| | | // slot: true, |
| | | // searchSpan: 4, |
| | | // // 表单新增时是否禁止 |
| | | // addDisabled: false, |
| | | // // 表单新增时是否可见 |
| | | // addDisplay: false, |
| | | // // 表单新增时是否为查看模式 |
| | | // addDetail: false, |
| | | // // 表单编辑时是否禁止 |
| | | // editDisabled: false, |
| | | // // 表单编辑时是否可见 |
| | | // editDisplay: true, |
| | | // // 表单编辑时是否为查看模式 |
| | | // editDetail: false, |
| | | // dicData: DIC.applyStatus, |
| | | // search: true, |
| | | // type: "select", |
| | | // }, |
| | | // { |
| | | // label: "审核状态", |
| | | // prop: "examinationType", |
| | |
| | | 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; |
| | | this.examPersission = true; |
| | | } |
| | | }, |
| | | mounted() {}, |
| | |
| | | ); |
| | | }, |
| | | |
| | | //生成考试弹窗 |
| | | handleBatchExam(){ |
| | | this.dialogExamFormVisible = true; |
| | | if (this.questionBankSelectionList.length === 0) { |
| | | this.ids = ""; |
| | | } |
| | | }, |
| | | //生成考试 |
| | | submitExamApply(row, done, loading){ |
| | | var that = this; |
| | | var startTime = row.examTime[0]; |
| | | var endTime = row.examTime[1]; |
| | | var examTime = JSON.stringify(row.examTime); |
| | | console.log(this.ids,111); |
| | | addExam(this.ids, examTime, startTime, endTime).then( |
| | | () => { |
| | | this.questionBankOnLoad(this.questionBankPage); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | that.$refs.formExamApply.resetFields(); |
| | | that.dialogExamFormVisible = false; |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }, |
| | | //关闭窗口清除数据 |
| | | closeDialog(){ |
| | | this.$refs.formExamApply.resetFields(); |
| | | }, |
| | | |
| | | questionBankRowDel(row) { |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | |
| | | this.dialogFormVisible = true; |
| | | this.Audit = row; |
| | | }, |
| | | |
| | | handleImport() { |
| | | this.excelBox = true; |
| | | }, |
| | | |
| | | handleTemplate() { |
| | | window.open( |
| | | `/api/apply/export-template` |
| | | ); |
| | | }, |
| | | uploadAfter(res, done, loading, column) { |
| | | window.console.log(column); |
| | | this.excelBox = false; |
| | | this.refreshChange(); |
| | | done(); |
| | | }, |
| | | |
| | | refreshChange() { |
| | | this.questionBankOnLoad(this.page, this.query); |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |
| | |
| | | i = 0, |
| | | ind = null; |
| | | this.$store.state.tags.tagList.forEach((item, index) => { |
| | | if (item.label == "准考证信息") { |
| | | if (item.label == "报名清册信息") { |
| | | if (flag == false) { |
| | | ind = index; |
| | | flag = true; |
| New file |
| | |
| | | /* |
| | | * @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="primary" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-folder-checked" |
| | | @click="handleBatchApply" |
| | | >批量报名 |
| | | </el-button> |
| | | </template> |
| | | |
| | | <template slot-scope="{ type, row }" slot="menu"> |
| | | <el-button |
| | | :type="type" |
| | | size="small" |
| | | icon="el-icon-refresh-left" |
| | | :disabled="row.isApply == 2 || row.isApply == -1" |
| | | @click="handleCancel(row)" |
| | | >取消报名 |
| | | </el-button> |
| | | <el-button |
| | | :type="type" |
| | | size="small" |
| | | icon="el-icon-folder-checked" |
| | | @click="questionBankRowSave(row)" |
| | | >报名 |
| | | </el-button> |
| | | <el-button |
| | | :type="type" |
| | | style="display: none" |
| | | size="small" |
| | | icon="el-icon-receiving" |
| | | :disabled="row.isApply == 2" |
| | | @click="handlePrint(row)" |
| | | >准考证打印 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | |
| | | <el-dialog |
| | | title="考试资格审核" |
| | | :visible.sync="dialogFormVisible" |
| | | modal-append-to-body="false" |
| | | append-to-body="true" |
| | | :close-on-click-model="true" |
| | | > |
| | | <avue-form |
| | | ref="formAudit" |
| | | v-model="Audit" |
| | | :option="optionAudit" |
| | | @reset-change="emptytChange" |
| | | @submit="submit" |
| | | ></avue-form> |
| | | </el-dialog> |
| | | |
| | | <el-dialog |
| | | title="报名" |
| | | append-to-body |
| | | :visible.sync="dialogBatchFormVisible" |
| | | width="1000px" |
| | | @close='closeDialog' |
| | | > |
| | | <avue-form |
| | | ref="formBatchApply" |
| | | v-model="BatchApply" |
| | | :option="optionBatchApply" |
| | | @reset-change="emptytChange" |
| | | @submit="submitBatchApply" |
| | | ></avue-form> |
| | | </el-dialog> |
| | | </div> |
| | | </el-card> |
| | | </el-col> |
| | | </el-row> |
| | | </template> |
| | | |
| | | <script> |
| | | import { addApply, updateApply, remove } from "@/api/examapi/applyexam"; |
| | | import { getListApply,addBatchApply } from "@/api/securityGuard/securityGuard"; |
| | | import { mapState } from "vuex"; |
| | | |
| | | var DIC = { |
| | | applyStatus: [ |
| | | { |
| | | label: "已报名", |
| | | value: 1, |
| | | }, |
| | | { |
| | | label: "已取消", |
| | | value: 2, |
| | | }, |
| | | ], |
| | | }; |
| | | |
| | | export default { |
| | | data() { |
| | | return { |
| | | dialogFormVisible: false, |
| | | dialogBatchFormVisible: false, |
| | | Audit: {}, |
| | | BatchApply: {}, |
| | | optionAudit: { |
| | | height: "auto", |
| | | calcHeight: 30, |
| | | dialogWidth: 1000, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 6, |
| | | border: false, |
| | | index: true, |
| | | stripe: true, |
| | | viewBtn: false, |
| | | addBtn: false, |
| | | selection: true, |
| | | excelBtn: false, |
| | | menuWidth: 230, |
| | | dialogClickModal: false, |
| | | column: [ |
| | | { |
| | | label: "审核状态", |
| | | search: true, |
| | | searchSpan: 5, |
| | | span: 24, |
| | | prop: "auditStatus", |
| | | slot: true, |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | type: "select", |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择审核类型", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | dicData: [ |
| | | { |
| | | label: "审核通过", |
| | | value: 2, |
| | | }, |
| | | { |
| | | label: "不通过", |
| | | value: 3, |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "审核明细", |
| | | span: 24, |
| | | type: "textarea", |
| | | prop: "auditDetail", |
| | | }, |
| | | ], |
| | | }, |
| | | optionBatchApply: { |
| | | height: "auto", |
| | | filterBtn: true, |
| | | calcHeight: 30, |
| | | dialogWidth: 950, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 6, |
| | | border: false, |
| | | index: true, |
| | | stripe: true, |
| | | viewBtn: true, |
| | | selection: true, |
| | | excelBtn: false, |
| | | menuWidth: 320, |
| | | dialogClickModal: false, |
| | | column: [ |
| | | { |
| | | label: "姓名", |
| | | prop: "userId", |
| | | type: "tree", |
| | | hide: true, |
| | | // dicUrl: "/api/blade-user/page-security-unit?deptId="+this.deptId, |
| | | props: { |
| | | label: "name", |
| | | value: "id", |
| | | }, |
| | | //不包含父节点值 |
| | | leafOnly:true, |
| | | multiple: true, |
| | | searchSpan: 5, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入姓名", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | span: 24, |
| | | }, |
| | | ], |
| | | }, |
| | | 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, |
| | | //tree 默认展开 |
| | | defaultExpandAll: true, |
| | | // 操作栏宽度 |
| | | menuWidth: 200, |
| | | |
| | | column: [ |
| | | { |
| | | label: "姓名", |
| | | prop: "realName", |
| | | search: true, |
| | | searchSpan: 4, |
| | | searchLabelWidth: 50, |
| | | display: false, |
| | | }, |
| | | { |
| | | label: "性别", |
| | | prop: "sex", |
| | | type: "select", |
| | | dicData: [ |
| | | { |
| | | label: "男", |
| | | value: 1, |
| | | }, |
| | | { |
| | | label: "女", |
| | | value: 2, |
| | | }, |
| | | { |
| | | label: "未知", |
| | | value: 3, |
| | | }, |
| | | { |
| | | label: " ", |
| | | value: -1, |
| | | }, |
| | | ], |
| | | display: false, |
| | | }, |
| | | |
| | | { |
| | | label: "籍贯", |
| | | prop: "nativeplace", |
| | | display: false, |
| | | }, |
| | | { |
| | | label: "联系电话", |
| | | prop: "phone", |
| | | display: false, |
| | | }, |
| | | { |
| | | label: "入职时间", |
| | | prop: "rtime", |
| | | display: false, |
| | | }, |
| | | { |
| | | label: "保安公司名称", |
| | | searchLabelWidth: "110", |
| | | // prop: "deptName", |
| | | prop: "deptId", |
| | | type: "tree", |
| | | dicUrl: |
| | | "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697", |
| | | props: { |
| | | label: "title", |
| | | value: "id", |
| | | }, |
| | | slot: true, |
| | | searchSpan: 4, |
| | | display: false, |
| | | search: false, |
| | | width: 260, |
| | | }, |
| | | { |
| | | label: "是否持证", |
| | | prop: "hold", |
| | | slot: true, |
| | | display: false, |
| | | dicUrl: "/api/blade-system/dict-biz/dictionary?code=equipage", |
| | | props: { |
| | | label: "dictValue", |
| | | value: "dictKey", |
| | | }, |
| | | type: "select", |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "在职状态", |
| | | prop: "status", |
| | | type: "select", |
| | | dicUrl: "/api/blade-system/dict-biz/dictionary?code=workerState", |
| | | props: { |
| | | label: "dictValue", |
| | | value: "dictKey", |
| | | }, |
| | | dataType: "number", |
| | | display: false, |
| | | searchSpan: 4, |
| | | search: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择在职状态", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "是否报名", |
| | | prop: "isApply", |
| | | type: "select", |
| | | dicData: [ |
| | | { |
| | | label: "是", |
| | | value: 1, |
| | | }, |
| | | { |
| | | label: "已取消", |
| | | value: 2, |
| | | }, |
| | | { |
| | | label: "", |
| | | value: -1, |
| | | }, |
| | | ], |
| | | dataType: "number", |
| | | display: false, |
| | | searchSpan: 4, |
| | | search: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择在职状态", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | ], |
| | | }, |
| | | questionBankSearch: {}, |
| | | questionBankLoading: true, |
| | | questionBankData: [], |
| | | questionBankPage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 16, |
| | | }, |
| | | questionBankQuery: {}, |
| | | questionBankSelectionList: [], |
| | | }; |
| | | }, |
| | | 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; |
| | | } |
| | | |
| | | this.optionBatchApply.column[0].dicUrl = |
| | | "/api/blade-user/security-apply-tree?deptId=" + |
| | | this.userInfo.dept_id; |
| | | }, |
| | | mounted() { |
| | | |
| | | }, |
| | | 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 = {}) { |
| | | this.questionBankLoading = false; |
| | | params["deptId"] = this.userInfo.dept_id; |
| | | getListApply( |
| | | 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) { |
| | | // debugger; |
| | | addApply({ |
| | | userId: row.id, |
| | | }).then( |
| | | (res) => { |
| | | this.questionBankOnLoad(this.questionBankPage); |
| | | if (res.data.data == 201) { |
| | | this.$message({ |
| | | type: "warning", |
| | | message: "已报名,不能重复报名", |
| | | }); |
| | | } else if (res.data.data == 201) { |
| | | this.$message({ |
| | | type: "warning", |
| | | message: "报名失败", |
| | | }); |
| | | } else { |
| | | 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: "操作成功!", |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | //取消报名 |
| | | handleCancel(row) { |
| | | this.$confirm("确定取消报名?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | var apply = { |
| | | applyStatus: 4, |
| | | id: row.applyId, |
| | | }; |
| | | return updateApply(apply); |
| | | }) |
| | | .then(() => { |
| | | this.questionBankOnLoad(this.questionBankPage); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | //批量报名 |
| | | handleBatchApply() { |
| | | this.dialogBatchFormVisible = true; |
| | | }, |
| | | |
| | | //批量报名提交 |
| | | submitBatchApply(){ |
| | | addBatchApply({ |
| | | userIds: this.BatchApply.userId.join(","), |
| | | }).then( |
| | | (res) => { |
| | | this.questionBankOnLoad(this.questionBankPage); |
| | | if (res.data.data == 201) { |
| | | this.$message({ |
| | | type: "warning", |
| | | message: "已报名,不能重复报名", |
| | | }); |
| | | } else if (res.data.data == 201) { |
| | | this.$message({ |
| | | type: "warning", |
| | | message: "报名失败", |
| | | }); |
| | | } else { |
| | | this.$message({ |
| | | type: "success", |
| | | message: "报名成功", |
| | | }); |
| | | this.$refs.formBatchApply.resetFields(); |
| | | this.dialogBatchFormVisible = false; |
| | | } |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | } |
| | | ); |
| | | }, |
| | | |
| | | //关闭窗口清除数据 |
| | | closeDialog(){ |
| | | this.$refs.formBatchApply.resetFields(); |
| | | }, |
| | | |
| | | 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(); |
| | | }); |
| | | }, |
| | | handleAudit(row) { |
| | | this.dialogFormVisible = true; |
| | | this.Audit = row; |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | </style> |
| New file |
| | |
| | | <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: "/securityPrint.html", |
| | | }; |
| | | }, |
| | | created(){ |
| | | var d = this.$route.query; |
| | | this.url += "?data=" + JSON.stringify(d); |
| | | console.log(d,11); |
| | | }, |
| | | 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> |
| | |
| | | { validator: validatePass, required: true, trigger: "blur" }, |
| | | ], |
| | | }, |
| | | // { |
| | | // label: "总成绩", |
| | | // prop: "allGrade", |
| | | // slot: true, |
| | | // hide:true, |
| | | // // 表单新增时是否禁止 |
| | | // addDisabled: false, |
| | | // viewDisplay:false, |
| | | // // 表单新增时是否可见 |
| | | // addDisplay: false, |
| | | // // 表单新增时是否为查看模式 |
| | | // addDetail: false, |
| | | // // 表单编辑时是否禁止 |
| | | // editDisabled: false, |
| | | // // 表单编辑时是否可见 |
| | | // editDisplay: false, |
| | | // // 表单编辑时是否为查看模式 |
| | | // editDetail: false, |
| | | // rules: [{ |
| | | // required: true, |
| | | // message: "请输入考试名称", |
| | | // trigger: "blur" |
| | | // }] |
| | | // }, |
| | | { |
| | | label: "总成绩", |
| | | prop: "allGrade", |
| | | slot: true, |
| | | hide:true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | viewDisplay:false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: false, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: false, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入考试名称", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "是否合格", |
| | | prop: "qualified", |
| | |
| | | * @Date: 2021-07-05 16:31:54 |
| | | * @Last Modified by: Morpheus |
| | | * @Last Modified time: 2021-07-18 21:02:10 |
| | | * menu-name 成绩管理 |
| | | * menu-name 成绩查看 |
| | | */ |
| | | <template> |
| | | <el-row class="morpheus-box-score"> |
| | |
| | | > |
| | | <template slot-scope="{ row }" slot="learnGrade"> |
| | | {{ row.learnGrade == -1 ? "暂未录入" : row.learnGrade }} |
| | | </template> |
| | | |
| | | <template slot-scope="{ row }" slot="menu"> |
| | | <el-button |
| | | type="text" |
| | | size="mini" |
| | | icon="el-icon-collection" |
| | | class="start-kaoshi" |
| | | :disabled="row.qualified==1" |
| | | @click="securityPrint(row)" |
| | | >保安证打印 |
| | | </el-button> |
| | | </template> |
| | | |
| | | <!-- 自定义按钮 --> |
| | |
| | | questionBankOption: { |
| | | // 操作栏多余按钮去除 |
| | | delBtn: false, |
| | | editBtn: true, |
| | | editBtn: false, |
| | | addBtn: false, |
| | | selection: false, |
| | | // 导出按钮 |
| | | excelBtn: true, |
| | | excelBtnText: "成绩导出", |
| | | viewBtn: true, |
| | | viewBtn: false, |
| | | // title: '成绩', |
| | | |
| | | align: "center", |
| | |
| | | //dialogType: 'drawer', |
| | | dialogClickModal: false, |
| | | // 操作栏宽度 |
| | | menu: false, |
| | | menu: true, |
| | | menuWidth: 136, |
| | | labelWidth: 120, |
| | | |
| | | column: [ |
| | | { |
| | | label: "试卷名称", |
| | | label: "考试名称", |
| | | prop: "examName", |
| | | search: true, |
| | | searchSpan: 4, |
| | | slot: true, |
| | | viewDisplay:false, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | editDisplay: false, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [ |
| | |
| | | { validator: validatePass, required: true, trigger: "blur" }, |
| | | ], |
| | | }, |
| | | // { |
| | | // label: "总成绩", |
| | | // prop: "allGrade", |
| | | // slot: true, |
| | | // // 表单新增时是否禁止 |
| | | // addDisabled: false, |
| | | // // 表单新增时是否可见 |
| | | // addDisplay: true, |
| | | // // 表单新增时是否为查看模式 |
| | | // addDetail: false, |
| | | // // 表单编辑时是否禁止 |
| | | // editDisabled: true, |
| | | // // 表单编辑时是否可见 |
| | | // editDisplay: true, |
| | | // // 表单编辑时是否为查看模式 |
| | | // editDetail: false, |
| | | // rules: [{ |
| | | // required: true, |
| | | // message: "请输入考试名称", |
| | | // trigger: "blur" |
| | | // }] |
| | | // }, |
| | | { |
| | | label: "总成绩", |
| | | prop: "allGrade", |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入考试名称", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "是否合格", |
| | | prop: "qualified", |
| | |
| | | created() {}, |
| | | mounted() {}, |
| | | methods: { |
| | | //保安证证查看 |
| | | securityPrint(row) { |
| | | var obj = row; |
| | | obj["name"] = "保安证"; |
| | | this.$router.push({ |
| | | path: `/exam/papers`, |
| | | query: obj, |
| | | }); |
| | | }, |
| | | questionBankOnLoad(page, params = {}) { |
| | | this.questionBankLoading = false; |
| | | getList( |
| New file |
| | |
| | | <template> |
| | | <div> |
| | | <div class="security-apply"> |
| | | <div class = "security-title"> |
| | | <span>2021 保安证考试报名</span> |
| | | </div> |
| | | <div> |
| | | <button class="security-btn" @click="applySubmit">报 名</button> |
| | | <button class="security-btn" @click="cancelApply">取 消 报 名</button> |
| | | </div> |
| | | <!-- <div class = "apply-status"> |
| | | <span>{{status}}</span> |
| | | </div> --> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { mapState } from 'vuex'; |
| | | import { |
| | | addApply, |
| | | cancelApply |
| | | } from "@/api/examapi/applyexam"; |
| | | |
| | | export default { |
| | | data() { |
| | | return { |
| | | status:"未报名" |
| | | }; |
| | | }, |
| | | computed: { |
| | | ...mapState({ |
| | | userInfo: state => state.user.userInfo |
| | | }), |
| | | }, |
| | | mounted() {}, |
| | | methods:{ |
| | | applySubmit(){ |
| | | addApply({ |
| | | userId: this.userInfo.user_id |
| | | }).then( |
| | | (res) => { |
| | | if (res.data.data == 201) { |
| | | this.$message({ |
| | | type: "warning", |
| | | message: "已报名,不能重复报名", |
| | | }); |
| | | } else if (res.data.data == 202) { |
| | | this.$message({ |
| | | type: "warning", |
| | | message: "报名失败", |
| | | }); |
| | | } else { |
| | | this.$message({ |
| | | type: "success", |
| | | message: "报名成功", |
| | | }); |
| | | } |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | } |
| | | ); |
| | | }, |
| | | cancelApply(){ |
| | | cancelApply({ |
| | | userId: this.userInfo.user_id |
| | | }).then( |
| | | (res) => { |
| | | if (res.data.data == 201) { |
| | | this.$message({ |
| | | type: "warning", |
| | | message: "尚未报名", |
| | | }); |
| | | } else { |
| | | this.$message({ |
| | | type: "success", |
| | | message: "取消报名成功", |
| | | }); |
| | | } |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | } |
| | | ); |
| | | } |
| | | } |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | | .security-apply{ |
| | | width: 100%; |
| | | height: 100%; |
| | | margin-top: 250px; |
| | | |
| | | .security-title{ |
| | | width: 30%; |
| | | font-size: 28px; |
| | | margin-left: 35%; |
| | | text-align: center; |
| | | color: cadetblue; |
| | | } |
| | | |
| | | .security-btn{ |
| | | width: 10%; |
| | | margin-left: 45%; |
| | | text-align: center; |
| | | margin-top: 20px; |
| | | } |
| | | |
| | | .apply-status{ |
| | | width: 10%; |
| | | margin-left: 45%; |
| | | text-align: center; |
| | | margin-top: 20px; |
| | | } |
| | | } |
| | | |
| | | |
| | | </style> |
| New file |
| | |
| | | <template> |
| | | <basic-container> |
| | | <avue-crud :option="option" |
| | | :table-loading="loading" |
| | | :data="data" |
| | | :page.sync="page" |
| | | :permission="permissionList" |
| | | :before-open="beforeOpen" |
| | | v-model="form" |
| | | ref="crud" |
| | | @row-update="rowUpdate" |
| | | @row-save="rowSave" |
| | | @row-del="rowDel" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @selection-change="selectionChange" |
| | | @current-change="currentChange" |
| | | @size-change="sizeChange" |
| | | @refresh-change="refreshChange" |
| | | @on-load="onLoad"> |
| | | <template slot="menuLeft"> |
| | | <el-button type="danger" |
| | | size="small" |
| | | icon="el-icon-delete" |
| | | plain |
| | | v-if="permission.talk_delete" |
| | | @click="handleDelete">删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </basic-container> |
| | | </template> |
| | | |
| | | <script> |
| | | import {getList, getDetail, add, update, remove} from "@/api/talk/talk"; |
| | | import {mapGetters} from "vuex"; |
| | | |
| | | export default { |
| | | data() { |
| | | return { |
| | | form: {}, |
| | | query: {}, |
| | | loading: true, |
| | | page: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 0 |
| | | }, |
| | | selectionList: [], |
| | | option: { |
| | | height:'auto', |
| | | calcHeight: 30, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 6, |
| | | border: true, |
| | | index: true, |
| | | viewBtn: true, |
| | | selection: true, |
| | | dialogClickModal: false, |
| | | column: [ |
| | | { |
| | | label: "标题", |
| | | prop: "title", |
| | | search: true, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入标题", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "谈话对象", |
| | | search: true, |
| | | prop: "realName", |
| | | type: "tree", |
| | | props: { |
| | | label: "realName", |
| | | value: "id", |
| | | }, |
| | | dicUrl: `/api/blade-user/selectInr?deptid=`+this.$store.getters.userInfo.dept_id, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入谈话对象", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "谈话内容", |
| | | prop: "talkcontent", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入谈话内容", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "谈话时间", |
| | | prop: "talktime", |
| | | type: "date", |
| | | format: "yyyy-MM-dd hh:mm:ss", |
| | | valueFormat: "yyyy-MM-dd hh:mm:ss", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入谈话时间", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "结论", |
| | | prop: "conclusion", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入结论", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "评价", |
| | | prop: "evaluate", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入评价", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | ] |
| | | }, |
| | | data: [] |
| | | }; |
| | | }, |
| | | computed: { |
| | | ...mapGetters(["permission", "userInfo"]), |
| | | permissionList() { |
| | | return { |
| | | addBtn: this.vaildData(this.permission.talk_add, false), |
| | | viewBtn: this.vaildData(this.permission.talk_view, false), |
| | | delBtn: this.vaildData(this.permission.talk_delete, false), |
| | | editBtn: this.vaildData(this.permission.talk_edit, false) |
| | | }; |
| | | }, |
| | | ids() { |
| | | let ids = []; |
| | | this.selectionList.forEach(ele => { |
| | | ids.push(ele.id); |
| | | }); |
| | | return ids.join(","); |
| | | } |
| | | }, |
| | | methods: { |
| | | rowSave(row, done, loading) { |
| | | add(row).then(() => { |
| | | row.deptid=this.$store.getters.userInfo.dept_id |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | | }); |
| | | done(); |
| | | }, error => { |
| | | loading(); |
| | | window.console.log(error); |
| | | }); |
| | | }, |
| | | rowUpdate(row, index, done, loading) { |
| | | update(row).then(() => { |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | | }); |
| | | done(); |
| | | }, error => { |
| | | loading(); |
| | | console.log(error); |
| | | }); |
| | | }, |
| | | rowDel(row) { |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning" |
| | | }) |
| | | .then(() => { |
| | | return remove(row.id); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | | }); |
| | | }); |
| | | }, |
| | | handleDelete() { |
| | | if (this.selectionList.length === 0) { |
| | | this.$message.warning("请选择至少一条数据"); |
| | | return; |
| | | } |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning" |
| | | }) |
| | | .then(() => { |
| | | return remove(this.ids); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | | }); |
| | | this.$refs.crud.toggleSelection(); |
| | | }); |
| | | }, |
| | | beforeOpen(done, type) { |
| | | if (["edit", "view"].includes(type)) { |
| | | getDetail(this.form.id).then(res => { |
| | | this.form = res.data.data; |
| | | }); |
| | | } |
| | | done(); |
| | | }, |
| | | searchReset() { |
| | | this.query = {}; |
| | | this.onLoad(this.page); |
| | | }, |
| | | searchChange(params, done) { |
| | | this.query = params; |
| | | this.page.currentPage = 1; |
| | | this.onLoad(this.page, params); |
| | | done(); |
| | | }, |
| | | selectionChange(list) { |
| | | this.selectionList = list; |
| | | }, |
| | | selectionClear() { |
| | | this.selectionList = []; |
| | | this.$refs.crud.toggleSelection(); |
| | | }, |
| | | currentChange(currentPage){ |
| | | this.page.currentPage = currentPage; |
| | | }, |
| | | sizeChange(pageSize){ |
| | | this.page.pageSize = pageSize; |
| | | }, |
| | | refreshChange() { |
| | | this.onLoad(this.page, this.query); |
| | | }, |
| | | onLoad(page, params = {}) { |
| | | this.loading = true; |
| | | getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => { |
| | | const data = res.data.data; |
| | | this.page.total = data.total; |
| | | this.data = data.records; |
| | | this.loading = false; |
| | | this.selectionClear(); |
| | | }); |
| | | } |
| | | } |
| | | }; |
| | | </script> |
| | | |
| | | <style> |
| | | </style> |