29 files modified
4 files added
| | |
| | | component: Layout, |
| | | redirect: '/wel/index', |
| | | children: [{ |
| | | path: 'index', |
| | | name: '首页', |
| | | meta: { |
| | | i18n: 'dashboard' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/wel/index') |
| | | 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: '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: '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: '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: '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: '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: '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: '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: '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: '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: '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: '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: '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: '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: '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: '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: '/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: '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', |
| | | 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: '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: '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: '/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: '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: '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: '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: '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: '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: '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: '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: '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: '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: '/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: '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: '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: '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: '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: '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: '/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: '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: '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: '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: '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: '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: 'index', |
| | | name: '开始考试', |
| | | meta: { |
| | | i18n: 'index', |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/startexam/index') |
| | | }] |
| | | }, |
| | | { |
| | | }, |
| | | { |
| | | path: '/titleDetails', |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/exam/topicDetails') |
| | | }, |
| | | { |
| | | import( /* webpackChunkName: "views" */ '@/views/exam/topicDetails') |
| | | }, |
| | | { |
| | | path: '', |
| | | component: Layout, |
| | | children: [{ |
| | | path: '/exam/subjects/:id', |
| | | component: () => |
| | | import('@/views/exam/examSubjects'), |
| | | name: '题目管理', |
| | | title: '题目管理', |
| | | noCache: true |
| | | 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: '/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: '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: 'index', |
| | | name: '派遣记录', |
| | | meta: { |
| | | i18n: 'index' |
| | | }, |
| | | component: () => |
| | | import( /* webpackChunkName: "views" */ '@/views/dispatch/dispatchChildoperableSee') |
| | | }] |
| | | }, |
| | | // { |
| | | // path: '/people', |
| | | // component: Layout, |
| | | // redirect: '/people/expression', |
| | | // children: [{ |
| | | // path: 'expression', |
| | | // name: '表现记录查看', |
| | | // meta: { |
| | | // i18n: 'expression' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/people/expression') |
| | | // }] |
| | | // }, { |
| | | // path: '/people', |
| | | // component: Layout, |
| | | // redirect: '/people/job', |
| | | // children: [{ |
| | | // path: 'job', |
| | | // name: '从业记录查看', |
| | | // meta: { |
| | | // i18n: 'job' |
| | | // }, |
| | | // component: () => |
| | | // import( /* webpackChunkName: "views" */ '@/views/people/job') |
| | | // }] |
| | | // }, |
| | | }, |
| | | { |
| | | 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') |
| | | }] |
| | | }, |
| | | ] |
| | |
| | | // position: relative; |
| | | // top: 5px; |
| | | // } |
| | | // 搜索栏按钮左移 |
| | | // .avue-form__group:nth-last-child() .el-form-item__content { |
| | | // margin-left: 30px !important; |
| | | // width: 165px !important; |
| | | // } |
| | | .avue-form__menu--center .el-button { |
| | | float: left; |
| | | } |
| | | .avue-form__menu--center .el-button:nth-child(1) { |
| | | margin-left: 30px; |
| | | } |
| | | |
| | | //左侧导航栏 |
| | | .avue-logo { |
| | |
| | | * 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-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="danger" |
| | | size="mini" |
| | | icon="el-icon-delete" |
| | |
| | | </el-button> |
| | | </template> --> |
| | | |
| | | <!-- <template slot="menuLeft"> |
| | | <!-- <template slot="menuLeft"> |
| | | <el-button type="danger" |
| | | size="small" |
| | | icon="el-icon-delete" |
| | |
| | | </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" |
| | | @click="handleCancel(row)" |
| | | >取消报名 |
| | | </el-button> |
| | | <el-button |
| | | style="display:none" |
| | | :type="type" |
| | | size="small" |
| | | icon="el-icon-folder-checked" |
| | | :disabled="row.applyStatus==4" |
| | | @click="handleAudit(row)" |
| | | >审核 |
| | | </el-button> |
| | | <el-button |
| | | :type="type" |
| | | size="small" |
| | | icon="el-icon-receiving" |
| | | :disabled="row.applyStatus==4" |
| | | @click="handlePrint(row)" |
| | | >准考证打印 |
| | | </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" |
| | | @click="handleCancel(row)" |
| | | >取消报名 |
| | | </el-button> |
| | | <el-button |
| | | style="display: none" |
| | | :type="type" |
| | | size="small" |
| | | icon="el-icon-folder-checked" |
| | | :disabled="row.applyStatus == 4" |
| | | @click="handleAudit(row)" |
| | | >审核 |
| | | </el-button> |
| | | <el-button |
| | | :type="type" |
| | | size="small" |
| | | icon="el-icon-receiving" |
| | | :disabled="row.applyStatus == 4" |
| | | @click="handlePrint(row)" |
| | | >准考证打印 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | |
| | | </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> |
| | | |
| | | </div> |
| | | |
| | | </el-card> |
| | | </el-col> |
| | | </el-row> |
| | | <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> |
| | | </div> |
| | | </el-card> |
| | | </el-col> |
| | | </el-row> |
| | | </template> |
| | | |
| | | <script> |
| | | |
| | | import { |
| | | getApplyList, |
| | | addApply, |
| | | updateApply, |
| | | remove |
| | | getApplyList, |
| | | addApply, |
| | | updateApply, |
| | | remove, |
| | | } from "@/api/examapi/applyexam"; |
| | | import { mapState } from 'vuex' |
| | | |
| | | import { mapState } from "vuex"; |
| | | |
| | | var DIC = { |
| | | applyStatus: [{ |
| | | label: '已报名', |
| | | value: 2 |
| | | }, { |
| | | label: '已取消', |
| | | value: 4 |
| | | }] |
| | | } |
| | | |
| | | |
| | | applyStatus: [ |
| | | { |
| | | label: "已报名", |
| | | value: 2, |
| | | }, |
| | | { |
| | | label: "已取消", |
| | | value: 4, |
| | | }, |
| | | ], |
| | | }; |
| | | |
| | | export default { |
| | | data () { |
| | | |
| | | return { |
| | | dialogFormVisible:false, |
| | | Audit:{}, |
| | | optionAudit:{ |
| | | height: "auto", |
| | | calcHeight: 30, |
| | | dialogWidth: 1000, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 6, |
| | | border: false, |
| | | index: true, |
| | | stripe: true, |
| | | viewBtn: true, |
| | | addBtn: true, |
| | | 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" |
| | | } |
| | | ], |
| | | }, |
| | | questionBankOption: { |
| | | // 操作栏多余按钮去除 |
| | | delBtn: false, |
| | | editBtn: false, |
| | | addBtn: true, |
| | | 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: "userId", |
| | | type: 'tree', |
| | | dicUrl: '', |
| | | search: true, |
| | | hide:true, |
| | | slot: true, |
| | | searchSpan:5, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | props: { |
| | | label: "title", |
| | | value: "id", |
| | | }, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择保安姓名", |
| | | trigger: "blur" |
| | | }], |
| | | width:80 |
| | | }, |
| | | { |
| | | 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?examType=1', |
| | | // 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, |
| | | searchSpan:5, |
| | | // 表单新增时是否禁止 |
| | | 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: 150 |
| | | }, |
| | | { |
| | | 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: false, |
| | | // 表单新增时是否为查看模式 |
| | | 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: 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:5, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: false, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | dicData:DIC.applyStatus, |
| | | search:true, |
| | | type:"select" |
| | | }, |
| | | // { |
| | | // label: "审核状态", |
| | | // prop: "examinationType", |
| | | // slot: true, |
| | | // searchSpan:5, |
| | | // // 表单新增时是否禁止 |
| | | // addDisabled: false, |
| | | // // 表单新增时是否可见 |
| | | // addDisplay: false, |
| | | // // 表单新增时是否为查看模式 |
| | | // addDetail: false, |
| | | // // 表单编辑时是否禁止 |
| | | // editDisabled: false, |
| | | // // 表单编辑时是否可见 |
| | | // editDisplay: true, |
| | | // // 表单编辑时是否为查看模式 |
| | | // editDetail: false, |
| | | // dicData:[ |
| | | // { |
| | | // label: '待审核', |
| | | // value: "1" |
| | | // }, |
| | | // { |
| | | // label: '审核通过', |
| | | // value: "2" |
| | | // }, |
| | | // { |
| | | // label: '审核不通过', |
| | | // value: "3" |
| | | // } |
| | | // ], |
| | | // search:true, |
| | | // type:"select" |
| | | // }, |
| | | ] |
| | | }, |
| | | questionBankSearch: {}, |
| | | questionBankLoading: true, |
| | | questionBankData: [ |
| | | |
| | | data() { |
| | | return { |
| | | dialogFormVisible: false, |
| | | Audit: {}, |
| | | optionAudit: { |
| | | height: "auto", |
| | | calcHeight: 30, |
| | | dialogWidth: 1000, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 6, |
| | | border: false, |
| | | index: true, |
| | | stripe: true, |
| | | viewBtn: true, |
| | | addBtn: true, |
| | | 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", |
| | | }, |
| | | ], |
| | | questionBankPage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 16 |
| | | dicData: [ |
| | | { |
| | | label: "审核通过", |
| | | value: 2, |
| | | }, |
| | | { |
| | | label: "不通过", |
| | | value: 3, |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "审核明细", |
| | | span: 24, |
| | | type: "textarea", |
| | | prop: "auditDetail", |
| | | }, |
| | | ], |
| | | }, |
| | | questionBankOption: { |
| | | // 操作栏多余按钮去除 |
| | | delBtn: false, |
| | | editBtn: false, |
| | | addBtn: true, |
| | | 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: "userId", |
| | | type: "tree", |
| | | dicUrl: "", |
| | | search: true, |
| | | hide: true, |
| | | slot: true, |
| | | searchSpan: 4, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | props: { |
| | | label: "title", |
| | | value: "id", |
| | | }, |
| | | questionBankQuery: {}, |
| | | questionBankSelectionList: [], |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择保安姓名", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | width: 80, |
| | | }, |
| | | { |
| | | 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?examType=1", |
| | | // 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, |
| | | searchSpan: 4, |
| | | // 表单新增时是否禁止 |
| | | 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: 150, |
| | | }, |
| | | { |
| | | 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: false, |
| | | // 表单新增时是否为查看模式 |
| | | 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: 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: "examinationType", |
| | | // slot: true, |
| | | // searchSpan:5, |
| | | // // 表单新增时是否禁止 |
| | | // addDisabled: false, |
| | | // // 表单新增时是否可见 |
| | | // addDisplay: false, |
| | | // // 表单新增时是否为查看模式 |
| | | // addDetail: false, |
| | | // // 表单编辑时是否禁止 |
| | | // editDisabled: false, |
| | | // // 表单编辑时是否可见 |
| | | // editDisplay: true, |
| | | // // 表单编辑时是否为查看模式 |
| | | // editDetail: false, |
| | | // dicData:[ |
| | | // { |
| | | // label: '待审核', |
| | | // value: "1" |
| | | // }, |
| | | // { |
| | | // label: '审核通过', |
| | | // value: "2" |
| | | // }, |
| | | // { |
| | | // label: '审核不通过', |
| | | // value: "3" |
| | | // } |
| | | // ], |
| | | // search:true, |
| | | // type:"select" |
| | | // }, |
| | | ], |
| | | }, |
| | | questionBankSearch: {}, |
| | | questionBankLoading: true, |
| | | questionBankData: [], |
| | | questionBankPage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 16, |
| | | }, |
| | | questionBankQuery: {}, |
| | | questionBankSelectionList: [], |
| | | }; |
| | | }, |
| | | |
| | | watch: { |
| | | "form.examname": { |
| | | // form是表单或者表格绑定的数据集,v-model='form' |
| | | handler(val) { |
| | | if (val) { |
| | | //地址截取,从县/区开始截取,并且取从县区第一个出现的位置开始 |
| | | var address = val.formattedAddress.toString(); |
| | | if (address.search("县") != -1) { |
| | | this.form.address = address.substring( |
| | | address.indexOf("县") + 1, |
| | | address.length |
| | | ); |
| | | } |
| | | if (address.search("区") != -1) { |
| | | this.form.address = address.substring( |
| | | address.indexOf("区") + 1, |
| | | address.length |
| | | ); |
| | | } |
| | | } |
| | | }, |
| | | immediate: true, |
| | | }, |
| | | }, |
| | | created() { |
| | | console.log(this.userInfo); |
| | | |
| | | watch: { |
| | | "form.examname": { |
| | | // form是表单或者表格绑定的数据集,v-model='form' |
| | | handler (val) { |
| | | if (val) { |
| | | //地址截取,从县/区开始截取,并且取从县区第一个出现的位置开始 |
| | | var address = val.formattedAddress.toString(); |
| | | if (address.search("县") != -1) { |
| | | this.form.address = address.substring( |
| | | address.indexOf("县") + 1, |
| | | address.length |
| | | ); |
| | | } |
| | | if (address.search("区") != -1) { |
| | | this.form.address = address.substring( |
| | | address.indexOf("区") + 1, |
| | | address.length |
| | | ); |
| | | } |
| | | } |
| | | }, |
| | | immediate: true, |
| | | }, |
| | | }, |
| | | created () { |
| | | |
| | | console.log(this.userInfo) |
| | | |
| | | if (this.userInfo.role_name.indexOf('ksxtadmin') != -1) { |
| | | |
| | | this.questionBankOption.column[0].dicUrl = "/api/blade-system/dept/lazy-tree-user?parentId=" |
| | | } else { |
| | | this.questionBankOption.column[0].dicUrl = "/api/blade-system/dept/lazy-tree-user?parentId=" + this.userInfo.dept_id |
| | | |
| | | } |
| | | |
| | | |
| | | }, |
| | | mounted () { |
| | | |
| | | |
| | | }, |
| | | 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; |
| | | 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) { |
| | | // debugger; |
| | | addApply({ userId: row.userId, examId: row.examName, applyTime: row.applyTime }).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(() => { |
| | | row.applyStatus = 4; |
| | | return updateApply(row); |
| | | }) |
| | | .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(); |
| | | }); |
| | | }, |
| | | handleAudit(row){ |
| | | this.dialogFormVisible = true; |
| | | this.Audit = row; |
| | | }, |
| | | 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() {}, |
| | | 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; |
| | | 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) { |
| | | // debugger; |
| | | addApply({ |
| | | userId: row.userId, |
| | | examId: row.examName, |
| | | applyTime: row.applyTime, |
| | | }).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(() => { |
| | | row.applyStatus = 4; |
| | | return updateApply(row); |
| | | }) |
| | | .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(); |
| | | }); |
| | | }, |
| | | handleAudit(row) { |
| | | this.dialogFormVisible = true; |
| | | this.Audit = row; |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | |
| | | <el-tag>{{ row.categoryName }}</el-tag> |
| | | </template> |
| | | <template slot-scope="{ type, size, row }" slot="menu"> |
| | | <el-button |
| | | :size="size" |
| | | :type="type" |
| | | @click="handleUploadPage(row)" |
| | | <el-button :size="size" :type="type" @click="handleUploadPage(row)" |
| | | >附件上传 |
| | | </el-button> |
| | | <!-- <el-button |
| | |
| | | label: "通知标题", |
| | | prop: "title", |
| | | span: 24, |
| | | searchSpan: 4, |
| | | row: true, |
| | | search: true, |
| | | rules: [ |
| | |
| | | defaultValue: "1", |
| | | prop: "category", |
| | | search: true, |
| | | searchSpan:5, |
| | | searchSpan: 4, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | |
| | | : (that.deptCategory = false); |
| | | |
| | | // if (that.deptCategory) { |
| | | that.permissionAdd = this.permission.notice_add; |
| | | that.permissionView = this.permission.notice_view; |
| | | that.permissionDelete = this.permission.notice_delete; |
| | | that.permissionEdit = this.permission.notice_edit; |
| | | that.permissionAdd = this.permission.notice_add; |
| | | that.permissionView = this.permission.notice_view; |
| | | that.permissionDelete = this.permission.notice_delete; |
| | | that.permissionEdit = this.permission.notice_edit; |
| | | // } |
| | | }); |
| | | }, |
| | |
| | | : (that.deptCategory = false); |
| | | |
| | | // if (that.deptCategory) { |
| | | that.permissionAdd = this.permission.notice_add; |
| | | that.permissionView = this.permission.notice_view; |
| | | that.permissionDelete = this.permission.notice_delete; |
| | | that.permissionEdit = this.permission.notice_edit; |
| | | that.permissionAdd = this.permission.notice_add; |
| | | that.permissionView = this.permission.notice_view; |
| | | that.permissionDelete = this.permission.notice_delete; |
| | | that.permissionEdit = this.permission.notice_edit; |
| | | // } |
| | | |
| | | const { releaseTimeRange } = this.query; |
| | | // if (that.deptCategory) { |
| | | params["deptId"] = this.deptId; |
| | | params["jurisdiction"] = this.jurisdiction; |
| | | params["deptId"] = this.deptId; |
| | | params["jurisdiction"] = this.jurisdiction; |
| | | // } |
| | | let values = { |
| | | ...params, |
| | |
| | | prop: "name", |
| | | search: true, |
| | | searchLabelWidth: 110, |
| | | searchSpan: 4, |
| | | // span: 12, |
| | | labelWidth: 110, |
| | | }, |
| | |
| | | // addDisplay: true, |
| | | // editDisplay: true, |
| | | // viewDisplay: true, |
| | | // searchSpan: 5, |
| | | // searchSpan: 4, |
| | | // dicUrl: "/api/blade-system/dict-biz/dictionary?code=experienceType", |
| | | // props: { |
| | | // label: "dictValue", |
| | |
| | | <template> |
| | | <div class="dispatch"> |
| | | <!-- <avue-tabs :option="optionTABS" @change="handleChangeTABS"></avue-tabs> |
| | | <basic-container> |
| | | <div class="dispatch"> |
| | | <!-- <avue-tabs :option="optionTABS" @change="handleChangeTABS"></avue-tabs> |
| | | <span v-if="typeTABS.prop === 'tab1'"> --> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | @row-click="rowClick" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | <!-- </span> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | @row-click="rowClick" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | <!-- </span> |
| | | <span v-else-if="typeTABS.prop === 'tab2'"> |
| | | <avue-crud |
| | | :option="option1" |
| | |
| | | </template> |
| | | </avue-crud> |
| | | </span> --> |
| | | <!-- <span v-else-if="typeTABS.prop === 'tab3'">选项卡内容3</span> --> |
| | | </div> |
| | | <!-- <span v-else-if="typeTABS.prop === 'tab3'">选项卡内容3</span> --> |
| | | </div> |
| | | </basic-container> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | <template> |
| | | <div class="dispatchChildoperable"> |
| | | <!-- <avue-tabs :option="optionTABS" @change="handleChangeTABS"></avue-tabs> --> |
| | | <!-- <span v-if="typeTABS.prop === 'tab1'"> --> |
| | | <!-- <avue-crud |
| | | <basic-container> |
| | | <div class="dispatchChildoperable"> |
| | | <!-- <avue-tabs :option="optionTABS" @change="handleChangeTABS"></avue-tabs> --> |
| | | <!-- <span v-if="typeTABS.prop === 'tab1'"> --> |
| | | <!-- <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> --> |
| | | <!-- <avue-form ref="form" v-model="obj0" :option="option0"> --> |
| | | <!-- <template slot-scope="scope" slot="menuForm"> |
| | | <!-- <avue-form ref="form" v-model="obj0" :option="option0"> --> |
| | | <!-- <template slot-scope="scope" slot="menuForm"> |
| | | <el-button @click="tip">自定义按钮</el-button> |
| | | </template> --> |
| | | <!-- </avue-form> |
| | | <!-- </avue-form> |
| | | </span> |
| | | <span v-else-if="typeTABS.prop === 'tab2'"> --> |
| | | <avue-crud |
| | | :option="option1" |
| | | :data="data1" |
| | | :page.sync="page1" |
| | | ref="crudrec1" |
| | | :table-loading="loading1" |
| | | @row-save="rowSave1" |
| | | @search-change="searchChange1" |
| | | @search-reset="searchReset1" |
| | | @row-update="rowUpdate1" |
| | | @row-del="rowDel1" |
| | | @selection-change="selectionChange1" |
| | | @refresh-change="refreshChange1" |
| | | > |
| | | <!-- <template slot="menuLeft"> |
| | | <avue-crud |
| | | :option="option1" |
| | | :data="data1" |
| | | :page.sync="page1" |
| | | ref="crudrec1" |
| | | :table-loading="loading1" |
| | | @row-save="rowSave1" |
| | | @search-change="searchChange1" |
| | | @search-reset="searchReset1" |
| | | @row-update="rowUpdate1" |
| | | @row-del="rowDel1" |
| | | @selection-change="selectionChange1" |
| | | @refresh-change="refreshChange1" |
| | | > |
| | | <!-- <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | |
| | | >删 除 |
| | | </el-button> |
| | | </template> --> |
| | | </avue-crud> |
| | | <!-- </span> --> |
| | | <!-- <span v-else-if="typeTABS.prop === 'tab3'">选项卡内容3</span> --> |
| | | </div> |
| | | </avue-crud> |
| | | <!-- </span> --> |
| | | <!-- <span v-else-if="typeTABS.prop === 'tab3'">选项卡内容3</span> --> |
| | | </div> |
| | | </basic-container> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | label: "保安公司", |
| | | prop: "deptId", |
| | | labelWidth: 120, |
| | | searchLabelWidth: 120, |
| | | search: true, |
| | | overHidden: true, |
| | | type: "tree", |
| | | searchSpan: 5, |
| | | searchSpan: 4, |
| | | cascaderItem: ["name"], |
| | | // cascaderItem: ["city", "area"], |
| | | props: { |
| | |
| | | labelWidth: 120, |
| | | type: "tree", |
| | | search: true, |
| | | searchSpan: 5, |
| | | searchSpan: 4, |
| | | cell: true, |
| | | props: { |
| | | label: "realName", |
| | |
| | | format: "yyyy-MM-dd hh:mm:ss", |
| | | valueFormat: "yyyy-MM-dd hh:mm:ss", |
| | | labelWidth: 120, |
| | | searchSpan: 4, |
| | | searchSpan: 5, |
| | | // search: true, |
| | | overHidden: true, |
| | | rules: [ |
| | |
| | | }, |
| | | ], |
| | | // search: true, |
| | | // searchSpan: 5, |
| | | // searchSpan: 4, |
| | | // overHidden: true |
| | | }, |
| | | { |
| | |
| | | valueFormat: "yyyy-MM-dd", |
| | | searchValue: [this.getStartTime(), this.getEndTime()], |
| | | searchRange: true, |
| | | searchSpan: 5, |
| | | searchSpan: 4, |
| | | hide: true, |
| | | addDisplay: false, |
| | | editDisplay: false, |
| | |
| | | <template> |
| | | <div>543435</div> |
| | | </template> |
| | | <basic-container> |
| | | <div class="dispatchChildoperable"> |
| | | <!-- <avue-tabs :option="optionTABS" @change="handleChangeTABS"></avue-tabs> --> |
| | | <!-- <span v-if="typeTABS.prop === 'tab1'"> --> |
| | | <!-- <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> --> |
| | | <!-- <avue-form ref="form" v-model="obj0" :option="option0"> --> |
| | | <!-- <template slot-scope="scope" slot="menuForm"> |
| | | <el-button @click="tip">自定义按钮</el-button> |
| | | </template> --> |
| | | <!-- </avue-form> |
| | | </span> |
| | | <span v-else-if="typeTABS.prop === 'tab2'"> --> |
| | | <avue-crud |
| | | :option="option1" |
| | | :data="data1" |
| | | :page.sync="page1" |
| | | ref="crudrec1" |
| | | :table-loading="loading1" |
| | | @row-save="rowSave1" |
| | | @search-change="searchChange1" |
| | | @search-reset="searchReset1" |
| | | @row-update="rowUpdate1" |
| | | @row-del="rowDel1" |
| | | @selection-change="selectionChange1" |
| | | @refresh-change="refreshChange1" |
| | | > |
| | | <!-- <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete1" |
| | | >删 除 |
| | | </el-button> |
| | | </template> --> |
| | | </avue-crud> |
| | | <!-- </span> --> |
| | | <!-- <span v-else-if="typeTABS.prop === 'tab3'">选项卡内容3</span> --> |
| | | </div> |
| | | </basic-container> |
| | | </template> |
| | | |
| | | <script> |
| | | export default {}; |
| | | // import { column, column1 } from "./data"; |
| | | import { |
| | | // getdata, |
| | | // adddata, |
| | | // update, |
| | | // remove, |
| | | getdata1, |
| | | adddata1, |
| | | update1, |
| | | remove1, |
| | | } from "@/api/dispatch/dispatch"; |
| | | import { getDept } from "@/api/system/dept"; |
| | | import { mapGetters } from "vuex"; |
| | | |
| | | export default { |
| | | data() { |
| | | let baseUrl = "https://cli.avuejs.com/api/area"; |
| | | return { |
| | | // typeTABS: {}, //标签页 |
| | | // optionTABS: { |
| | | // column: [ |
| | | // { |
| | | // // icon: "el-icon-info", |
| | | // label: "派遣服务公司详情", |
| | | // prop: "tab1", |
| | | // }, |
| | | // { |
| | | // // icon: "el-icon-info", |
| | | // label: "派遣记录", |
| | | // prop: "tab2", |
| | | // }, |
| | | // // { |
| | | // // icon: "el-icon-info", |
| | | // // label: "选项卡3", |
| | | // // prop: "tab3", |
| | | // // }, |
| | | // ], |
| | | // }, |
| | | |
| | | // id: "", //记录归属id |
| | | // //基本信息 |
| | | // //保安单位信息表单 |
| | | // obj0: { |
| | | // // title: "我是头部标题", |
| | | // }, |
| | | // option0: { |
| | | // emptyBtn: false, |
| | | // submitBtn: false, |
| | | // gutter: 30, |
| | | // column: column, |
| | | // }, |
| | | // loading: true, //派遣服务公司登记 |
| | | // selectionList: [], |
| | | // page: { |
| | | // pageSize: 10, |
| | | // currentPage: 1, |
| | | // total: 0, |
| | | // }, |
| | | // query: {}, |
| | | // data: [], |
| | | // option: { |
| | | // card: true, |
| | | // searchSize: "mini", |
| | | // searchMenuSpan: 6, |
| | | // height: 547, |
| | | // menuWidth: 160, |
| | | // align: "center", |
| | | // selection: true, |
| | | // column: column, |
| | | // }, |
| | | deptCategory: "", |
| | | deptId: "", |
| | | |
| | | loading1: true, //派遣记录 |
| | | selectionList1: [], |
| | | page1: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 0, |
| | | }, |
| | | query1: {}, |
| | | data1: [], |
| | | option1: { |
| | | // card: true, |
| | | tip: false, |
| | | index: true, |
| | | // menu: false, |
| | | searchSize: "mini", |
| | | searchMenuSpan: 8, |
| | | height: 623, |
| | | cellBtn: false, |
| | | // addBtn: false, |
| | | // menuWidth: 160, |
| | | align: "center", |
| | | selection: true, |
| | | column: [ |
| | | // 派遣服务公司登记 |
| | | // { |
| | | // label: "id", |
| | | // prop: "id", |
| | | // // search: true, |
| | | // // searchSpan: 4, |
| | | // // overHidden: true, |
| | | // // hide: true, |
| | | // // editDisplay: false, |
| | | // // addDisplay: false |
| | | // }, |
| | | // { |
| | | // label: "保安公司", |
| | | // prop: "deptId", |
| | | // labelWidth: 120, |
| | | // searchLabelWidth: 120, |
| | | // searchSpan: 4, |
| | | // dicUrl: |
| | | // "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697", |
| | | // props: { |
| | | // label: "title", |
| | | // value: "id", |
| | | // }, |
| | | // search: true, |
| | | // overHidden: true, |
| | | // type: "select", |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: "请输入保安公司", |
| | | // trigger: "blur", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | { |
| | | label: "派遣单位", |
| | | prop: "dispatcherCompany", |
| | | addDisplay: false, |
| | | editDisplay: false, |
| | | }, |
| | | // { |
| | | // label: "派遣单位", |
| | | // prop: "dispatcherUnitId", |
| | | // labelWidth: 120, |
| | | // searchLabelWidth: 120, |
| | | // dicUrl: "/api/dispatcherUnit/page-tree", |
| | | // props: { |
| | | // label: "name", |
| | | // value: "id", |
| | | // }, |
| | | // hide: true, |
| | | // searchSpan: 4, |
| | | // search: true, |
| | | // overHidden: true, |
| | | // type: "tree", |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: "请输入保安公司", |
| | | // trigger: "blur", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | { |
| | | label: "保安公司", |
| | | prop: "deptId", |
| | | labelWidth: 120, |
| | | search: true, |
| | | overHidden: true, |
| | | type: "tree", |
| | | searchSpan: 4, |
| | | cascaderItem: ["name"], |
| | | // cascaderItem: ["city", "area"], |
| | | props: { |
| | | label: "title", |
| | | value: "id", |
| | | }, |
| | | dicUrl: `/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697`, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入保安公司", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | width: 120, |
| | | label: "保安员", |
| | | prop: "name", |
| | | labelWidth: 120, |
| | | type: "tree", |
| | | search: true, |
| | | searchSpan: 4, |
| | | cell: true, |
| | | props: { |
| | | label: "realName", |
| | | value: "id", |
| | | }, |
| | | dicUrl: `/api/blade-user/page-security-unit?deptId={{deptId}}`, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择保安", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | // { |
| | | // width: 120, |
| | | // label: "保安人名称", |
| | | // prop: "area", |
| | | // cell: true, |
| | | // props: { |
| | | // label: "name", |
| | | // value: "code", |
| | | // }, |
| | | // type: "select", |
| | | // dicUrl: `${baseUrl}/getArea/{{key}}`, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: "请选择地区", |
| | | // trigger: "blur", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | // { |
| | | // label: "保安人名称", |
| | | // prop: "name", |
| | | // search: true, |
| | | // searchSpan: 4, |
| | | // labelWidth: 120, |
| | | // searchLabelWidth: 120, |
| | | // // overHidden: true |
| | | // type: "tree", |
| | | // dicUrl: "/api/blade-user/page-security", |
| | | // props: { |
| | | // label: "realName", |
| | | // value: "postId", |
| | | // }, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: "请输入保安人名称", |
| | | // trigger: "click", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | { |
| | | label: "身份证", |
| | | prop: "cardid", |
| | | labelWidth: 120, |
| | | overHidden: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入身份证", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | // search: true, |
| | | // searchSpan: 4, |
| | | // overHidden: true |
| | | }, |
| | | // { |
| | | // label: "派遣人", |
| | | // prop: "dispatcher", |
| | | // // search: true, |
| | | // // searchSpan: 4, |
| | | // // overHidden: true |
| | | // }, |
| | | |
| | | { |
| | | label: "派遣时间", |
| | | prop: "dispatchertime", |
| | | type: "date", |
| | | format: "yyyy-MM-dd hh:mm:ss", |
| | | valueFormat: "yyyy-MM-dd hh:mm:ss", |
| | | labelWidth: 120, |
| | | searchSpan: 4, |
| | | // search: true, |
| | | overHidden: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入派遣时间", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | // overHidden: true |
| | | }, |
| | | { |
| | | label: "结束时间", |
| | | prop: "endTime", |
| | | type: "date", |
| | | format: "yyyy-MM-dd hh:mm:ss", |
| | | valueFormat: "yyyy-MM-dd hh:mm:ss", |
| | | labelWidth: 120, |
| | | overHidden: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入结束时间", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | // search: true, |
| | | // searchSpan: 4, |
| | | // overHidden: true |
| | | }, |
| | | { |
| | | label: "派遣时间", |
| | | prop: "releaseTimeRange", |
| | | type: "datetime", |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | searchValue: [this.getStartTime(), this.getEndTime()], |
| | | searchRange: true, |
| | | searchSpan: 5, |
| | | hide: true, |
| | | addDisplay: false, |
| | | editDisplay: false, |
| | | viewDisplay: false, |
| | | search: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入时间", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "派遣地址", |
| | | prop: "dispatcheraddress", |
| | | labelWidth: 120, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入派遣地址", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | // search: true, |
| | | // searchSpan: 4, |
| | | // overHidden: true |
| | | }, |
| | | // { |
| | | // label: "派遣单位", |
| | | // // prop: "dispatcherCompany", |
| | | // prop: "tenantName", |
| | | // type: "tree", |
| | | // dicUrl: "/api/blade-system/dept/lazy-tree?parentId=0", |
| | | // props: { |
| | | // label: "title", |
| | | // value: "id" |
| | | // }, |
| | | // // hide: !website.tenantMode, |
| | | // // addDisplay: website.tenantMode, |
| | | // // editDisplay: website.tenantMode, |
| | | // // viewDisplay: website.tenantMode, |
| | | // rules: [{ |
| | | // required: true, |
| | | // message: "请输入派遣单位", |
| | | // trigger: "click" |
| | | // }], |
| | | // search: true, |
| | | // searchSpan: 4, |
| | | // overHidden: true |
| | | // }, |
| | | ], |
| | | }, |
| | | }; |
| | | }, |
| | | computed: { |
| | | // ids() { |
| | | // let ids = []; |
| | | // this.selectionList.forEach((ele) => { |
| | | // ids.push(ele.id); |
| | | // }); |
| | | // return ids.join(","); |
| | | // }, |
| | | ...mapGetters(["userInfo"]), |
| | | ids1() { |
| | | let ids1 = []; |
| | | this.selectionList1.forEach((ele) => { |
| | | ids1.push(ele.id); |
| | | }); |
| | | return ids1.join(","); |
| | | }, |
| | | }, |
| | | methods: { |
| | | handleChangeTABS(column) { |
| | | this.typeTABS = column; |
| | | if (column.prop == "tab1") { |
| | | this.loading1 = false; |
| | | // this.onLoad(this.page); |
| | | } else if (column.prop == "tab2") { |
| | | // this.loading = false; |
| | | console.log(document.getElementsByClassName("el-card__body")[0]); |
| | | this.onLoad1(this.page1); //第二个表格不会自动执行 |
| | | } |
| | | // this.$message.success(JSON.stringify(column)); |
| | | }, |
| | | //派遣服务公司登记 |
| | | // sizeChange(val) { |
| | | // this.page1.currentPage = 1; |
| | | // this.page1.pageSize = val; |
| | | // // this.getData(); |
| | | // this.onLoad(this.page, this.query); |
| | | // // this.$message.success("行数" + val); |
| | | // }, |
| | | // currentChange(val) { |
| | | // this.page1.currentPage = val; |
| | | // // this.getData(); |
| | | // this.onLoad(this.page, this.query); |
| | | // // this.$message.success("页码" + val); |
| | | // }, |
| | | // rowSave(form, done, loading) { |
| | | // var that = this; |
| | | // var form = this.data[0]; |
| | | // delete form.id; |
| | | // for (var k = 0; k < 13; k++) { |
| | | // adddata(form).then( |
| | | // (res) => { |
| | | // this.onLoad(this.page); |
| | | // this.$message({ |
| | | // type: "success", |
| | | // message: "操作成功!", |
| | | // }); |
| | | // done(); |
| | | // }, |
| | | // (error) => { |
| | | // window.console.log(error); |
| | | // loading(); |
| | | // } |
| | | // ); |
| | | // } |
| | | // }, |
| | | // searchChange(params, done) { |
| | | // this.query = params; |
| | | // this.page.currentPage = 1; |
| | | // this.onLoad(this.page, params); |
| | | // done(); |
| | | // }, |
| | | // searchReset() { |
| | | // this.query = {}; |
| | | // this.onLoad(this.page); |
| | | // }, |
| | | // rowUpdate(row, index, done, loading) { |
| | | // console.log(row); |
| | | // update(row).then( |
| | | // () => { |
| | | // this.onLoad(this.page); |
| | | // this.$message({ |
| | | // type: "success", |
| | | // message: "操作成功!", |
| | | // }); |
| | | // done(); |
| | | // }, |
| | | // (error) => { |
| | | // window.console.log(error); |
| | | // loading(); |
| | | // } |
| | | // ); |
| | | // }, |
| | | // rowDel(row) { |
| | | // this.$confirm("确定将选择数据删除?", { |
| | | // confirmButtonText: "确定", |
| | | // cancelButtonText: "取消", |
| | | // type: "warning", |
| | | // }) |
| | | // .then(() => { |
| | | // return remove(row.id); |
| | | // }) |
| | | // .then(() => { |
| | | // this.onLoad(this.page); |
| | | // this.$message({ |
| | | // type: "success", |
| | | // message: "操作成功!", |
| | | // }); |
| | | // }); |
| | | // }, |
| | | // selectionChange(list) { |
| | | // this.selectionList = list; |
| | | // }, |
| | | // 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.crudrec.toggleSelection(); |
| | | // }); |
| | | // }, |
| | | // refreshChange() { |
| | | // this.onLoad(this.page, this.query); |
| | | // }, |
| | | // onLoad(page, params = {}) { |
| | | // this.loading = true; |
| | | // getdata( |
| | | // page.currentPage, |
| | | // page.pageSize, |
| | | // Object.assign(params, this.query) |
| | | // ).then((res) => { |
| | | // // console.log(res); |
| | | // const data = res.data.data; |
| | | // this.page.total = data.total; |
| | | // this.data = data.records; |
| | | // console.log(this.data); |
| | | // this.loading = false; |
| | | // }); |
| | | // }, |
| | | //派遣服务公司登记 |
| | | |
| | | //派遣记录 |
| | | sizeChange1(val) { |
| | | this.page1.currentPage = 1; |
| | | this.page1.pageSize = val; |
| | | // this.getData(); |
| | | this.onLoad1(this.page1, this.query1); |
| | | // this.$message.success("行数" + val); |
| | | }, |
| | | currentChange1(val) { |
| | | this.page1.currentPage = val; |
| | | // this.getData(); |
| | | this.onLoad1(this.page1, this.query1); |
| | | // this.$message.success("页码" + val); |
| | | }, |
| | | rowSave1(form, done, loading) { |
| | | // var that = this; |
| | | // var form = this.data1[0]; |
| | | // delete form.id; |
| | | // for (var k = 0; k < 13; k++) { |
| | | // form["deptId"] = form.tenantName; |
| | | // form["tenantName"] = form.$tenantName; |
| | | // form["dispatcherUnitId"] = this.id; |
| | | // console.log(form); |
| | | |
| | | adddata1(form).then( |
| | | (res) => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | // } |
| | | }, |
| | | searchChange1(params, done) { |
| | | this.query1 = params; |
| | | this.page1.currentPage = 1; |
| | | this.onLoad1(this.page1, params); |
| | | done(); |
| | | }, |
| | | searchReset1() { |
| | | this.query = {}; |
| | | this.onLoad1(this.page1); |
| | | }, |
| | | rowUpdate1(row, index, done, loading) { |
| | | // row["deptId"] = row.tenantName; |
| | | // row["tenantName"] = row.$tenantName; |
| | | // row["dispatcherUnitId"] = this.id; |
| | | // console.log(row, "row"); |
| | | update1(row).then( |
| | | () => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }, |
| | | rowDel1(row) { |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove1(row.id); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | }); |
| | | }, |
| | | selectionChange1(list) { |
| | | this.selectionList1 = list; |
| | | // console.log(this.selectionList1.length); |
| | | }, |
| | | handleDelete1() { |
| | | console.log(this.selectionList1); |
| | | if (this.selectionList1.length === 0) { |
| | | this.$message.warning("请选择至少一条数据"); |
| | | return; |
| | | } |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove1(this.ids1); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | this.$refs.crudrec1.toggleSelection(); |
| | | }); |
| | | }, |
| | | refreshChange1() { |
| | | // console.log(4534) |
| | | this.onLoad1(this.page1, this.query1); |
| | | }, |
| | | |
| | | getStartTime() { |
| | | if ( |
| | | this.$route.query.startTime != undefined && |
| | | this.$route.query.startTime != null && |
| | | this.$route.query.startTime != "" |
| | | ) { |
| | | return this.$route.query.startTime; |
| | | } |
| | | return ""; |
| | | }, |
| | | getEndTime() { |
| | | if ( |
| | | this.$route.query.endTime != undefined && |
| | | this.$route.query.endTime != null && |
| | | this.$route.query.endTime != "" |
| | | ) { |
| | | return this.$route.query.endTime; |
| | | } |
| | | return ""; |
| | | }, |
| | | // |
| | | onLoad1(page, params = {}) { |
| | | this.loading1 = true; |
| | | // params["cardid"] = this.cardid; |
| | | // params["name"] = this.name; |
| | | // params["dispatcherCompany"] = this.dispatcherCompany; |
| | | // params["dispatcherUnitId"] = this.id; |
| | | // console.log(params, "get"); |
| | | // console.log(page); |
| | | console.log(this.userInfo, "userInfo"); |
| | | var values; |
| | | const { releaseTimeRange } = this.query1; |
| | | if (releaseTimeRange) { |
| | | values = { |
| | | ...params, |
| | | beginTime: releaseTimeRange[0], |
| | | overTime: releaseTimeRange[1], |
| | | ...this.query, |
| | | }; |
| | | values.releaseTimeRange = null; |
| | | } else { |
| | | values = { |
| | | ...params, |
| | | ...this.query, |
| | | }; |
| | | } |
| | | |
| | | // values |
| | | |
| | | // console.log(values); |
| | | getdata1( |
| | | page.currentPage, |
| | | page.pageSize, |
| | | // Object.assign(params, this.query) |
| | | values |
| | | ).then((res) => { |
| | | // console.log(res); |
| | | const data = res.data.data; |
| | | this.page1.total = data.total; |
| | | this.data1 = data.records; |
| | | console.log(this.data1, 1); |
| | | this.loading1 = false; |
| | | }); |
| | | }, |
| | | //派遣记录 |
| | | // saveLock(name, val) { |
| | | // localStorage.setItem(name, val); |
| | | // }, |
| | | // readLock(name) { |
| | | // return localStorage.getItem(name); |
| | | // }, |
| | | }, |
| | | mounted() { |
| | | this.onLoad1(this.page1, this.query1); |
| | | //去掉缓存 |
| | | // this.typeTABS = this.optionTABS.column[0]; |
| | | // var row = {}; |
| | | // if (this.readLock("paqiandata") != null) { |
| | | // row = JSON.parse(this.readLock("paqiandata")); |
| | | // this.obj0.name = row.name; |
| | | // for (var k in row) { |
| | | // this.obj0[k] = row[k]; |
| | | // } |
| | | // console.log(this.obj0, 11111111); |
| | | // this.id = row.id; |
| | | // if (this.readLock("paqiandataS") != null) { |
| | | // var b = JSON.parse(this.readLock("paqiandataS")); |
| | | // var i = 0; |
| | | // for (var k in b) { |
| | | // if (b[k].name == row.name) { |
| | | // i = 1; |
| | | // } |
| | | // } |
| | | // if (i == 1) { |
| | | // // console.log("存在"); |
| | | // } else { |
| | | // // console.log("已删除"); |
| | | // this.obj0 = {}; |
| | | // this.obj0.name = row.name + " 该派遣单位已删除"; |
| | | // window.localStorage.removeItem("paqiandata"); |
| | | // this.id = 1244241; |
| | | // } |
| | | // } |
| | | // } else { |
| | | // // console.log("no"); |
| | | // this.obj0.name = " 未选择派遣单位"; |
| | | // } |
| | | }, |
| | | // onLoad(page, params = {}) { |
| | | // this.deptId = JSON.parse( |
| | | // window.localStorage.getItem("saber-userInfo") |
| | | // ).content.dept_id; |
| | | |
| | | // //获取当前用户部门信息,判断是否为公安,如果是公安,则只能查看公告信息 |
| | | // var that = this; |
| | | // getDept(this.deptId).then((res) => { |
| | | // var deptCategory = res.data.data.deptCategory; |
| | | // deptCategory == 1 |
| | | // ? (that.deptCategory = true) |
| | | // : (that.deptCategory = false); |
| | | |
| | | // if (that.deptCategory) { |
| | | // params["deptId"] = this.deptId; |
| | | // } |
| | | // let values = { |
| | | // ...params, |
| | | // }; |
| | | // }) |
| | | // } |
| | | }; |
| | | </script> |
| | | |
| | | <style> |
| | | <style lang="scss" scoped> |
| | | .dispatch { |
| | | width: 100%; |
| | | height: 100%; |
| | | // border: 1px solid #000; |
| | | box-sizing: border-box; |
| | | } |
| | | .el-collapse-item { |
| | | padding-top: 15px !important; |
| | | } |
| | | </style> |
| | |
| | | * menu-name 成绩管理 |
| | | */ |
| | | <template> |
| | | <el-row class="morpheus-box"> |
| | | <el-col :span="24" class="recruitmentManagement"> |
| | | <el-card> |
| | | <el-row class="morpheus-box"> |
| | | <el-col :span="24" class="recruitmentManagement"> |
| | | <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-update="questionBankRowUpdate" |
| | | > |
| | | <template slot-scope="{ row }" slot="learnGrade"> |
| | | {{ row.learnGrade == -1 ? "暂未录入" : row.learnGrade }} |
| | | </template> |
| | | |
| | | <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-update="questionBankRowUpdate"> |
| | | |
| | | <template slot-scope="{ row }" |
| | | slot="learnGrade"> |
| | | {{ row.learnGrade == -1 ? "暂未录入" : row.learnGrade }} |
| | | </template> |
| | | |
| | | <!-- 自定义按钮 --> |
| | | <template slot="menuLeft"> |
| | | <!-- <el-button type="danger" |
| | | <!-- 自定义按钮 --> |
| | | <template slot="menuLeft"> |
| | | <!-- <el-button type="danger" |
| | | size="mini" |
| | | icon="el-icon-delete" |
| | | plain |
| | | @click="handleDelete">新增 |
| | | </el-button> --> |
| | | <!-- <el-button type="danger" |
| | | <!-- <el-button type="danger" |
| | | size="mini" |
| | | icon="el-icon-delete" |
| | | plain |
| | | @click="handleDelete">删除 |
| | | </el-button> --> |
| | | <el-button |
| | | type="success" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-upload2" |
| | | @click="handleImport" |
| | | >实操成绩导入 |
| | | </el-button> |
| | | </template> |
| | | <el-button |
| | | type="success" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-upload2" |
| | | @click="handleImport" |
| | | >实操成绩导入 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | |
| | | </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 { |
| | | getList, |
| | | update |
| | | } from "@/api/examapi/performance"; |
| | | |
| | | |
| | | import { getList, update } from "@/api/examapi/performance"; |
| | | |
| | | export default { |
| | | data() { |
| | | var validatePass = (rule, value, callback) => { |
| | | console.log(value); |
| | | if (value == undefined || value == "") { |
| | | callback(new Error("请输入实操成绩")); |
| | | return; |
| | | } else if (value !== "" && isNaN(value) == true) { |
| | | callback(new Error("请输入数字")); |
| | | } else if (value <= 0) { |
| | | callback(new Error("分数设置请大于0")); |
| | | } else if (value > 100) { |
| | | callback(new Error("分数设置请小于100")); |
| | | } else { |
| | | callback(); |
| | | } |
| | | }; |
| | | |
| | | return { |
| | | obj: { |
| | | name: "张三", |
| | | }, |
| | | excelBox: false, |
| | | questionBankOption: { |
| | | // 操作栏多余按钮去除 |
| | | delBtn: false, |
| | | editBtn: true, |
| | | addBtn: false, |
| | | selection: false, |
| | | // 导出按钮 |
| | | excelBtn: true, |
| | | excelBtnText: "成绩导出", |
| | | viewBtn: true, |
| | | // title: '成绩', |
| | | align: "center", |
| | | height: "auto", |
| | | calcHeight: 80, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 4, |
| | | index: true, |
| | | indexLabel: "序号", |
| | | //dialogType: 'drawer', |
| | | dialogClickModal: false, |
| | | // 操作栏宽度 |
| | | menu: true, |
| | | menuWidth: 136, |
| | | labelWidth: 120, |
| | | |
| | | data () { |
| | | |
| | | var validatePass = (rule, value, callback) => { |
| | | console.log(value) |
| | | if (value == undefined || value == '') { |
| | | callback(new Error('请输入实操成绩')); |
| | | return; |
| | | } else if (value !== '' && isNaN(value) == true) { |
| | | callback(new Error('请输入数字')); |
| | | } else if (value <= 0) { |
| | | callback(new Error('分数设置请大于0')); |
| | | } else if (value > 100) { |
| | | callback(new Error('分数设置请小于100')); |
| | | } else { |
| | | callback(); |
| | | } |
| | | }; |
| | | |
| | | return { |
| | | obj: { |
| | | name: '张三', |
| | | }, |
| | | excelBox:false, |
| | | questionBankOption: { |
| | | // 操作栏多余按钮去除 |
| | | delBtn: false, |
| | | editBtn: true, |
| | | addBtn: false, |
| | | selection: false, |
| | | // 导出按钮 |
| | | excelBtn: true, |
| | | excelBtnText: '成绩导出', |
| | | viewBtn: true, |
| | | // title: '成绩', |
| | | align: 'center', |
| | | height: 'auto', |
| | | calcHeight: 80, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 4, |
| | | index: true, |
| | | indexLabel: '序号', |
| | | //dialogType: 'drawer', |
| | | dialogClickModal: false, |
| | | // 操作栏宽度 |
| | | menu: true, |
| | | menuWidth: 136, |
| | | labelWidth: 120, |
| | | |
| | | column: [ |
| | | { |
| | | label: "试卷名称", |
| | | prop: "examName", |
| | | search: true, |
| | | searchSpan: 5, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入试卷名称", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "保安姓名", |
| | | prop: "securityName", |
| | | search: true, |
| | | searchSpan: 4, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入保安姓名", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "所属公司", |
| | | prop: "companyName", |
| | | search: true, |
| | | searchSpan: 5, |
| | | // dicUrl: '/api/blade-system/dept/tree', |
| | | // props: { |
| | | // label: "title", |
| | | // value: "id", |
| | | // }, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入所属公司", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "考试时间", |
| | | prop: "examTime", |
| | | type: "datetime", |
| | | // span: 24, |
| | | format: 'yyyy-MM-dd HH:mm:ss', |
| | | valueFormat: 'yyyy-MM-dd HH:mm:ss', |
| | | width: 250, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | }, |
| | | { |
| | | label: "理论成绩", |
| | | prop: "theoryGrade", |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | |
| | | }, |
| | | { |
| | | label: "实操成绩", |
| | | prop: "learnGrade", |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [{ 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: "qualified", |
| | | type: 'select', |
| | | slot: true, |
| | | search: true, |
| | | searchSpan: 4, |
| | | dicData: [{ |
| | | label: '合格', |
| | | value: 0 |
| | | }, { |
| | | label: '不合格', |
| | | value: 1, |
| | | }, { |
| | | label: '暂未录实操成绩', |
| | | value: 2, |
| | | }], |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入考试名称", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | ] |
| | | }, |
| | | questionBankSearch: {}, |
| | | questionBankLoading: true, |
| | | questionBankData: [ |
| | | column: [ |
| | | { |
| | | label: "试卷名称", |
| | | prop: "examName", |
| | | search: true, |
| | | searchSpan: 4, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入试卷名称", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | questionBankPage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 16 |
| | | }, |
| | | { |
| | | label: "保安姓名", |
| | | prop: "securityName", |
| | | search: true, |
| | | searchSpan: 4, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入保安姓名", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "所属公司", |
| | | prop: "companyName", |
| | | search: true, |
| | | searchSpan: 4, |
| | | // dicUrl: '/api/blade-system/dept/tree', |
| | | // props: { |
| | | // label: "title", |
| | | // value: "id", |
| | | // }, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入所属公司", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "考试时间", |
| | | prop: "examTime", |
| | | type: "datetime", |
| | | // span: 24, |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | width: 250, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | }, |
| | | { |
| | | label: "理论成绩", |
| | | prop: "theoryGrade", |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | }, |
| | | { |
| | | label: "实操成绩", |
| | | prop: "learnGrade", |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [ |
| | | { 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: "qualified", |
| | | type: "select", |
| | | slot: true, |
| | | search: true, |
| | | searchSpan: 4, |
| | | dicData: [ |
| | | { |
| | | label: "合格", |
| | | value: 0, |
| | | }, |
| | | { |
| | | label: "不合格", |
| | | value: 1, |
| | | }, |
| | | { |
| | | label: "暂未录实操成绩", |
| | | value: 2, |
| | | }, |
| | | ], |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入考试名称", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | ], |
| | | }, |
| | | 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", |
| | | }, |
| | | 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/examScore/import-examScore", |
| | | }, |
| | | // { |
| | | // label: "数据覆盖", |
| | | // prop: "isCovered", |
| | | // type: "switch", |
| | | // align: "center", |
| | | // width: 80, |
| | | // dicData: [ |
| | | // { |
| | | // label: "否", |
| | | // value: 0, |
| | | // }, |
| | | // { |
| | | // label: "是", |
| | | // value: 1, |
| | | // }, |
| | | // ], |
| | | // value: 0, |
| | | // slot: true, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: "请选择是否覆盖", |
| | | // trigger: "blur", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | { |
| | | label: "模板下载", |
| | | prop: "excelTemplate", |
| | | formslot: true, |
| | | span: 24, |
| | | }, |
| | | ], |
| | | }, |
| | | tip: "请上传 .xls,.xlsx 标准格式文件", |
| | | action: "/api/examScore/import-examScore", |
| | | }, |
| | | // { |
| | | // label: "数据覆盖", |
| | | // prop: "isCovered", |
| | | // type: "switch", |
| | | // align: "center", |
| | | // width: 80, |
| | | // dicData: [ |
| | | // { |
| | | // label: "否", |
| | | // value: 0, |
| | | // }, |
| | | // { |
| | | // label: "是", |
| | | // value: 1, |
| | | // }, |
| | | // ], |
| | | // value: 0, |
| | | // slot: true, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: "请选择是否覆盖", |
| | | // trigger: "blur", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | { |
| | | label: "模板下载", |
| | | prop: "excelTemplate", |
| | | formslot: true, |
| | | span: 24, |
| | | }, |
| | | ], |
| | | }, |
| | | }; |
| | | }, |
| | | created() {}, |
| | | mounted() {}, |
| | | methods: { |
| | | questionBankOnLoad(page, params = {}) { |
| | | this.questionBankLoading = false; |
| | | getList( |
| | | page.currentPage, |
| | | page.pageSize, |
| | | Object.assign(params, this.query) |
| | | ).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; |
| | | }, |
| | | |
| | | questionBankRowUpdate(row, index, done, loading) { |
| | | update({ |
| | | theoryGrade: row.theoryGrade, |
| | | learnGrade: row.learnGrade, |
| | | id: row.id, |
| | | }).then( |
| | | () => { |
| | | this.questionBankOnLoad(this.questionBankPage); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }, |
| | | created () { |
| | | |
| | | |
| | | handleTemplate() { |
| | | window.open(`/api/examScore/export-template`); |
| | | }, |
| | | mounted () { |
| | | |
| | | |
| | | handleImport() { |
| | | this.excelBox = true; |
| | | }, |
| | | methods: { |
| | | questionBankOnLoad (page, params = {}) { |
| | | this.questionBankLoading = false; |
| | | getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).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; |
| | | }, |
| | | |
| | | questionBankRowUpdate (row, index, done, loading) { |
| | | |
| | | update({ theoryGrade: row.theoryGrade, learnGrade: row.learnGrade, id: row.id }).then(() => { |
| | | this.questionBankOnLoad(this.questionBankPage); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | | }); |
| | | done(); |
| | | }, error => { |
| | | window.console.log(error); |
| | | loading(); |
| | | }); |
| | | }, |
| | | handleTemplate() { |
| | | window.open(`/api/examScore/export-template`); |
| | | }, |
| | | handleImport() { |
| | | this.excelBox = true; |
| | | }, |
| | | uploadAfter(res, done, loading, column) { |
| | | window.console.log(column); |
| | | this.excelBox = false; |
| | | this.refreshChange(); |
| | | done(); |
| | | }, |
| | | refreshChange() { |
| | | this.questionBankOnLoad(this.page, this.query); |
| | | }, |
| | | |
| | | } |
| | | } |
| | | 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 |
| | |
| | | /* |
| | | * @Author: Morpheus |
| | | * @Date: 2021-07-05 16:31:54 |
| | | * @Last Modified by: Morpheus |
| | | * @Last Modified time: 2021-07-18 21:02:10 |
| | | * menu-name 成绩管理 |
| | | */ |
| | | <template> |
| | | <el-row class="morpheus-box-score"> |
| | | <el-col :span="24"> |
| | | <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-update="questionBankRowUpdate" |
| | | > |
| | | <template slot-scope="{ row }" slot="learnGrade"> |
| | | {{ row.learnGrade == -1 ? "暂未录入" : row.learnGrade }} |
| | | </template> |
| | | |
| | | <!-- 自定义按钮 --> |
| | | <!-- <template slot="menuLeft"> |
| | | <el-button type="danger" |
| | | size="mini" |
| | | icon="el-icon-delete" |
| | | plain |
| | | @click="handleDelete">新增 |
| | | </el-button> |
| | | <el-button type="danger" |
| | | size="mini" |
| | | icon="el-icon-delete" |
| | | plain |
| | | @click="handleDelete">删除 |
| | | </el-button> |
| | | <el-button type="danger" |
| | | size="mini" |
| | | icon="el-icon-delete" |
| | | plain |
| | | @click="handleDelete">导出 |
| | | </el-button> |
| | | </template> --> |
| | | </avue-crud> |
| | | </div> |
| | | </el-card> |
| | | </el-col> |
| | | </el-row> |
| | | </template> |
| | | |
| | | <script> |
| | | import { getList, update } from "@/api/examapi/performance"; |
| | | |
| | | export default { |
| | | data() { |
| | | var validatePass = (rule, value, callback) => { |
| | | console.log(value); |
| | | if (value == undefined || value == "") { |
| | | callback(new Error("请输入实操成绩")); |
| | | return; |
| | | } else if (value !== "" && isNaN(value) == true) { |
| | | callback(new Error("请输入数字")); |
| | | } else if (value <= 0) { |
| | | callback(new Error("分数设置请大于0")); |
| | | } else if (value > 100) { |
| | | callback(new Error("分数设置请小于100")); |
| | | } else { |
| | | callback(); |
| | | } |
| | | }; |
| | | |
| | | return { |
| | | obj: { |
| | | name: "张三", |
| | | }, |
| | | questionBankOption: { |
| | | // 操作栏多余按钮去除 |
| | | delBtn: false, |
| | | editBtn: true, |
| | | addBtn: false, |
| | | selection: false, |
| | | // 导出按钮 |
| | | excelBtn: true, |
| | | excelBtnText: "成绩导出", |
| | | viewBtn: true, |
| | | // title: '成绩', |
| | | |
| | | align: "center", |
| | | height: "auto", |
| | | calcHeight: 80, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 4, |
| | | index: true, |
| | | indexLabel: "序号", |
| | | //dialogType: 'drawer', |
| | | dialogClickModal: false, |
| | | // 操作栏宽度 |
| | | menu: false, |
| | | menuWidth: 136, |
| | | labelWidth: 120, |
| | | |
| | | column: [ |
| | | { |
| | | label: "试卷名称", |
| | | prop: "examName", |
| | | search: true, |
| | | searchSpan: 4, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入试卷名称", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "保安姓名", |
| | | prop: "securityName", |
| | | search: true, |
| | | searchSpan: 4, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入保安姓名", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "所属公司", |
| | | prop: "companyName", |
| | | search: true, |
| | | searchSpan: 4, |
| | | // dicUrl: '/api/blade-system/dept/tree', |
| | | // props: { |
| | | // label: "title", |
| | | // value: "id", |
| | | // }, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入所属公司", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "考试时间", |
| | | prop: "examTime", |
| | | type: "datetime", |
| | | // span: 24, |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | width: 250, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | }, |
| | | { |
| | | label: "理论成绩", |
| | | prop: "theoryGrade", |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | }, |
| | | { |
| | | label: "实操成绩", |
| | | prop: "learnGrade", |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | 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: "qualified", |
| | | type: "select", |
| | | slot: true, |
| | | search: true, |
| | | searchSpan: 4, |
| | | dicData: [ |
| | | { |
| | | label: "合格", |
| | | value: 0, |
| | | }, |
| | | { |
| | | label: "不合格", |
| | | value: 1, |
| | | }, |
| | | { |
| | | label: "暂未录实操成绩", |
| | | value: 2, |
| | | }, |
| | | ], |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入考试名称", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | ], |
| | | }, |
| | | questionBankSearch: {}, |
| | | questionBankLoading: true, |
| | | questionBankData: [], |
| | | questionBankPage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 16, |
| | | }, |
| | | questionBankQuery: {}, |
| | | questionBankSelectionList: [], |
| | | }; |
| | | }, |
| | | created() {}, |
| | | mounted() {}, |
| | | methods: { |
| | | questionBankOnLoad(page, params = {}) { |
| | | this.questionBankLoading = false; |
| | | getList( |
| | | page.currentPage, |
| | | page.pageSize, |
| | | Object.assign(params, this.query) |
| | | ).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; |
| | | }, |
| | | |
| | | questionBankRowUpdate(row, index, done, loading) { |
| | | update({ |
| | | theoryGrade: row.theoryGrade, |
| | | learnGrade: row.learnGrade, |
| | | id: row.id, |
| | | }).then( |
| | | () => { |
| | | this.questionBankOnLoad(this.questionBankPage); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | </style> |
| | |
| | | * menu-name 考试管理 |
| | | */ |
| | | <template> |
| | | <el-row class="morpheus-box-paper"> |
| | | <el-col :span="24"> |
| | | <el-card> |
| | | |
| | | <div class="exam-card-body"> |
| | | |
| | | <avue-crud v-model="form" |
| | | 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-update="questionBankRowUpdate" |
| | | @row-del="questionBankRowDel"> |
| | | |
| | | <!-- 自定义按钮 --> |
| | | <!-- <template slot="menuLeft"> |
| | | <el-row class="morpheus-box-paper"> |
| | | <el-col :span="24"> |
| | | <el-card> |
| | | <div class="exam-card-body"> |
| | | <avue-crud |
| | | v-model="form" |
| | | 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-update="questionBankRowUpdate" |
| | | @row-del="questionBankRowDel" |
| | | > |
| | | <!-- 自定义按钮 --> |
| | | <!-- <template slot="menuLeft"> |
| | | <el-button type="danger" |
| | | size="mini" |
| | | icon="el-icon-delete" |
| | |
| | | </el-button> |
| | | </template> --> |
| | | |
| | | <template slot="menuLeft"> |
| | | <el-button type="danger" |
| | | size="small" |
| | | icon="el-icon-delete" |
| | | @click="questionBankHandleDelete">删 除 |
| | | </el-button> |
| | | </template> |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | icon="el-icon-delete" |
| | | @click="questionBankHandleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | |
| | | <template slot-scope="{row}" |
| | | slot="examStatus"> |
| | | <el-tag>{{row.examStatus == 0 ? '已发布' : '草稿'}}</el-tag> |
| | | </template> |
| | | <template slot-scope="{ row }" slot="examStatus"> |
| | | <el-tag>{{ row.examStatus == 0 ? "已发布" : "草稿" }}</el-tag> |
| | | </template> |
| | | |
| | | <template slot-scope="{row}" |
| | | slot="menu"> |
| | | |
| | | <el-button type="text" |
| | | size="mini" |
| | | icon="el-icon-collection" |
| | | class="start-kaoshi" |
| | | |
| | | @click="startExam(row)">报名清册 |
| | | </el-button> |
| | | </template> |
| | | |
| | | </avue-crud> |
| | | |
| | | </div> |
| | | |
| | | </el-card> |
| | | </el-col> |
| | | </el-row> |
| | | <template slot-scope="{ row }" slot="menu"> |
| | | <el-button |
| | | type="text" |
| | | size="mini" |
| | | icon="el-icon-collection" |
| | | class="start-kaoshi" |
| | | @click="startExam(row)" |
| | | >报名清册 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </div> |
| | | </el-card> |
| | | </el-col> |
| | | </el-row> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | getList, |
| | | add, |
| | | remove, |
| | | update |
| | | } from "@/api/examapi/examination"; |
| | | |
| | | import { getList, add, remove, update } from "@/api/examapi/examination"; |
| | | |
| | | export default { |
| | | data () { |
| | | data() { |
| | | var validatePass = (rule, value, callback) => { |
| | | console.log(value); |
| | | if (value == undefined || value == "") { |
| | | callback(new Error("请输入分数")); |
| | | return; |
| | | } else if (value !== "" && isNaN(value) == true) { |
| | | callback(new Error("请输入数字")); |
| | | } else if (value <= 0) { |
| | | callback(new Error("分数设置请大于0")); |
| | | } else { |
| | | callback(); |
| | | } |
| | | }; |
| | | |
| | | var validatePass = (rule, value, callback) => { |
| | | console.log(value) |
| | | if (value == undefined || value == '') { |
| | | callback(new Error('请输入分数')); |
| | | return; |
| | | } else if (value !== '' && isNaN(value) == true) { |
| | | callback(new Error('请输入数字')); |
| | | } else if (value <= 0) { |
| | | callback(new Error('分数设置请大于0')); |
| | | } else { |
| | | callback(); |
| | | } |
| | | }; |
| | | return { |
| | | form: {}, |
| | | questionBankOption: { |
| | | // 操作栏多余按钮去除 |
| | | delBtn: true, |
| | | editBtn: true, |
| | | addBtn: true, |
| | | selection: true, |
| | | menu: true, |
| | | // 导出按钮 |
| | | excelBtn: false, |
| | | viewBtn: true, |
| | | |
| | | return { |
| | | form: {}, |
| | | questionBankOption: { |
| | | // 操作栏多余按钮去除 |
| | | delBtn: true, |
| | | editBtn: true, |
| | | addBtn: true, |
| | | selection: true, |
| | | menu: true, |
| | | // 导出按钮 |
| | | excelBtn: false, |
| | | viewBtn: true, |
| | | // title: '题库', |
| | | |
| | | // title: '题库', |
| | | align: "center", |
| | | height: "auto", |
| | | calcHeight: 80, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 4, |
| | | index: true, |
| | | indexLabel: "序号", |
| | | //dialogType: 'drawer', |
| | | dialogClickModal: false, |
| | | // 操作栏宽度 |
| | | menuWidth: 280, |
| | | |
| | | align: 'center', |
| | | height: 'auto', |
| | | calcHeight: 80, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 4, |
| | | index: true, |
| | | indexLabel: '序号', |
| | | //dialogType: 'drawer', |
| | | dialogClickModal: false, |
| | | // 操作栏宽度 |
| | | menuWidth: 280, |
| | | labelWidth: 140, |
| | | |
| | | labelWidth: 140, |
| | | |
| | | column: [ |
| | | { |
| | | label: "考试名称", |
| | | prop: "examName", |
| | | search: true, |
| | | searchSpan: 5, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入试卷名称", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | // { |
| | | // label: "试卷分数", |
| | | // prop: "totalScore", |
| | | // slot: true, |
| | | // // 表单新增时是否禁止 |
| | | // addDisabled: false, |
| | | // // 表单新增时是否可见 |
| | | // addDisplay: true, |
| | | // // 表单新增时是否为查看模式 |
| | | // addDetail: false, |
| | | // // 表单编辑时是否禁止 |
| | | // editDisabled: false, |
| | | // // 表单编辑时是否可见 |
| | | // editDisplay: true, |
| | | // // 表单编辑时是否为查看模式 |
| | | // editDetail: false, |
| | | |
| | | // rules: [{ validator: validatePass, required: true, trigger: 'blur' }], |
| | | // width: 100 |
| | | // }, |
| | | { |
| | | label: "考试时间", |
| | | prop: "examTime", |
| | | type: "daterange", |
| | | // span: 24, |
| | | 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, |
| | | // display: false, |
| | | hide: true, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择考试时间", |
| | | trigger: "blur" |
| | | }], |
| | | width: 250 |
| | | }, |
| | | { |
| | | label: "考试开始时间", |
| | | prop: "startTime", |
| | | 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: false, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | width: 180 |
| | | }, |
| | | { |
| | | label: "考试结束时间", |
| | | prop: "endTime", |
| | | 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: false, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | width: 180 |
| | | }, |
| | | { |
| | | label: "创建人", |
| | | prop: "creator", |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: true, |
| | | // 表单新增时是否可见 |
| | | addDisplay: false, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: false, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | hide: true, |
| | | display: false, |
| | | }, |
| | | { |
| | | label: "备注", |
| | | prop: "remark", |
| | | span: 24, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false |
| | | }, |
| | | { |
| | | label: "注意事项", |
| | | prop: "examAttention", |
| | | type: "textarea", |
| | | span: 24, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | width: 240 |
| | | }, |
| | | |
| | | ] |
| | | }, |
| | | questionBankSearch: {}, |
| | | questionBankLoading: true, |
| | | questionBankData: [ |
| | | column: [ |
| | | { |
| | | label: "考试名称", |
| | | prop: "examName", |
| | | search: true, |
| | | searchSpan: 4, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入试卷名称", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | questionBankPage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 16 |
| | | }, |
| | | questionBankQuery: {}, |
| | | questionBankSelectionList: [], |
| | | }, |
| | | // { |
| | | // label: "试卷分数", |
| | | // prop: "totalScore", |
| | | // slot: true, |
| | | // // 表单新增时是否禁止 |
| | | // addDisabled: false, |
| | | // // 表单新增时是否可见 |
| | | // addDisplay: true, |
| | | // // 表单新增时是否为查看模式 |
| | | // addDetail: false, |
| | | // // 表单编辑时是否禁止 |
| | | // editDisabled: false, |
| | | // // 表单编辑时是否可见 |
| | | // editDisplay: true, |
| | | // // 表单编辑时是否为查看模式 |
| | | // editDetail: false, |
| | | |
| | | // rules: [{ validator: validatePass, required: true, trigger: 'blur' }], |
| | | // width: 100 |
| | | // }, |
| | | { |
| | | label: "考试时间", |
| | | prop: "examTime", |
| | | type: "daterange", |
| | | // span: 24, |
| | | 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, |
| | | // display: false, |
| | | hide: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择考试时间", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | width: 250, |
| | | }, |
| | | { |
| | | label: "考试开始时间", |
| | | prop: "startTime", |
| | | 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: false, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | width: 180, |
| | | }, |
| | | { |
| | | label: "考试结束时间", |
| | | prop: "endTime", |
| | | 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: false, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | width: 180, |
| | | }, |
| | | { |
| | | label: "创建人", |
| | | prop: "creator", |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: true, |
| | | // 表单新增时是否可见 |
| | | addDisplay: false, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: true, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: false, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | hide: true, |
| | | display: false, |
| | | }, |
| | | { |
| | | label: "备注", |
| | | prop: "remark", |
| | | span: 24, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | }, |
| | | { |
| | | label: "注意事项", |
| | | prop: "examAttention", |
| | | type: "textarea", |
| | | span: 24, |
| | | slot: true, |
| | | // 表单新增时是否禁止 |
| | | addDisabled: false, |
| | | // 表单新增时是否可见 |
| | | addDisplay: true, |
| | | // 表单新增时是否为查看模式 |
| | | addDetail: false, |
| | | // 表单编辑时是否禁止 |
| | | editDisabled: false, |
| | | // 表单编辑时是否可见 |
| | | editDisplay: true, |
| | | // 表单编辑时是否为查看模式 |
| | | editDetail: false, |
| | | width: 240, |
| | | }, |
| | | ], |
| | | }, |
| | | questionBankSearch: {}, |
| | | questionBankLoading: true, |
| | | questionBankData: [], |
| | | questionBankPage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 16, |
| | | }, |
| | | questionBankQuery: {}, |
| | | questionBankSelectionList: [], |
| | | }; |
| | | }, |
| | | created() {}, |
| | | mounted() {}, |
| | | computed: { |
| | | ids() { |
| | | let ids = []; |
| | | this.questionBankSelectionList.forEach((ele) => { |
| | | ids.push(ele.id); |
| | | }); |
| | | return ids.join(","); |
| | | }, |
| | | }, |
| | | watch: {}, |
| | | methods: { |
| | | questionBankOnLoad(page, params = {}) { |
| | | this.questionBankLoading = false; |
| | | getList( |
| | | 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; |
| | | }, |
| | | |
| | | startExam(row) { |
| | | //正式考试 |
| | | if (row.examType == 1) { |
| | | this.$router.push({ |
| | | path: `/applydetailed`, |
| | | query: row, |
| | | }); |
| | | } |
| | | |
| | | //模拟考试 |
| | | if (row.examType == 2) { |
| | | this.$router.push({ |
| | | path: `/trainApply`, |
| | | query: row, |
| | | }); |
| | | } |
| | | }, |
| | | // 新增 |
| | | questionBankRowSave(row, done, loading) { |
| | | row.startTime = row.examTime[0]; |
| | | row.endTime = row.examTime[1]; |
| | | row.examTime = JSON.stringify(row.examTime); |
| | | add(row).then( |
| | | () => { |
| | | this.questionBankOnLoad(this.questionBankPage); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }, |
| | | created () { |
| | | |
| | | |
| | | questionBankRowUpdate(row, index, done, loading) { |
| | | if (Array.isArray(row.examTime) != true) { |
| | | row.examTime = row.examTime.split(","); |
| | | } |
| | | row.startTime = row.examTime[0]; |
| | | row.endTime = row.examTime[1]; |
| | | row.examTime = JSON.stringify(row.examTime); |
| | | update(row).then( |
| | | () => { |
| | | this.questionBankOnLoad(this.questionBankPage); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }, |
| | | mounted () { |
| | | |
| | | |
| | | questionBankRowDel(row) { |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove(row.id); |
| | | }) |
| | | .then(() => { |
| | | this.questionBankOnLoad(this.questionBankPage); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | }); |
| | | }, |
| | | computed: { |
| | | ids () { |
| | | let ids = []; |
| | | this.questionBankSelectionList.forEach(ele => { |
| | | ids.push(ele.id); |
| | | }); |
| | | return ids.join(","); |
| | | }, |
| | | 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(); |
| | | }); |
| | | }, |
| | | watch: { |
| | | |
| | | }, |
| | | methods: { |
| | | questionBankOnLoad (page, params = {}) { |
| | | this.questionBankLoading = false; |
| | | getList(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; |
| | | }, |
| | | |
| | | startExam (row) { |
| | | //正式考试 |
| | | if(row.examType==1){ |
| | | this.$router.push({ |
| | | path: `/applydetailed`, |
| | | query: row |
| | | }) |
| | | } |
| | | |
| | | //模拟考试 |
| | | if(row.examType==2){ |
| | | this.$router.push({ |
| | | path: `/trainApply`, |
| | | query: row |
| | | }) |
| | | } |
| | | }, |
| | | // 新增 |
| | | questionBankRowSave (row, done, loading) { |
| | | row.startTime = row.examTime[0] |
| | | row.endTime = row.examTime[1] |
| | | row.examTime = JSON.stringify(row.examTime) |
| | | add(row).then(() => { |
| | | this.questionBankOnLoad(this.questionBankPage); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!" |
| | | }); |
| | | done(); |
| | | }, error => { |
| | | window.console.log(error); |
| | | loading(); |
| | | }); |
| | | }, |
| | | questionBankRowUpdate (row, index, done, loading) { |
| | | if (Array.isArray(row.examTime) != true) { |
| | | row.examTime = row.examTime.split(",") |
| | | } |
| | | row.startTime = row.examTime[0] |
| | | row.endTime = row.examTime[1] |
| | | row.examTime = JSON.stringify(row.examTime) |
| | | update(row).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(); |
| | | }); |
| | | }, |
| | | } |
| | | } |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | |
| | | </style> |
| | |
| | | * menu-name 题库查询 |
| | | */ |
| | | <template> |
| | | <div> |
| | | <div> |
| | | <el-row class="morpheus-box"> |
| | | <el-col :span="24"> |
| | | <el-card> |
| | | <el-col :span="24"> |
| | | <el-card> |
| | | <div class="exam-card-body"> |
| | | <avue-crud |
| | | 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-del="questionBankHandleDel" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="primary" |
| | | size="small" |
| | | icon="el-icon-plus" |
| | | @click="questionBankHandleAdd" |
| | | >新 增 |
| | | </el-button> |
| | | <el-button |
| | | type="success" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-upload2" |
| | | @click="handleImport" |
| | | >题库导入 |
| | | </el-button> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | icon="el-icon-delete" |
| | | @click="questionBankHandleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | |
| | | <div class="exam-card-body"> |
| | | <template slot-scope="{ row }" slot="menu"> |
| | | <el-button |
| | | type="text" |
| | | size="mini" |
| | | icon="el-icon-edit" |
| | | @click="questionBankHandleAdd(row)" |
| | | >编辑 |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | size="mini" |
| | | icon="el-icon-delete" |
| | | @click="questionBankHandleDel(row)" |
| | | >删除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | |
| | | <avue-crud 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-del="questionBankHandleDel"> |
| | | |
| | | <template slot="menuLeft"> |
| | | <el-button type="primary" |
| | | size="small" |
| | | icon="el-icon-plus" |
| | | @click="questionBankHandleAdd">新 增 |
| | | </el-button> |
| | | <el-button |
| | | type="success" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-upload2" |
| | | @click="handleImport" |
| | | >题库导入 |
| | | </el-button> |
| | | <el-button type="danger" |
| | | size="small" |
| | | icon="el-icon-delete" |
| | | @click="questionBankHandleDelete">删 除 |
| | | </el-button> |
| | | </template> |
| | | |
| | | <template slot-scope="{row}" slot="menu"> |
| | | <el-button type="text" |
| | | size="mini" |
| | | icon="el-icon-edit" |
| | | @click="questionBankHandleAdd(row)">编辑 |
| | | </el-button> |
| | | <el-button type="text" |
| | | size="mini" |
| | | icon="el-icon-delete" |
| | | @click="questionBankHandleDel(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-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> |
| | | <addsubject ref="addsubject"></addsubject> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | getList, |
| | | remove, |
| | | } from "@/api/examapi/subject"; |
| | | import { getList, remove } from "@/api/examapi/subject"; |
| | | |
| | | import addsubject from "./addsubject.vue"; |
| | | |
| | | export default { |
| | | components:{ |
| | | addsubject |
| | | }, |
| | | data () { |
| | | return { |
| | | excelBox:false, |
| | | 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/examSubjectChoices/import-examSubject", |
| | | }, |
| | | { |
| | | label: "模板下载", |
| | | prop: "excelTemplate", |
| | | formslot: true, |
| | | span: 24, |
| | | }, |
| | | ], |
| | | components: { |
| | | addsubject, |
| | | }, |
| | | data() { |
| | | return { |
| | | excelBox: false, |
| | | excelForm: {}, |
| | | excelOption: { |
| | | submitBtn: false, |
| | | emptyBtn: false, |
| | | column: [ |
| | | { |
| | | label: "模板上传", |
| | | prop: "excelFile", |
| | | type: "upload", |
| | | drag: true, |
| | | loadText: "模板上传中,请稍等", |
| | | span: 24, |
| | | propsHttp: { |
| | | res: "data", |
| | | }, |
| | | questionBankOption: { |
| | | // 操作栏多余按钮去除 |
| | | delBtn: false, |
| | | editBtn: false, |
| | | addBtn: false, |
| | | selection: true, |
| | | menu: true, |
| | | // 导出按钮 |
| | | excelBtn: true, |
| | | excelBtnText: '题库导出', |
| | | // title: '题库', |
| | | align: 'center', |
| | | height: 'auto', |
| | | calcHeight: 80, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 4, |
| | | index: true, |
| | | indexLabel: '序号', |
| | | viewBtn: true, |
| | | //dialogType: 'drawer', |
| | | dialogClickModal: false, |
| | | // 操作栏宽度 |
| | | menuWidth: 226, |
| | | column: [ |
| | | { |
| | | label: "题目名称", |
| | | prop: "subjectName", |
| | | |
| | | search: true, |
| | | slot: true, |
| | | }, |
| | | { |
| | | label: "题目类型", |
| | | prop: "choicesType", |
| | | search: true, |
| | | type: "select", |
| | | dicData: [{ |
| | | label: '单选题', |
| | | value: 0 |
| | | }, { |
| | | label: '多选题', |
| | | value: 1, |
| | | }, { |
| | | label: '判断题', |
| | | value: 2, |
| | | }, { |
| | | label: '实操题', |
| | | value: 3, |
| | | }], |
| | | slot: true, |
| | | width: 96, |
| | | }, |
| | | { |
| | | label: "题目分值", |
| | | prop: "score", |
| | | slot: true, |
| | | width: 96, |
| | | }, |
| | | { |
| | | label: "参考答案", |
| | | prop: "answer", |
| | | slot: true, |
| | | width: 96, |
| | | }, |
| | | { |
| | | label: "创建人", |
| | | prop: "creator", |
| | | slot: true, |
| | | width: 96, |
| | | }, |
| | | { |
| | | label: "创建时间", |
| | | prop: "createDate", |
| | | slot: true, |
| | | width: 130, |
| | | }, |
| | | { |
| | | label: "修改人", |
| | | prop: "modifier", |
| | | slot: true, |
| | | width: 96, |
| | | }, |
| | | { |
| | | label: "修改时间", |
| | | prop: "modifyDate", |
| | | slot: true, |
| | | width: 130, |
| | | } |
| | | ] |
| | | }, |
| | | questionBankSearch: {}, |
| | | questionBankLoading: true, |
| | | questionBankData: [ |
| | | |
| | | tip: "请上传 .xls,.xlsx 标准格式文件", |
| | | action: "/api/examSubjectChoices/import-examSubject", |
| | | }, |
| | | { |
| | | label: "模板下载", |
| | | prop: "excelTemplate", |
| | | formslot: true, |
| | | span: 24, |
| | | }, |
| | | ], |
| | | }, |
| | | questionBankOption: { |
| | | // 操作栏多余按钮去除 |
| | | delBtn: false, |
| | | editBtn: false, |
| | | addBtn: false, |
| | | selection: true, |
| | | menu: true, |
| | | // 导出按钮 |
| | | excelBtn: true, |
| | | excelBtnText: "题库导出", |
| | | // title: '题库', |
| | | align: "center", |
| | | height: "auto", |
| | | calcHeight: 80, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 4, |
| | | index: true, |
| | | indexLabel: "序号", |
| | | viewBtn: true, |
| | | //dialogType: 'drawer', |
| | | dialogClickModal: false, |
| | | // 操作栏宽度 |
| | | menuWidth: 226, |
| | | column: [ |
| | | { |
| | | label: "题目名称", |
| | | prop: "subjectName", |
| | | searchSpan: 4, |
| | | search: true, |
| | | slot: true, |
| | | }, |
| | | { |
| | | label: "题目类型", |
| | | prop: "choicesType", |
| | | search: true, |
| | | type: "select", |
| | | searchSpan: 4, |
| | | dicData: [ |
| | | { |
| | | label: "单选题", |
| | | value: 0, |
| | | }, |
| | | { |
| | | label: "多选题", |
| | | value: 1, |
| | | }, |
| | | { |
| | | label: "判断题", |
| | | value: 2, |
| | | }, |
| | | { |
| | | label: "实操题", |
| | | value: 3, |
| | | }, |
| | | ], |
| | | questionBankPage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 16 |
| | | }, |
| | | questionBankQuery: {}, |
| | | questionBankSelectionList: [], |
| | | } |
| | | slot: true, |
| | | width: 96, |
| | | }, |
| | | { |
| | | label: "题目分值", |
| | | prop: "score", |
| | | slot: true, |
| | | width: 96, |
| | | }, |
| | | { |
| | | label: "参考答案", |
| | | prop: "answer", |
| | | slot: true, |
| | | width: 96, |
| | | }, |
| | | { |
| | | label: "创建人", |
| | | prop: "creator", |
| | | slot: true, |
| | | width: 96, |
| | | }, |
| | | { |
| | | label: "创建时间", |
| | | prop: "createDate", |
| | | slot: true, |
| | | width: 130, |
| | | }, |
| | | { |
| | | label: "修改人", |
| | | prop: "modifier", |
| | | slot: true, |
| | | width: 96, |
| | | }, |
| | | { |
| | | label: "修改时间", |
| | | prop: "modifyDate", |
| | | slot: true, |
| | | width: 130, |
| | | }, |
| | | ], |
| | | }, |
| | | questionBankSearch: {}, |
| | | questionBankLoading: true, |
| | | questionBankData: [], |
| | | questionBankPage: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 16, |
| | | }, |
| | | questionBankQuery: {}, |
| | | questionBankSelectionList: [], |
| | | }; |
| | | }, |
| | | created() {}, |
| | | mounted() {}, |
| | | computed: { |
| | | ids() { |
| | | let ids = []; |
| | | this.questionBankSelectionList.forEach((ele) => { |
| | | ids.push(ele.id); |
| | | }); |
| | | return ids.join(","); |
| | | }, |
| | | created () { |
| | | |
| | | |
| | | }, |
| | | methods: { |
| | | questionBankHandleAdd(row) { |
| | | this.$refs.addsubject.inits(row.id); |
| | | }, |
| | | mounted () { |
| | | |
| | | |
| | | questionBankOnLoad(page, params = {}) { |
| | | this.questionBankLoading = false; |
| | | getList( |
| | | page.currentPage, |
| | | page.pageSize, |
| | | Object.assign(params, this.query) |
| | | ).then((res) => { |
| | | const data = res.data.data; |
| | | this.questionBankPage.total = data.total; |
| | | this.questionBankData = data.records; |
| | | this.questionBankLoading = false; |
| | | this.questionBankSelectionClear(); |
| | | }); |
| | | }, |
| | | computed: { |
| | | ids () { |
| | | let ids = []; |
| | | this.questionBankSelectionList.forEach(ele => { |
| | | ids.push(ele.id); |
| | | }); |
| | | return ids.join(","); |
| | | }, |
| | | questionBankSelectionClear() { |
| | | this.questionBankSelectionList = []; |
| | | this.$refs.questionBankCrud.toggleSelection(); |
| | | }, |
| | | methods: { |
| | | questionBankHandleAdd(row){ |
| | | this.$refs.addsubject.inits(row.id); |
| | | }, |
| | | questionBankOnLoad (page, params = {}) { |
| | | this.questionBankLoading = false; |
| | | getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).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; |
| | | }, |
| | | 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; |
| | | }, |
| | | |
| | | questionBankHandleDel (row) { |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning" |
| | | }) |
| | | .then(() => { |
| | | return remove(row.id); |
| | | }) |
| | | .then(() => { |
| | | questionBankHandleDel(row) { |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove(row.id); |
| | | }) |
| | | .then(() => { |
| | | this.questionBankOnLoad(this.questionBankPage); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | 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(); |
| | | }); |
| | | }, |
| | | |
| | | 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/examSubjectChoices/export-template` |
| | | ); |
| | | }, |
| | | uploadAfter(res, done, loading, column) { |
| | | window.console.log(column); |
| | | this.excelBox = false; |
| | | this.refreshChange(); |
| | | done(); |
| | | }, |
| | | refreshChange() { |
| | | this.questionBankOnLoad(this.page, this.query); |
| | | }, |
| | | } |
| | | } |
| | | //导出数据 |
| | | 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/examSubjectChoices/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> |
| | |
| | | tip: false, |
| | | searchSize: "mini", |
| | | searchMenuSpan: 6, |
| | | height: 693, |
| | | height: 583, |
| | | index: true, |
| | | menuWidth: 160, |
| | | align: "center", |
| | |
| | | tip: false, |
| | | searchSize: "mini", |
| | | searchMenuSpan: 6, |
| | | height: 693, |
| | | height: 583, |
| | | index: true, |
| | | menuWidth: 160, |
| | | align: "center", |
| New file |
| | |
| | | //保安员基本信息 |
| | | export var securityBaseInfoColumn = [{ |
| | | label: "", |
| | | labelWidth: "20", |
| | | type: 'title', |
| | | prop: "title", |
| | | span: 24, |
| | | styles: { |
| | | fontSize: '24px' |
| | | } |
| | | }, |
| | | { |
| | | label: "所属保安公司", |
| | | prop: "deptId", |
| | | type: "tree", |
| | | dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697", |
| | | // dicUrl: "/api/blade-system/dept/lazy-tree?parentId=0", |
| | | props: { |
| | | label: "title", |
| | | value: "id", |
| | | }, |
| | | disabled: true, |
| | | span: 24, |
| | | }, |
| | | { |
| | | label: "登录账号", |
| | | prop: "account", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "用户姓名", |
| | | prop: "realName", |
| | | disabled: true, |
| | | }, |
| | | { |
| | | label: "用户昵称", |
| | | prop: "name", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "手机号码", |
| | | prop: "phone", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "电子邮箱", |
| | | prop: "email", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "身份证号", |
| | | prop: "cardid", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "籍贯", |
| | | prop: "nativeplace", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "民族", |
| | | prop: "nation", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "是否持证", |
| | | prop: "hold", |
| | | dicUrl: "/api/blade-system/dict-biz/dictionary?code=equipage", |
| | | props: { |
| | | label: "dictValue", |
| | | value: "dictKey", |
| | | }, |
| | | type: "select", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "保安员证编号", |
| | | prop: "securitynumber", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "所属辖区", |
| | | prop: "jurisdiction", |
| | | // multiple: true, |
| | | type: "tree", |
| | | dicUrl: "/api/jurisdiction/lazy-tree?parentId=0", |
| | | props: { |
| | | label: "title", |
| | | value: "id", |
| | | }, |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "最高学历", |
| | | prop: "education", |
| | | type: "select", |
| | | dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationType", |
| | | props: { |
| | | label: "dictValue", |
| | | value: "dictKey" |
| | | }, |
| | | dataType: "number", |
| | | slot: true, |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "政治面貌", |
| | | prop: "politicaloutlook", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "身高", |
| | | prop: "height", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "联系地址", |
| | | prop: "address", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "户口所在地", |
| | | prop: "registered", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "入职时间", |
| | | prop: "rtime", |
| | | type: 'date', |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "用户性别", |
| | | prop: "sex", |
| | | type: "select", |
| | | dicData: [{ |
| | | label: "男", |
| | | value: 1 |
| | | }, |
| | | { |
| | | label: "女", |
| | | value: 2 |
| | | }, |
| | | { |
| | | label: "未知", |
| | | value: 3 |
| | | } |
| | | ], |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "用户生日", |
| | | type: "date", |
| | | prop: "birthday", |
| | | disabled: true |
| | | } |
| | | |
| | | |
| | | ] |
| | | |
| | | |
| | | export var securityBaseInfoColumns = [{ |
| | | label: "所属保安单位", |
| | | prop: "tenantId", |
| | | type: "tree", |
| | | dicUrl: "/api/blade-system/tenant/select", |
| | | props: { |
| | | label: "tenantName", |
| | | value: "tenantId" |
| | | }, |
| | | disabled: true, |
| | | span: 24, |
| | | }, |
| | | { |
| | | label: "登录账号", |
| | | prop: "account", |
| | | disabled: true |
| | | }, |
| | | { |
| | | label: "用户姓名", |
| | | prop: "realName", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入用户姓名", |
| | | trigger: "blur" |
| | | }, { |
| | | min: 2, |
| | | max: 5, |
| | | message: '姓名长度在2到5个字符' |
| | | }] |
| | | }, |
| | | { |
| | | label: "用户昵称", |
| | | prop: "name" |
| | | }, |
| | | { |
| | | label: "手机号码", |
| | | prop: "phone", |
| | | overHidden: true, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入手机号", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "电子邮箱", |
| | | prop: "email", |
| | | hide: true, |
| | | overHidden: true |
| | | }, |
| | | { |
| | | label: "身份证号", |
| | | prop: "cardid", |
| | | hide: true, |
| | | overHidden: true, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入身份证号", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "籍贯", |
| | | prop: "nativeplace", |
| | | hide: true, |
| | | overHidden: true |
| | | }, |
| | | { |
| | | label: "民族", |
| | | prop: "nation", |
| | | hide: true, |
| | | overHidden: true |
| | | }, |
| | | { |
| | | label: "最高学历", |
| | | prop: "education", |
| | | type: "select", |
| | | dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationType", |
| | | props: { |
| | | label: "dictValue", |
| | | value: "dictKey" |
| | | }, |
| | | dataType: "number", |
| | | slot: true, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择学历", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "政治面貌", |
| | | prop: "politicaloutlook", |
| | | hide: true, |
| | | overHidden: true |
| | | }, |
| | | { |
| | | label: "身高", |
| | | prop: "height", |
| | | hide: true, |
| | | overHidden: true |
| | | }, |
| | | { |
| | | label: "联系地址", |
| | | prop: "address", |
| | | hide: true, |
| | | overHidden: true |
| | | }, |
| | | { |
| | | label: "户口所在地", |
| | | prop: "registered", |
| | | hide: true, |
| | | overHidden: true |
| | | }, |
| | | { |
| | | label: "入职时间", |
| | | prop: "rtime", |
| | | type: 'date', |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | hide: true, |
| | | overHidden: true |
| | | }, |
| | | { |
| | | label: "用户性别", |
| | | prop: "sex", |
| | | type: "select", |
| | | dicData: [{ |
| | | label: "男", |
| | | value: 1 |
| | | }, |
| | | { |
| | | label: "女", |
| | | value: 2 |
| | | }, |
| | | { |
| | | label: "未知", |
| | | value: 3 |
| | | } |
| | | ], |
| | | hide: true |
| | | }, |
| | | { |
| | | label: "用户生日", |
| | | type: "date", |
| | | prop: "birthday", |
| | | hide: true |
| | | } |
| | | ] |
| | | |
| | | |
| | | //从业记录 |
| | | export var practitionersColumn = [{ |
| | | label: "id", |
| | | prop: "id", |
| | | hide: true, |
| | | editDisplay: false, |
| | | addDisplay: false |
| | | }, { |
| | | label: '单位名称', |
| | | prop: "companyname", |
| | | formslot: true, |
| | | }, { |
| | | label: '部门', |
| | | prop: "department", |
| | | formslot: true, |
| | | }, { |
| | | label: '岗位', |
| | | prop: "post", |
| | | formslot: true, |
| | | }, { |
| | | label: '岗位职责', |
| | | prop: "responsibilities", |
| | | formslot: true, |
| | | }, { |
| | | label: '入职时间', |
| | | type: 'date', |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | prop: "entryTime", |
| | | formslot: true, |
| | | }, { |
| | | label: '离职时间', |
| | | type: 'date', |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | prop: "departureTime", |
| | | formslot: true, |
| | | }, { |
| | | label: '离职原因', |
| | | prop: "leaving", |
| | | formslot: true, |
| | | }] |
| | | |
| | | export var practitionersColumns = [{ |
| | | width: 200, |
| | | label: '单位名称', |
| | | prop: "companyname", |
| | | formslot: true, |
| | | }, { |
| | | width: 200, |
| | | label: '部门', |
| | | prop: "department", |
| | | formslot: true, |
| | | }, { |
| | | width: 200, |
| | | label: '岗位', |
| | | prop: "post", |
| | | formslot: true, |
| | | }, { |
| | | width: 200, |
| | | label: '岗位职责', |
| | | prop: "responsibilities", |
| | | formslot: true, |
| | | }, { |
| | | width: 200, |
| | | label: '入职时间', |
| | | type: 'date', |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | prop: "entryTime", |
| | | formslot: true, |
| | | }, { |
| | | width: 200, |
| | | label: '离职时间', |
| | | type: 'date', |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | prop: "departureTime", |
| | | formslot: true, |
| | | }, { |
| | | width: 200, |
| | | label: '离职原因', |
| | | prop: "leaving", |
| | | formslot: true, |
| | | }] |
| | | |
| | | export var trackRecordColumn = [{ |
| | | label: "id", |
| | | prop: "id", |
| | | hide: true, |
| | | editDisplay: false, |
| | | addDisplay: false |
| | | }, { |
| | | label: '工作态度', |
| | | prop: "workingattitude", |
| | | formslot: true, |
| | | }, { |
| | | label: '工作成效', |
| | | prop: "achievements", |
| | | formslot: true, |
| | | }, { |
| | | label: '表现', |
| | | prop: "score", |
| | | type: "select", |
| | | dicUrl: "/api/blade-system/dict-biz/dictionary?code=scoreType", |
| | | props: { |
| | | label: "dictValue", |
| | | value: "dictKey" |
| | | }, |
| | | dataType: "number", |
| | | slot: true, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择表现", |
| | | trigger: "blur" |
| | | }] |
| | | }, { |
| | | label: '时间', |
| | | type: 'date', |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | prop: "time", |
| | | formslot: true, |
| | | }, { |
| | | label: '服务公司', |
| | | prop: "departmentName", |
| | | formslot: true, |
| | | }] |
| | | |
| | | |
| | | export var securityFormPageColumn = [{ |
| | | label: "姓名", |
| | | prop: "realName", |
| | | search: true, |
| | | searchSpan: 4, |
| | | display: false |
| | | }, |
| | | { |
| | | label: "性别", |
| | | prop: "sex", |
| | | type: "select", |
| | | dicData: [{ |
| | | label: "男", |
| | | value: 1, |
| | | }, |
| | | { |
| | | label: "女", |
| | | value: 2, |
| | | }, |
| | | { |
| | | label: "未知", |
| | | value: 3, |
| | | }, |
| | | ], |
| | | display: false |
| | | }, |
| | | |
| | | { |
| | | label: "籍贯", |
| | | prop: "nativeplace", |
| | | display: false |
| | | }, |
| | | { |
| | | label: "民族", |
| | | prop: "nation", |
| | | display: false |
| | | }, |
| | | { |
| | | label: "出生日期", |
| | | prop: "birthday", |
| | | type: "date", |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | display: false |
| | | }, |
| | | { |
| | | label: "学历", |
| | | prop: "education", |
| | | display: false, |
| | | dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationType", |
| | | props: { |
| | | label: "dictValue", |
| | | value: "dictKey" |
| | | }, |
| | | type: "select", |
| | | hide: true, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择学历", |
| | | trigger: "blur" |
| | | }], |
| | | }, |
| | | { |
| | | label: "联系电话", |
| | | prop: "phone", |
| | | display: false |
| | | }, |
| | | { |
| | | label: "邮箱", |
| | | prop: "email", |
| | | display: false, |
| | | width: 150 |
| | | }, |
| | | { |
| | | 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: 6, |
| | | display: false, |
| | | search: true, |
| | | 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: "rtime", |
| | | // type: "datetime", |
| | | // format: "yyyy-MM-dd", |
| | | // valueFormat: "yyyy-MM-dd", |
| | | // searchRange: true, |
| | | // searchSpan: 6, |
| | | // hide: true, |
| | | // addDisplay: false, |
| | | // editDisplay: false, |
| | | // viewDisplay: false, |
| | | // search: true, |
| | | // 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" |
| | | }] |
| | | }, |
| | | ] |
| New file |
| | |
| | | /** |
| | | *liu |
| | | **/ |
| | | |
| | | |
| | | |
| | | <template> |
| | | <div class="dispatchChildoperable"> |
| | | <!-- <avue-tabs :option="optionTABS" @change="handleChangeTABS"></avue-tabs> --> |
| | | <!-- <span v-if="typeTABS.prop === 'tab1'"> --> |
| | | <!-- <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> --> |
| | | <!-- <avue-form ref="form" v-model="obj0" :option="option0"> --> |
| | | <!-- <template slot-scope="scope" slot="menuForm"> |
| | | <el-button @click="tip">自定义按钮</el-button> |
| | | </template> --> |
| | | <!-- </avue-form> |
| | | </span> |
| | | <span v-else-if="typeTABS.prop === 'tab2'"> --> |
| | | <avue-crud |
| | | :option="option1" |
| | | :data="data1" |
| | | :page.sync="page1" |
| | | ref="crudrec1" |
| | | :table-loading="loading1" |
| | | @row-save="rowSave1" |
| | | @search-change="searchChange1" |
| | | @search-reset="searchReset1" |
| | | @row-update="rowUpdate1" |
| | | @row-del="rowDel1" |
| | | @selection-change="selectionChange1" |
| | | @refresh-change="refreshChange1" |
| | | > |
| | | <!-- <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete1" |
| | | >删 除 |
| | | </el-button> |
| | | </template> --> |
| | | </avue-crud> |
| | | <!-- </span> --> |
| | | <!-- <span v-else-if="typeTABS.prop === 'tab3'">选项卡内容3</span> --> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | // import { column, column1 } from "./data"; |
| | | import { |
| | | securityBaseInfoColumn, |
| | | practitionersColumn, |
| | | trackRecordColumn, |
| | | } from "./data"; |
| | | import { getUserPractitionersInfo } from "@/api/system/user"; |
| | | import { add, update, page, remove } from "@/api/performance/performance"; |
| | | import { mapGetters } from "vuex"; |
| | | export default { |
| | | data() { |
| | | let baseUrl = "https://cli.avuejs.com/api/area"; |
| | | return { |
| | | // typeTABS: {}, //标签页 |
| | | // optionTABS: { |
| | | // column: [ |
| | | // { |
| | | // // icon: "el-icon-info", |
| | | // label: "派遣服务公司详情", |
| | | // prop: "tab1", |
| | | // }, |
| | | // { |
| | | // // icon: "el-icon-info", |
| | | // label: "派遣记录", |
| | | // prop: "tab2", |
| | | // }, |
| | | // // { |
| | | // // icon: "el-icon-info", |
| | | // // label: "选项卡3", |
| | | // // prop: "tab3", |
| | | // // }, |
| | | // ], |
| | | // }, |
| | | |
| | | // id: "", //记录归属id |
| | | // //基本信息 |
| | | // //保安单位信息表单 |
| | | // obj0: { |
| | | // // title: "我是头部标题", |
| | | // }, |
| | | // option0: { |
| | | // emptyBtn: false, |
| | | // submitBtn: false, |
| | | // gutter: 30, |
| | | // column: column, |
| | | // }, |
| | | // loading: true, //派遣服务公司登记 |
| | | // selectionList: [], |
| | | // page: { |
| | | // pageSize: 10, |
| | | // currentPage: 1, |
| | | // total: 0, |
| | | // }, |
| | | // query: {}, |
| | | // data: [], |
| | | // option: { |
| | | // card: true, |
| | | // searchSize: "mini", |
| | | // searchMenuSpan: 6, |
| | | // height: 547, |
| | | // menuWidth: 160, |
| | | // align: "center", |
| | | // selection: true, |
| | | // column: column, |
| | | // }, |
| | | deptCategory: "", |
| | | deptId: "", |
| | | |
| | | loading1: true, //派遣记录 |
| | | selectionList1: [], |
| | | page1: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 0, |
| | | }, |
| | | query1: {}, |
| | | data1: [], |
| | | option1: { |
| | | card: true, |
| | | menu: false, |
| | | addBtn: false, |
| | | height: "auto", |
| | | widtd: "auto", |
| | | calcHeight: 54, |
| | | border: false, |
| | | stripe: true, |
| | | tip: false, |
| | | index: true, |
| | | dialogClickModal: false, |
| | | headerAlign: "center", |
| | | align: "center", |
| | | column: trackRecordColumn, |
| | | }, |
| | | }; |
| | | }, |
| | | computed: { |
| | | ...mapGetters(["userInfo"]), |
| | | // ids() { |
| | | // let ids = []; |
| | | // this.selectionList.forEach((ele) => { |
| | | // ids.push(ele.id); |
| | | // }); |
| | | // return ids.join(","); |
| | | // }, |
| | | ids1() { |
| | | let ids1 = []; |
| | | this.selectionList1.forEach((ele) => { |
| | | ids1.push(ele.id); |
| | | }); |
| | | return ids1.join(","); |
| | | }, |
| | | }, |
| | | methods: { |
| | | handleChangeTABS(column) { |
| | | this.typeTABS = column; |
| | | if (column.prop == "tab1") { |
| | | this.loading1 = false; |
| | | // this.onLoad(this.page); |
| | | } else if (column.prop == "tab2") { |
| | | // this.loading = false; |
| | | console.log(document.getElementsByClassName("el-card__body")[0]); |
| | | this.onLoad1(this.page1); //第二个表格不会自动执行 |
| | | } |
| | | // this.$message.success(JSON.stringify(column)); |
| | | }, |
| | | //派遣服务公司登记 |
| | | // sizeChange(val) { |
| | | // this.page1.currentPage = 1; |
| | | // this.page1.pageSize = val; |
| | | // // this.getData(); |
| | | // this.onLoad(this.page, this.query); |
| | | // // this.$message.success("行数" + val); |
| | | // }, |
| | | // currentChange(val) { |
| | | // this.page1.currentPage = val; |
| | | // // this.getData(); |
| | | // this.onLoad(this.page, this.query); |
| | | // // this.$message.success("页码" + val); |
| | | // }, |
| | | // rowSave(form, done, loading) { |
| | | // var that = this; |
| | | // var form = this.data[0]; |
| | | // delete form.id; |
| | | // for (var k = 0; k < 13; k++) { |
| | | // adddata(form).then( |
| | | // (res) => { |
| | | // this.onLoad(this.page); |
| | | // this.$message({ |
| | | // type: "success", |
| | | // message: "操作成功!", |
| | | // }); |
| | | // done(); |
| | | // }, |
| | | // (error) => { |
| | | // window.console.log(error); |
| | | // loading(); |
| | | // } |
| | | // ); |
| | | // } |
| | | // }, |
| | | // searchChange(params, done) { |
| | | // this.query = params; |
| | | // this.page.currentPage = 1; |
| | | // this.onLoad(this.page, params); |
| | | // done(); |
| | | // }, |
| | | // searchReset() { |
| | | // this.query = {}; |
| | | // this.onLoad(this.page); |
| | | // }, |
| | | // rowUpdate(row, index, done, loading) { |
| | | // console.log(row); |
| | | // update(row).then( |
| | | // () => { |
| | | // this.onLoad(this.page); |
| | | // this.$message({ |
| | | // type: "success", |
| | | // message: "操作成功!", |
| | | // }); |
| | | // done(); |
| | | // }, |
| | | // (error) => { |
| | | // window.console.log(error); |
| | | // loading(); |
| | | // } |
| | | // ); |
| | | // }, |
| | | // rowDel(row) { |
| | | // this.$confirm("确定将选择数据删除?", { |
| | | // confirmButtonText: "确定", |
| | | // cancelButtonText: "取消", |
| | | // type: "warning", |
| | | // }) |
| | | // .then(() => { |
| | | // return remove(row.id); |
| | | // }) |
| | | // .then(() => { |
| | | // this.onLoad(this.page); |
| | | // this.$message({ |
| | | // type: "success", |
| | | // message: "操作成功!", |
| | | // }); |
| | | // }); |
| | | // }, |
| | | // selectionChange(list) { |
| | | // this.selectionList = list; |
| | | // }, |
| | | // 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.crudrec.toggleSelection(); |
| | | // }); |
| | | // }, |
| | | // refreshChange() { |
| | | // this.onLoad(this.page, this.query); |
| | | // }, |
| | | // onLoad(page, params = {}) { |
| | | // this.loading = true; |
| | | // getdata( |
| | | // page.currentPage, |
| | | // page.pageSize, |
| | | // Object.assign(params, this.query) |
| | | // ).then((res) => { |
| | | // // console.log(res); |
| | | // const data = res.data.data; |
| | | // this.page.total = data.total; |
| | | // this.data = data.records; |
| | | // console.log(this.data); |
| | | // this.loading = false; |
| | | // }); |
| | | // }, |
| | | //派遣服务公司登记 |
| | | |
| | | //派遣记录 |
| | | sizeChange1(val) { |
| | | this.page1.currentPage = 1; |
| | | this.page1.pageSize = val; |
| | | // this.getData(); |
| | | this.onLoad1(this.page1, this.query1); |
| | | // this.$message.success("行数" + val); |
| | | }, |
| | | currentChange1(val) { |
| | | this.page1.currentPage = val; |
| | | // this.getData(); |
| | | this.onLoad1(this.page1, this.query1); |
| | | // this.$message.success("页码" + val); |
| | | }, |
| | | rowSave1(form, done, loading) { |
| | | // var that = this; |
| | | // var form = this.data1[0]; |
| | | // delete form.id; |
| | | // for (var k = 0; k < 13; k++) { |
| | | // form["deptId"] = form.tenantName; |
| | | // form["tenantName"] = form.$tenantName; |
| | | // form["dispatcherUnitId"] = this.id; |
| | | // console.log(form); |
| | | |
| | | adddata1(form).then( |
| | | (res) => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | // } |
| | | }, |
| | | searchChange1(params, done) { |
| | | this.query1 = params; |
| | | this.page1.currentPage = 1; |
| | | this.onLoad1(this.page1, params); |
| | | done(); |
| | | }, |
| | | searchReset1() { |
| | | this.query = {}; |
| | | this.onLoad1(this.page1); |
| | | }, |
| | | rowUpdate1(row, index, done, loading) { |
| | | // row["deptId"] = row.tenantName; |
| | | // row["tenantName"] = row.$tenantName; |
| | | // row["dispatcherUnitId"] = this.id; |
| | | // console.log(row, "row"); |
| | | update1(row).then( |
| | | () => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }, |
| | | rowDel1(row) { |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove1(row.id); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | }); |
| | | }, |
| | | selectionChange1(list) { |
| | | this.selectionList1 = list; |
| | | // console.log(this.selectionList1.length); |
| | | }, |
| | | handleDelete1() { |
| | | console.log(this.selectionList1); |
| | | if (this.selectionList1.length === 0) { |
| | | this.$message.warning("请选择至少一条数据"); |
| | | return; |
| | | } |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove1(this.ids1); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | this.$refs.crudrec1.toggleSelection(); |
| | | }); |
| | | }, |
| | | refreshChange1() { |
| | | // console.log(4534) |
| | | this.onLoad1(this.page1, this.query1); |
| | | }, |
| | | |
| | | getStartTime() { |
| | | if ( |
| | | this.$route.query.startTime != undefined && |
| | | this.$route.query.startTime != null && |
| | | this.$route.query.startTime != "" |
| | | ) { |
| | | return this.$route.query.startTime; |
| | | } |
| | | return ""; |
| | | }, |
| | | getEndTime() { |
| | | if ( |
| | | this.$route.query.endTime != undefined && |
| | | this.$route.query.endTime != null && |
| | | this.$route.query.endTime != "" |
| | | ) { |
| | | return this.$route.query.endTime; |
| | | } |
| | | return ""; |
| | | }, |
| | | // |
| | | onLoad1(page, params = {}) { |
| | | this.loading1 = true; |
| | | // params["cardid"] = this.cardid; |
| | | // params["name"] = this.name; |
| | | // params["dispatcherCompany"] = this.dispatcherCompany; |
| | | // params["dispatcherUnitId"] = this.id; |
| | | // console.log(params, "get"); |
| | | // console.log(page); |
| | | // var values; |
| | | // const { releaseTimeRange } = this.query1; |
| | | // if (releaseTimeRange) { |
| | | // values = { |
| | | // ...params, |
| | | // beginTime: releaseTimeRange[0], |
| | | // overTime: releaseTimeRange[1], |
| | | // ...this.query, |
| | | // }; |
| | | // values.releaseTimeRange = null; |
| | | // } else { |
| | | // values = { |
| | | // ...params, |
| | | // ...this.query, |
| | | // }; |
| | | // } |
| | | var cardid = this.userInfo.user_id; |
| | | console.log(this.userInfo, "111111111111"); |
| | | getPerformancePageInfo(cardid).then((res) => { |
| | | // // page.currentPage, |
| | | // // page.pageSize, |
| | | // // Object.assign(params, this.query) |
| | | // // values |
| | | console.log(res); |
| | | // const data = res.data.data; |
| | | // this.page1.total = data.total; |
| | | // this.data1 = data.records; |
| | | // console.log(this.data1, 1); |
| | | // this.loading1 = false; |
| | | }); |
| | | }, |
| | | //派遣记录 |
| | | // saveLock(name, val) { |
| | | // localStorage.setItem(name, val); |
| | | // }, |
| | | // readLock(name) { |
| | | // return localStorage.getItem(name); |
| | | // }, |
| | | }, |
| | | mounted() { |
| | | this.onLoad1(this.page1, this.query1); |
| | | //去掉缓存 |
| | | // this.typeTABS = this.optionTABS.column[0]; |
| | | // var row = {}; |
| | | // if (this.readLock("paqiandata") != null) { |
| | | // row = JSON.parse(this.readLock("paqiandata")); |
| | | // this.obj0.name = row.name; |
| | | // for (var k in row) { |
| | | // this.obj0[k] = row[k]; |
| | | // } |
| | | // console.log(this.obj0, 11111111); |
| | | // this.id = row.id; |
| | | // if (this.readLock("paqiandataS") != null) { |
| | | // var b = JSON.parse(this.readLock("paqiandataS")); |
| | | // var i = 0; |
| | | // for (var k in b) { |
| | | // if (b[k].name == row.name) { |
| | | // i = 1; |
| | | // } |
| | | // } |
| | | // if (i == 1) { |
| | | // // console.log("存在"); |
| | | // } else { |
| | | // // console.log("已删除"); |
| | | // this.obj0 = {}; |
| | | // this.obj0.name = row.name + " 该派遣单位已删除"; |
| | | // window.localStorage.removeItem("paqiandata"); |
| | | // this.id = 1244241; |
| | | // } |
| | | // } |
| | | // } else { |
| | | // // console.log("no"); |
| | | // this.obj0.name = " 未选择派遣单位"; |
| | | // } |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .dispatch { |
| | | width: 100%; |
| | | height: 100%; |
| | | // border: 1px solid #000; |
| | | box-sizing: border-box; |
| | | } |
| | | .el-collapse-item { |
| | | padding-top: 15px !important; |
| | | } |
| | | </style> |
| New file |
| | |
| | | /** |
| | | *liu |
| | | **/ |
| | | |
| | | <template> |
| | | <div class="dispatchChildoperable"> |
| | | <!-- <avue-tabs :option="optionTABS" @change="handleChangeTABS"></avue-tabs> --> |
| | | <!-- <span v-if="typeTABS.prop === 'tab1'"> --> |
| | | <!-- <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> --> |
| | | <!-- <avue-form ref="form" v-model="obj0" :option="option0"> --> |
| | | <!-- <template slot-scope="scope" slot="menuForm"> |
| | | <el-button @click="tip">自定义按钮</el-button> |
| | | </template> --> |
| | | <!-- </avue-form> |
| | | </span> |
| | | <span v-else-if="typeTABS.prop === 'tab2'"> --> |
| | | <avue-crud |
| | | :option="option1" |
| | | :data="data1" |
| | | :page.sync="page1" |
| | | ref="crudrec1" |
| | | :table-loading="loading1" |
| | | @row-save="rowSave1" |
| | | @search-change="searchChange1" |
| | | @search-reset="searchReset1" |
| | | @row-update="rowUpdate1" |
| | | @row-del="rowDel1" |
| | | @selection-change="selectionChange1" |
| | | @refresh-change="refreshChange1" |
| | | > |
| | | <!-- <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete1" |
| | | >删 除 |
| | | </el-button> |
| | | </template> --> |
| | | </avue-crud> |
| | | <!-- </span> --> |
| | | <!-- <span v-else-if="typeTABS.prop === 'tab3'">选项卡内容3</span> --> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | // import { column, column1 } from "./data"; |
| | | import { |
| | | securityBaseInfoColumn, |
| | | practitionersColumn, |
| | | trackRecordColumn, |
| | | } from "./data"; |
| | | import { getUserPractitionersInfo } from "@/api/system/user"; |
| | | import { add, update, page, remove } from "@/api/performance/performance"; |
| | | import { mapGetters } from "vuex"; |
| | | export default { |
| | | data() { |
| | | let baseUrl = "https://cli.avuejs.com/api/area"; |
| | | return { |
| | | // typeTABS: {}, //标签页 |
| | | // optionTABS: { |
| | | // column: [ |
| | | // { |
| | | // // icon: "el-icon-info", |
| | | // label: "派遣服务公司详情", |
| | | // prop: "tab1", |
| | | // }, |
| | | // { |
| | | // // icon: "el-icon-info", |
| | | // label: "派遣记录", |
| | | // prop: "tab2", |
| | | // }, |
| | | // // { |
| | | // // icon: "el-icon-info", |
| | | // // label: "选项卡3", |
| | | // // prop: "tab3", |
| | | // // }, |
| | | // ], |
| | | // }, |
| | | |
| | | // id: "", //记录归属id |
| | | // //基本信息 |
| | | // //保安单位信息表单 |
| | | // obj0: { |
| | | // // title: "我是头部标题", |
| | | // }, |
| | | // option0: { |
| | | // emptyBtn: false, |
| | | // submitBtn: false, |
| | | // gutter: 30, |
| | | // column: column, |
| | | // }, |
| | | // loading: true, //派遣服务公司登记 |
| | | // selectionList: [], |
| | | // page: { |
| | | // pageSize: 10, |
| | | // currentPage: 1, |
| | | // total: 0, |
| | | // }, |
| | | // query: {}, |
| | | // data: [], |
| | | // option: { |
| | | // card: true, |
| | | // searchSize: "mini", |
| | | // searchMenuSpan: 6, |
| | | // height: 547, |
| | | // menuWidth: 160, |
| | | // align: "center", |
| | | // selection: true, |
| | | // column: column, |
| | | // }, |
| | | deptCategory: "", |
| | | deptId: "", |
| | | |
| | | loading1: true, //派遣记录 |
| | | selectionList1: [], |
| | | page1: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 0, |
| | | }, |
| | | query1: {}, |
| | | data1: [], |
| | | option1: { |
| | | card: true, |
| | | menu: false, |
| | | addBtn: false, |
| | | height: "auto", |
| | | widtd: "auto", |
| | | calcHeight: 54, |
| | | border: false, |
| | | stripe: true, |
| | | tip: false, |
| | | index: true, |
| | | dialogClickModal: false, |
| | | headerAlign: "center", |
| | | align: "center", |
| | | column: practitionersColumn, |
| | | }, |
| | | }; |
| | | }, |
| | | computed: { |
| | | ...mapGetters(["userInfo"]), |
| | | // ids() { |
| | | // let ids = []; |
| | | // this.selectionList.forEach((ele) => { |
| | | // ids.push(ele.id); |
| | | // }); |
| | | // return ids.join(","); |
| | | // }, |
| | | ids1() { |
| | | let ids1 = []; |
| | | this.selectionList1.forEach((ele) => { |
| | | ids1.push(ele.id); |
| | | }); |
| | | return ids1.join(","); |
| | | }, |
| | | }, |
| | | methods: { |
| | | handleChangeTABS(column) { |
| | | this.typeTABS = column; |
| | | if (column.prop == "tab1") { |
| | | this.loading1 = false; |
| | | // this.onLoad(this.page); |
| | | } else if (column.prop == "tab2") { |
| | | // this.loading = false; |
| | | console.log(document.getElementsByClassName("el-card__body")[0]); |
| | | this.onLoad1(this.page1); //第二个表格不会自动执行 |
| | | } |
| | | // this.$message.success(JSON.stringify(column)); |
| | | }, |
| | | //派遣服务公司登记 |
| | | // sizeChange(val) { |
| | | // this.page1.currentPage = 1; |
| | | // this.page1.pageSize = val; |
| | | // // this.getData(); |
| | | // this.onLoad(this.page, this.query); |
| | | // // this.$message.success("行数" + val); |
| | | // }, |
| | | // currentChange(val) { |
| | | // this.page1.currentPage = val; |
| | | // // this.getData(); |
| | | // this.onLoad(this.page, this.query); |
| | | // // this.$message.success("页码" + val); |
| | | // }, |
| | | // rowSave(form, done, loading) { |
| | | // var that = this; |
| | | // var form = this.data[0]; |
| | | // delete form.id; |
| | | // for (var k = 0; k < 13; k++) { |
| | | // adddata(form).then( |
| | | // (res) => { |
| | | // this.onLoad(this.page); |
| | | // this.$message({ |
| | | // type: "success", |
| | | // message: "操作成功!", |
| | | // }); |
| | | // done(); |
| | | // }, |
| | | // (error) => { |
| | | // window.console.log(error); |
| | | // loading(); |
| | | // } |
| | | // ); |
| | | // } |
| | | // }, |
| | | // searchChange(params, done) { |
| | | // this.query = params; |
| | | // this.page.currentPage = 1; |
| | | // this.onLoad(this.page, params); |
| | | // done(); |
| | | // }, |
| | | // searchReset() { |
| | | // this.query = {}; |
| | | // this.onLoad(this.page); |
| | | // }, |
| | | // rowUpdate(row, index, done, loading) { |
| | | // console.log(row); |
| | | // update(row).then( |
| | | // () => { |
| | | // this.onLoad(this.page); |
| | | // this.$message({ |
| | | // type: "success", |
| | | // message: "操作成功!", |
| | | // }); |
| | | // done(); |
| | | // }, |
| | | // (error) => { |
| | | // window.console.log(error); |
| | | // loading(); |
| | | // } |
| | | // ); |
| | | // }, |
| | | // rowDel(row) { |
| | | // this.$confirm("确定将选择数据删除?", { |
| | | // confirmButtonText: "确定", |
| | | // cancelButtonText: "取消", |
| | | // type: "warning", |
| | | // }) |
| | | // .then(() => { |
| | | // return remove(row.id); |
| | | // }) |
| | | // .then(() => { |
| | | // this.onLoad(this.page); |
| | | // this.$message({ |
| | | // type: "success", |
| | | // message: "操作成功!", |
| | | // }); |
| | | // }); |
| | | // }, |
| | | // selectionChange(list) { |
| | | // this.selectionList = list; |
| | | // }, |
| | | // 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.crudrec.toggleSelection(); |
| | | // }); |
| | | // }, |
| | | // refreshChange() { |
| | | // this.onLoad(this.page, this.query); |
| | | // }, |
| | | // onLoad(page, params = {}) { |
| | | // this.loading = true; |
| | | // getdata( |
| | | // page.currentPage, |
| | | // page.pageSize, |
| | | // Object.assign(params, this.query) |
| | | // ).then((res) => { |
| | | // // console.log(res); |
| | | // const data = res.data.data; |
| | | // this.page.total = data.total; |
| | | // this.data = data.records; |
| | | // console.log(this.data); |
| | | // this.loading = false; |
| | | // }); |
| | | // }, |
| | | //派遣服务公司登记 |
| | | |
| | | //派遣记录 |
| | | sizeChange1(val) { |
| | | this.page1.currentPage = 1; |
| | | this.page1.pageSize = val; |
| | | // this.getData(); |
| | | this.onLoad1(this.page1, this.query1); |
| | | // this.$message.success("行数" + val); |
| | | }, |
| | | currentChange1(val) { |
| | | this.page1.currentPage = val; |
| | | // this.getData(); |
| | | this.onLoad1(this.page1, this.query1); |
| | | // this.$message.success("页码" + val); |
| | | }, |
| | | rowSave1(form, done, loading) { |
| | | // var that = this; |
| | | // var form = this.data1[0]; |
| | | // delete form.id; |
| | | // for (var k = 0; k < 13; k++) { |
| | | // form["deptId"] = form.tenantName; |
| | | // form["tenantName"] = form.$tenantName; |
| | | // form["dispatcherUnitId"] = this.id; |
| | | // console.log(form); |
| | | |
| | | adddata1(form).then( |
| | | (res) => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | // } |
| | | }, |
| | | searchChange1(params, done) { |
| | | this.query1 = params; |
| | | this.page1.currentPage = 1; |
| | | this.onLoad1(this.page1, params); |
| | | done(); |
| | | }, |
| | | searchReset1() { |
| | | this.query = {}; |
| | | this.onLoad1(this.page1); |
| | | }, |
| | | rowUpdate1(row, index, done, loading) { |
| | | // row["deptId"] = row.tenantName; |
| | | // row["tenantName"] = row.$tenantName; |
| | | // row["dispatcherUnitId"] = this.id; |
| | | // console.log(row, "row"); |
| | | update1(row).then( |
| | | () => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }, |
| | | rowDel1(row) { |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove1(row.id); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | }); |
| | | }, |
| | | selectionChange1(list) { |
| | | this.selectionList1 = list; |
| | | // console.log(this.selectionList1.length); |
| | | }, |
| | | handleDelete1() { |
| | | console.log(this.selectionList1); |
| | | if (this.selectionList1.length === 0) { |
| | | this.$message.warning("请选择至少一条数据"); |
| | | return; |
| | | } |
| | | this.$confirm("确定将选择数据删除?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | return remove1(this.ids1); |
| | | }) |
| | | .then(() => { |
| | | this.onLoad1(this.page1); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | this.$refs.crudrec1.toggleSelection(); |
| | | }); |
| | | }, |
| | | refreshChange1() { |
| | | // console.log(4534) |
| | | this.onLoad1(this.page1, this.query1); |
| | | }, |
| | | |
| | | getStartTime() { |
| | | if ( |
| | | this.$route.query.startTime != undefined && |
| | | this.$route.query.startTime != null && |
| | | this.$route.query.startTime != "" |
| | | ) { |
| | | return this.$route.query.startTime; |
| | | } |
| | | return ""; |
| | | }, |
| | | getEndTime() { |
| | | if ( |
| | | this.$route.query.endTime != undefined && |
| | | this.$route.query.endTime != null && |
| | | this.$route.query.endTime != "" |
| | | ) { |
| | | return this.$route.query.endTime; |
| | | } |
| | | return ""; |
| | | }, |
| | | // |
| | | onLoad1(page, params = {}) { |
| | | this.loading1 = true; |
| | | // params["cardid"] = this.cardid; |
| | | // params["name"] = this.name; |
| | | // params["dispatcherCompany"] = this.dispatcherCompany; |
| | | // params["dispatcherUnitId"] = this.id; |
| | | // console.log(params, "get"); |
| | | // console.log(page); |
| | | // var values; |
| | | // const { releaseTimeRange } = this.query1; |
| | | // if (releaseTimeRange) { |
| | | // values = { |
| | | // ...params, |
| | | // beginTime: releaseTimeRange[0], |
| | | // overTime: releaseTimeRange[1], |
| | | // ...this.query, |
| | | // }; |
| | | // values.releaseTimeRange = null; |
| | | // } else { |
| | | // values = { |
| | | // ...params, |
| | | // ...this.query, |
| | | // }; |
| | | // } |
| | | var cardid = this.userInfo.user_id; |
| | | console.log(this.userInfo, "111111111111"); |
| | | getUserPractitionersInfo(cardid).then((res) => { |
| | | // // page.currentPage, |
| | | // // page.pageSize, |
| | | // // Object.assign(params, this.query) |
| | | // // values |
| | | console.log(res); |
| | | // const data = res.data.data; |
| | | // this.page1.total = data.total; |
| | | // this.data1 = data.records; |
| | | // console.log(this.data1, 1); |
| | | // this.loading1 = false; |
| | | }); |
| | | }, |
| | | //派遣记录 |
| | | // saveLock(name, val) { |
| | | // localStorage.setItem(name, val); |
| | | // }, |
| | | // readLock(name) { |
| | | // return localStorage.getItem(name); |
| | | // }, |
| | | }, |
| | | mounted() { |
| | | this.onLoad1(this.page1, this.query1); |
| | | //去掉缓存 |
| | | // this.typeTABS = this.optionTABS.column[0]; |
| | | // var row = {}; |
| | | // if (this.readLock("paqiandata") != null) { |
| | | // row = JSON.parse(this.readLock("paqiandata")); |
| | | // this.obj0.name = row.name; |
| | | // for (var k in row) { |
| | | // this.obj0[k] = row[k]; |
| | | // } |
| | | // console.log(this.obj0, 11111111); |
| | | // this.id = row.id; |
| | | // if (this.readLock("paqiandataS") != null) { |
| | | // var b = JSON.parse(this.readLock("paqiandataS")); |
| | | // var i = 0; |
| | | // for (var k in b) { |
| | | // if (b[k].name == row.name) { |
| | | // i = 1; |
| | | // } |
| | | // } |
| | | // if (i == 1) { |
| | | // // console.log("存在"); |
| | | // } else { |
| | | // // console.log("已删除"); |
| | | // this.obj0 = {}; |
| | | // this.obj0.name = row.name + " 该派遣单位已删除"; |
| | | // window.localStorage.removeItem("paqiandata"); |
| | | // this.id = 1244241; |
| | | // } |
| | | // } |
| | | // } else { |
| | | // // console.log("no"); |
| | | // this.obj0.name = " 未选择派遣单位"; |
| | | // } |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .dispatch { |
| | | width: 100%; |
| | | height: 100%; |
| | | // border: 1px solid #000; |
| | | box-sizing: border-box; |
| | | } |
| | | .el-collapse-item { |
| | | padding-top: 15px !important; |
| | | } |
| | | </style> |
| | |
| | | label: "福利", |
| | | prop: "welfare", |
| | | search: true, |
| | | searchSpan: 5, |
| | | searchLabelWidth: 50, |
| | | searchSpan: 4, |
| | | overHidden: true |
| | | }, |
| | | { |
| | |
| | | <template> |
| | | <div class="recruitmentManagement"> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </div> |
| | | <basic-container> |
| | | <div class="recruitmentManagement"> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </div> |
| | | </basic-container> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | viewBtn: true, |
| | | searchSize: "mini", |
| | | searchMenuSpan: 6, |
| | | height: 693, |
| | | height: 583, |
| | | menuWidth: 210, |
| | | align: "center", |
| | | selection: true, |
| | |
| | | // editDisplay: true, |
| | | // viewDisplay: true, |
| | | overHidden: true, |
| | | // searchSpan: 5, |
| | | // searchSpan: 4, |
| | | dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697", |
| | | props: { |
| | | label: "title", |
| | |
| | | <template> |
| | | <div class="equipments"> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </div> |
| | | <basic-container> |
| | | <div class="equipments"> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </div> |
| | | </basic-container> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | index: true, |
| | | searchSize: "mini", |
| | | searchMenuSpan: 6, |
| | | height: 693, |
| | | height: 583, |
| | | menuWidth: 160, |
| | | align: "center", |
| | | selection: true, |
| | |
| | | label: "名称", |
| | | prop: "name", |
| | | search: true, |
| | | rules: [{ |
| | | searchSpan: 4, |
| | | searchLabelWidth: 50, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入名称", |
| | | trigger: "blur" |
| | |
| | | { |
| | | label: "编号", |
| | | prop: "number", |
| | | rules: [{ |
| | | searchSpan: 4, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入编号", |
| | | trigger: "blur" |
| | |
| | | { |
| | | label: "规格", |
| | | prop: "specifications", |
| | | rules: [{ |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入规格", |
| | | trigger: "blur" |
| | |
| | | label: "型号", |
| | | prop: "mode", |
| | | width: 70, |
| | | rules: [{ |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入型号", |
| | | trigger: "blur" |
| | |
| | | // addDisplay: true, |
| | | // editDisplay: true, |
| | | // viewDisplay: true, |
| | | // searchSpan: 5, |
| | | // searchSpan: 4, |
| | | dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697", |
| | | props: { |
| | | label: "title", |
| | |
| | | prop: "brand", |
| | | // search: true, |
| | | width: 110, |
| | | searchSpan: 4, |
| | | overHidden: true, |
| | | search: true, |
| | | rules: [{ |
| | |
| | | <template> |
| | | <div class="equipments"> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </div> |
| | | <basic-container> |
| | | <div class="equipments"> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </div> |
| | | </basic-container> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | tip: false, |
| | | searchSize: "mini", |
| | | searchMenuSpan: 6, |
| | | height: 693, |
| | | height: 583, |
| | | index: true, |
| | | menuWidth: 160, |
| | | align: "center", |
| | |
| | | label: "公务用枪证编号", |
| | | prop: "gunCardNumber", |
| | | labelWidth: 160, |
| | | searchSpan: 4, |
| | | searchLabelWidth: 130, |
| | | search: true, |
| | | rules: [{ |
| | |
| | | searchLabelWidth: 110, |
| | | labelWidth: 160, |
| | | prop: "issueUnit", |
| | | searchSpan: 4, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入发证单位名称", |
| | |
| | | { |
| | | label: "枪型", |
| | | prop: "gunMode", |
| | | searchSpan: 4, |
| | | width: 70, |
| | | labelWidth: 160, |
| | | rules: [{ |
| | |
| | | // editDisplay: true, |
| | | // viewDisplay: true, |
| | | overHidden: true, |
| | | // searchSpan: 5, |
| | | // searchSpan: 4, |
| | | dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697", |
| | | props: { |
| | | label: "title", |
| | |
| | | <template> |
| | | <div class="equipments"> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </div> |
| | | <basic-container> |
| | | <div class="equipments"> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | </div> |
| | | </basic-container> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | tip: false, |
| | | searchSize: "mini", |
| | | searchMenuSpan: 6, |
| | | height: 693, |
| | | height: 583, |
| | | index: true, |
| | | menuWidth: 160, |
| | | align: "center", |
| | |
| | | formslot: true, |
| | | }] |
| | | |
| | | |
| | | //表现 |
| | | export var trackRecordColumn = [{ |
| | | label: "id", |
| | | prop: "id", |
| | |
| | | prop: "realName", |
| | | search: true, |
| | | searchSpan: 4, |
| | | searchLabelWidth: 50, |
| | | display: false |
| | | }, |
| | | { |
| | |
| | | value: "id", |
| | | }, |
| | | slot: true, |
| | | searchSpan: 6, |
| | | searchSpan: 4, |
| | | display: false, |
| | | search: true, |
| | | width: 260 |
| | |
| | | getPractitionersPageInfo() { |
| | | var that = this; |
| | | //获取用户从业信息 |
| | | console.log(this.cardid, "cid"); |
| | | getUserPractitionersInfo(this.cardid).then((res1) => { |
| | | that.data1 = res1.data.data; |
| | | }); |
| | |
| | | mounted() { |
| | | this.typeTABS = this.optionTABS.column[0]; |
| | | var data = JSON.parse(this.$route.query.row); |
| | | // console.log(data); |
| | | if (data) { |
| | | var row = data; |
| | | // var row = this.$route.query.row; |
| | |
| | | this.obj0[k] = row[k]; |
| | | } |
| | | this.obj0.title = ""; |
| | | this.cardid = row.cardid; |
| | | this.cardid = row.id; |
| | | this.name = row.name; |
| | | this.dispatcherCompany = row.dispatcherCompany; |
| | | this.id = row.id; |
| | |
| | | label: "企业名称", |
| | | prop: "enterprisename", |
| | | search: true, |
| | | searchSpan: 6, |
| | | searchSpan: 4, |
| | | labelWidth: 160, |
| | | // width: 130, |
| | | overHidden: true |
| | |
| | | prop: "representative", |
| | | width: 80, |
| | | search: true, |
| | | searchSpan: 6, |
| | | searchSpan: 4, |
| | | searchLabelWidth: 100 |
| | | }, |
| | | // { |
| | |
| | | // // addDisplay: true, |
| | | // // editDisplay: true, |
| | | // // viewDisplay: true, |
| | | // // searchSpan: 5, |
| | | // // searchSpan: 4, |
| | | // // dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationType", |
| | | // // props: { |
| | | // // label: "dictValue", |
| | |
| | | <template> |
| | | <div class="securityUnit"> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | @row-click="rowClick" |
| | | > |
| | | <template slot-scope="{ type, size, row }" slot="menu"> |
| | | <el-button |
| | | :size="size" |
| | | :type="type" |
| | | @click="handleUploadPage(row)" |
| | | icon="el-icon-circle-check" |
| | | >单位装备清单附件上传 |
| | | </el-button> |
| | | </template> |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-plus" |
| | | size="small" |
| | | plain |
| | | @click.stop="rowSave" |
| | | >新增</el-button |
| | | > |
| | | </template> |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | <div class="lod" v-show="forms != -1"> |
| | | <div class="lod-in"> |
| | | <!-- <el-col class="trees" v-if="forms == 0"> |
| | | <basic-container> |
| | | <div class="securityUnit"> |
| | | <avue-crud |
| | | :option="option" |
| | | :data="data" |
| | | :page.sync="page" |
| | | ref="crudrec" |
| | | @on-load="onLoad" |
| | | :table-loading="loading" |
| | | @row-save="rowSave" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | | @row-update="rowUpdate" |
| | | @row-del="rowDel" |
| | | @selection-change="selectionChange" |
| | | @refresh-change="refreshChange" |
| | | @row-click="rowClick" |
| | | > |
| | | <template slot-scope="{ type, size, row }" slot="menu"> |
| | | <el-button |
| | | :size="size" |
| | | :type="type" |
| | | @click="handleUploadPage(row)" |
| | | icon="el-icon-circle-check" |
| | | >单位装备清单附件上传 |
| | | </el-button> |
| | | </template> |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-plus" |
| | | size="small" |
| | | plain |
| | | @click.stop="rowSave" |
| | | >新增</el-button |
| | | > |
| | | </template> |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | | icon="el-icon-delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | </el-button> |
| | | </template> |
| | | </avue-crud> |
| | | <div class="lod" v-show="forms != -1"> |
| | | <div class="lod-in"> |
| | | <!-- <el-col class="trees" v-if="forms == 0"> |
| | | <div class="box"> |
| | | <el-scrollbar> |
| | | <basic-container> |
| | |
| | | </el-scrollbar> |
| | | </div> |
| | | </el-col> --> |
| | | <avue-form |
| | | ref="form" |
| | | v-model="obj0" |
| | | :option="option0" |
| | | v-if="forms == 0" |
| | | > |
| | | <template slot="menuForm"> |
| | | <el-button type="primary" @click="tip0">下一页</el-button> |
| | | <el-button type="info" @click="tipover">取消</el-button> |
| | | </template> |
| | | </avue-form> |
| | | <avue-form |
| | | ref="form1" |
| | | v-model="obj1" |
| | | :option="option1" |
| | | v-else-if="forms == 1" |
| | | > |
| | | <template slot="menuForm"> |
| | | <el-button type="primary" @click="tip1up1">上一页</el-button> |
| | | <el-button type="primary" @click="tip1">下一页</el-button> |
| | | <el-button type="info" @click="tipover">取消</el-button> |
| | | </template> |
| | | </avue-form> |
| | | <avue-form |
| | | ref="form2" |
| | | v-model="obj2" |
| | | :option="option2" |
| | | v-else-if="forms == 2" |
| | | > |
| | | <template slot="menuForm"> |
| | | <el-button type="primary" @click="tip2up2">上一页</el-button> |
| | | <el-button type="primary" @click="tip2">提交</el-button> |
| | | <el-button type="info" @click="tipover">取消</el-button> |
| | | </template> |
| | | </avue-form> |
| | | <avue-form |
| | | ref="form" |
| | | v-model="obj0" |
| | | :option="option0" |
| | | v-if="forms == 0" |
| | | > |
| | | <template slot="menuForm"> |
| | | <el-button type="primary" @click="tip0">下一页</el-button> |
| | | <el-button type="info" @click="tipover">取消</el-button> |
| | | </template> |
| | | </avue-form> |
| | | <avue-form |
| | | ref="form1" |
| | | v-model="obj1" |
| | | :option="option1" |
| | | v-else-if="forms == 1" |
| | | > |
| | | <template slot="menuForm"> |
| | | <el-button type="primary" @click="tip1up1">上一页</el-button> |
| | | <el-button type="primary" @click="tip1">下一页</el-button> |
| | | <el-button type="info" @click="tipover">取消</el-button> |
| | | </template> |
| | | </avue-form> |
| | | <avue-form |
| | | ref="form2" |
| | | v-model="obj2" |
| | | :option="option2" |
| | | v-else-if="forms == 2" |
| | | > |
| | | <template slot="menuForm"> |
| | | <el-button type="primary" @click="tip2up2">上一页</el-button> |
| | | <el-button type="primary" @click="tip2">提交</el-button> |
| | | <el-button type="info" @click="tipover">取消</el-button> |
| | | </template> |
| | | </avue-form> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </basic-container> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | tip: false, |
| | | searchSize: "mini", |
| | | searchMenuSpan: 6, |
| | | height: 693, |
| | | height: 583, |
| | | menuWidth: 290, |
| | | align: "center", |
| | | selection: true, |
| | |
| | | export var infoColumn = [{ |
| | | label: "申请单位名称", |
| | | label: "申请单位名称", |
| | | |
| | | prop: "deptId", |
| | | type: "tree", |
| | | dicUrl: "/api/blade-system/dept/lazy-tree-type?deptCategory=3&parentId=1418458374477549569", |
| | | width: 180, |
| | | hide: true, |
| | | viewDisplay: false, |
| | | props: { |
| | | label: "title", |
| | | value: "id" |
| | | }, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择申请单位名称", |
| | | trigger: "blur" |
| | | }] |
| | | }, { |
| | | label: "申请单位名称", |
| | | prop: "deptName", |
| | | type: "select", |
| | | dicUrl: "/api/blade-system/dept/tree", |
| | | width: 180, |
| | | editDisplay: false, |
| | | addDisplay: false |
| | | prop: "deptId", |
| | | type: "tree", |
| | | dicUrl: "/api/blade-system/dept/lazy-tree-type?deptCategory=3&parentId=1418458374477549569", |
| | | width: 180, |
| | | hide: true, |
| | | viewDisplay: false, |
| | | props: { |
| | | label: "title", |
| | | value: "id" |
| | | }, |
| | | { |
| | | label: "考试名称", |
| | | searchSpan: 5, |
| | | width: 180, |
| | | prop: "trainExamName", |
| | | search: true, |
| | | }, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择申请单位名称", |
| | | trigger: "blur" |
| | | }] |
| | | }, { |
| | | label: "申请单位名称", |
| | | prop: "deptName", |
| | | type: "select", |
| | | dicUrl: "/api/blade-system/dept/tree", |
| | | width: 180, |
| | | editDisplay: false, |
| | | addDisplay: false |
| | | }, |
| | | { |
| | | label: "考试名称", |
| | | searchSpan: 4, |
| | | width: 180, |
| | | prop: "trainExamName", |
| | | search: true, |
| | | }, |
| | | |
| | | { |
| | | label: "开始时间", |
| | | prop: "startTime", |
| | | type: "datetime", |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | width: 180, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择开始时间", |
| | | trigger: "blur" |
| | | }] |
| | | { |
| | | label: "开始时间", |
| | | prop: "startTime", |
| | | type: "datetime", |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | width: 180, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择开始时间", |
| | | trigger: "blur" |
| | | }] |
| | | }, |
| | | { |
| | | label: "结束时间", |
| | | prop: "endTime", |
| | | type: "datetime", |
| | | width: 180, |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择结束时间", |
| | | trigger: "click" |
| | | }] |
| | | }, |
| | | { |
| | | label: "申请时间", |
| | | prop: "createTime", |
| | | type: "datetime", |
| | | width: 180, |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择结束时间", |
| | | trigger: "click" |
| | | }] |
| | | }, |
| | | { |
| | | label: "审核时间", |
| | | prop: "auditTime", |
| | | type: "datetime", |
| | | width: 180, |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择结束时间", |
| | | trigger: "click" |
| | | }] |
| | | }, |
| | | { |
| | | label: "审核状态", |
| | | search: true, |
| | | searchSpan: 4, |
| | | prop: "auditStatus", |
| | | slot: true, |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | type: "select", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择审核类型", |
| | | trigger: "blur" |
| | | }], |
| | | dicData: [{ |
| | | label: "审核通过", |
| | | value: 1 |
| | | }, |
| | | { |
| | | label: "结束时间", |
| | | prop: "endTime", |
| | | type: "datetime", |
| | | width: 180, |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择结束时间", |
| | | trigger: "click" |
| | | }] |
| | | label: "不通过", |
| | | value: 2 |
| | | }, |
| | | { |
| | | label: "申请时间", |
| | | prop: "createTime", |
| | | type: "datetime", |
| | | width: 180, |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择结束时间", |
| | | trigger: "click" |
| | | }] |
| | | }, |
| | | { |
| | | label: "审核时间", |
| | | prop: "auditTime", |
| | | type: "datetime", |
| | | width: 180, |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择结束时间", |
| | | trigger: "click" |
| | | }] |
| | | }, |
| | | { |
| | | label: "审核状态", |
| | | search: true, |
| | | searchSpan: 5, |
| | | prop: "auditStatus", |
| | | slot: true, |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | type: "select", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请选择审核类型", |
| | | trigger: "blur" |
| | | }], |
| | | dicData: [{ |
| | | label: "审核通过", |
| | | value: 1 |
| | | }, |
| | | { |
| | | label: "不通过", |
| | | value: 2 |
| | | }, |
| | | { |
| | | label: "待审核", |
| | | value: 3 |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | label: "审核明细", |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | prop: "auditDetail" |
| | | label: "待审核", |
| | | value: 3 |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | label: "审核明细", |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | prop: "auditDetail" |
| | | } |
| | | ] |
| | | |
| | | |
| | | export var auditColumn = [{ |
| | | 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: 1 |
| | | }, |
| | | { |
| | | label: "不通过", |
| | | value: 2 |
| | | } |
| | | ] |
| | | 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: 1 |
| | | }, |
| | | { |
| | | label: "审核明细", |
| | | span: 24, |
| | | type: "textarea", |
| | | prop: "auditDetail" |
| | | label: "不通过", |
| | | value: 2 |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | label: "审核明细", |
| | | span: 24, |
| | | type: "textarea", |
| | | prop: "auditDetail" |
| | | } |
| | | ] |
| | |
| | | display: false, |
| | | search: true, |
| | | searchSpan: 4, |
| | | searchLabelWidth: 95, |
| | | width: 120, |
| | | }, |
| | | { |
| | |
| | | var w = 160, |
| | | s = 12; |
| | | export var column = [{ |
| | | label: "单位名称", |
| | | prop: "deptId", |
| | | // width: 70, |
| | | // search: true, |
| | | // searchSpan: 4, |
| | | dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697", |
| | | cascaderItem: ["userId"], |
| | | props: { |
| | | label: "title", |
| | | value: "id" |
| | | }, |
| | | // search: true, |
| | | type: "select", |
| | | // hide: true, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入单位名称", |
| | | trigger: "blur" |
| | | }], |
| | | overHidden: true |
| | | }, { |
| | | label: "姓名", |
| | | prop: "userId", |
| | | type: "select", |
| | | hide: true, |
| | | dicUrl: "/api/blade-user/page-security-unit?deptId={{key}}", |
| | | props: { |
| | | label: "realName", |
| | | value: "id" |
| | | }, |
| | | searchSpan: 5, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入姓名", |
| | | trigger: "blur" |
| | | }], |
| | | }, { |
| | | label: "姓名", |
| | | prop: "realName", |
| | | search: true, |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | searchSpan: 5, |
| | | label: "单位名称", |
| | | prop: "deptId", |
| | | // width: 70, |
| | | // search: true, |
| | | // searchSpan: 4, |
| | | dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697", |
| | | cascaderItem: ["userId"], |
| | | props: { |
| | | label: "title", |
| | | value: "id" |
| | | }, |
| | | { |
| | | label: "身份证号", |
| | | prop: "idCardNo", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入身份证号", |
| | | trigger: "blur" |
| | | }], |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | width: 160 |
| | | // search: true, |
| | | type: "select", |
| | | // hide: true, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入单位名称", |
| | | trigger: "blur" |
| | | }], |
| | | overHidden: true |
| | | }, { |
| | | label: "姓名", |
| | | prop: "userId", |
| | | type: "select", |
| | | hide: true, |
| | | dicUrl: "/api/blade-user/page-security-unit?deptId={{key}}", |
| | | props: { |
| | | label: "realName", |
| | | value: "id" |
| | | }, |
| | | { |
| | | label: "电话", |
| | | prop: "phone", |
| | | hide: true, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入电话", |
| | | trigger: "blur" |
| | | }], |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | width: 110, |
| | | searchSpan: 4, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入姓名", |
| | | trigger: "blur" |
| | | }], |
| | | }, { |
| | | label: "姓名", |
| | | prop: "realName", |
| | | search: true, |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | searchSpan: 4, |
| | | }, |
| | | { |
| | | label: "身份证号", |
| | | prop: "idCardNo", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入身份证号", |
| | | trigger: "blur" |
| | | }], |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | width: 160 |
| | | }, |
| | | { |
| | | label: "电话", |
| | | prop: "phone", |
| | | hide: true, |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入电话", |
| | | trigger: "blur" |
| | | }], |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | width: 110, |
| | | }, |
| | | { |
| | | label: "培训公司名称", |
| | | prop: "trainingUnitId", |
| | | dicUrl: "/api/blade-system/dept/lazy-tree-type?parentId=1418458374477549569", |
| | | cascaderItem: ["trainExamId"], |
| | | props: { |
| | | label: "title", |
| | | value: "id" |
| | | }, |
| | | { |
| | | label: "培训公司名称", |
| | | prop: "trainingUnitId", |
| | | dicUrl: "/api/blade-system/dept/lazy-tree-type?parentId=1418458374477549569", |
| | | cascaderItem: ["trainExamId"], |
| | | props: { |
| | | label: "title", |
| | | value: "id" |
| | | }, |
| | | type: "select", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入培训公司名称", |
| | | trigger: "blur" |
| | | }], |
| | | searchSpan: 6, |
| | | searchLabelWidth: 110, |
| | | search: true, |
| | | type: "select", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入培训公司名称", |
| | | trigger: "blur" |
| | | }], |
| | | searchSpan: 5, |
| | | searchLabelWidth: 110, |
| | | search: true, |
| | | }, |
| | | { |
| | | label: "考试名称", |
| | | prop: "trainExamId", |
| | | dicUrl: "/api/trainExam/page-tree?deptId={{key}}", |
| | | props: { |
| | | label: "trainExamName", |
| | | value: "id" |
| | | }, |
| | | { |
| | | label: "考试名称", |
| | | prop: "trainExamId", |
| | | dicUrl: "/api/trainExam/page-tree?deptId={{key}}", |
| | | props: { |
| | | label: "trainExamName", |
| | | value: "id" |
| | | }, |
| | | type: "select", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入考试名称", |
| | | trigger: "blur" |
| | | }], |
| | | hide: true, |
| | | type: "select", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入考试名称", |
| | | trigger: "blur" |
| | | }], |
| | | hide: true, |
| | | }, |
| | | { |
| | | label: "考试名称", |
| | | prop: "trainExamName", |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | searchLabelWidth: 110, |
| | | }, |
| | | { |
| | | label: "报名时间", |
| | | prop: "trainingTime", |
| | | type: "date", |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入报名时间", |
| | | trigger: "blur" |
| | | }], |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | width: 160 |
| | | }, |
| | | { |
| | | label: "培训考试时间", |
| | | prop: "trainExamTime", |
| | | type: "date", |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入培训考试时间", |
| | | trigger: "blur" |
| | | }], |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | width: 160 |
| | | }, |
| | | { |
| | | label: "报名状态", |
| | | prop: "cancel", |
| | | // search: true, |
| | | dicData: DIC1, |
| | | props: { |
| | | label: "label", |
| | | value: "value" |
| | | }, |
| | | { |
| | | label: "考试名称", |
| | | prop: "trainExamName", |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | searchLabelWidth: 110, |
| | | }, |
| | | { |
| | | label: "报名时间", |
| | | prop: "trainingTime", |
| | | type: "date", |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入报名时间", |
| | | trigger: "blur" |
| | | }], |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | width: 160 |
| | | }, |
| | | { |
| | | label: "培训考试时间", |
| | | prop: "trainExamTime", |
| | | type: "date", |
| | | format: "yyyy-MM-dd HH:mm:ss", |
| | | valueFormat: "yyyy-MM-dd HH:mm:ss", |
| | | rules: [{ |
| | | required: true, |
| | | message: "请输入培训考试时间", |
| | | trigger: "blur" |
| | | }], |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | width: 160 |
| | | }, |
| | | { |
| | | label: "报名状态", |
| | | prop: "cancel", |
| | | // search: true, |
| | | dicData: DIC1, |
| | | props: { |
| | | label: "label", |
| | | value: "value" |
| | | }, |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | searchSpan: 5, |
| | | width: 70, |
| | | }, { |
| | | label: "确认截止时间", |
| | | prop: "remainingTime", |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | width: 160 |
| | | } |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | searchSpan: 4, |
| | | width: 70, |
| | | }, { |
| | | label: "确认截止时间", |
| | | prop: "remainingTime", |
| | | editDisplay: false, |
| | | addDisplay: false, |
| | | width: 160 |
| | | } |
| | | ] |
| | |
| | | > |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | style="display:none" |
| | | style="display: none" |
| | | type="danger" |
| | | size="small" |
| | | plain |
| | |
| | | @click="revoke(row)" |
| | | :size="size" |
| | | :type="type" |
| | | :disabled="row.cancel==2" |
| | | :disabled="row.cancel == 2" |
| | | >取消报名</el-button |
| | | > |
| | | <el-button |
| | |
| | | @click="affirmApply(row)" |
| | | :size="size" |
| | | :type="type" |
| | | :disabled="row.cancel==2" |
| | | >确认报名</el-button> |
| | | :disabled="row.cancel == 2" |
| | | >确认报名</el-button |
| | | > |
| | | </template> |
| | | </avue-crud> |
| | | |
| | | </basic-container> |
| | | </template> |
| | | |
| | |
| | | tip: false, |
| | | searchSize: "mini", |
| | | searchMenuSpan: 6, |
| | | height: 693, |
| | | height: 583, |
| | | index: true, |
| | | labelWidth: "120", |
| | | menuWidth: 230, |
| | |
| | | adddata(form).then( |
| | | (res) => { |
| | | this.onLoad(this.page); |
| | | if(res.data.data==201){ |
| | | if (res.data.data == 201) { |
| | | this.$message({ |
| | | type: "warning", |
| | | message:"已报名,不能重复报名", |
| | | message: "已报名,不能重复报名", |
| | | }); |
| | | }else if(res.data.data==201){ |
| | | } else if (res.data.data == 201) { |
| | | this.$message({ |
| | | type: "warning", |
| | | message:"报名失败", |
| | | message: "报名失败", |
| | | }); |
| | | }else{ |
| | | } else { |
| | | this.$message({ |
| | | type: "success", |
| | | message:"报名成功", |
| | | message: "报名成功", |
| | | }); |
| | | } |
| | | done(); |
| | |
| | | ); |
| | | }, |
| | | //确认报名 |
| | | affirmApply(row,done,loading){ |
| | | affirmApply(row, done, loading) { |
| | | this.$confirm("确认报名?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | row.cancel = 3; |
| | | update(row).then( |
| | | () => { |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "确认报名成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }) |
| | | }).then(() => { |
| | | row.cancel = 3; |
| | | update(row).then( |
| | | () => { |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "确认报名成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }); |
| | | }, |
| | | revoke(row,done,loading) { |
| | | revoke(row, done, loading) { |
| | | this.$confirm("确定取消报名?", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | row.cancel = 2; |
| | | update(row).then( |
| | | () => { |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "取消报名成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }) |
| | | |
| | | }).then(() => { |
| | | row.cancel = 2; |
| | | update(row).then( |
| | | () => { |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "取消报名成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | | window.console.log(error); |
| | | loading(); |
| | | } |
| | | ); |
| | | }); |
| | | }, |
| | | rowDel(row) { |
| | | this.$confirm("确定将选择数据删除?", { |