From 38afa63e3d064f1b86fee251951a04e54e769a93 Mon Sep 17 00:00:00 2001 From: xiaomlove <353856593@qq.com> Date: Mon, 19 Apr 2021 20:13:21 +0800 Subject: [PATCH] exam --- admin/src/App.vue | 1 + admin/src/main.js | 90 ++++++- admin/src/router/index.js | 18 +- admin/src/utils/api.js | 19 ++ admin/src/utils/index.js | 4 +- admin/src/views/exam/form.vue | 151 +++++++++++ admin/src/views/exam/index.vue | 245 ++++++++++++++++++ admin/src/views/user/detail.vue | 171 ++++++++++++ admin/src/views/user/index.vue | 11 +- app/Http/Controllers/AgentAllowController.php | 8 +- app/Http/Controllers/Controller.php | 43 +++ app/Http/Controllers/ExamController.php | 98 +++++++ app/Http/Controllers/UserController.php | 24 +- app/Http/Resources/ExamResource.php | 28 ++ app/Models/Exam.php | 13 + app/Models/ExamProgress.php | 13 + app/Models/User.php | 47 +++- app/Repositories/ExamRepository.php | 31 +++ app/Repositories/UserRepository.php | 9 + ...12_100000_create_password_resets_table.php | 32 --- ... 2021_04_19_061650_create_exams_table.php} | 16 +- ...4_19_062743_create_exam_progress_table.php | 36 +++ routes/api.php | 3 + 23 files changed, 1051 insertions(+), 60 deletions(-) create mode 100644 admin/src/views/exam/form.vue create mode 100644 admin/src/views/exam/index.vue create mode 100644 admin/src/views/user/detail.vue create mode 100644 app/Http/Controllers/ExamController.php create mode 100644 app/Http/Resources/ExamResource.php create mode 100644 app/Models/Exam.php create mode 100644 app/Models/ExamProgress.php create mode 100644 app/Repositories/ExamRepository.php delete mode 100644 database/migrations/2014_10_12_100000_create_password_resets_table.php rename database/migrations/{2014_10_12_000000_create_users_table.php => 2021_04_19_061650_create_exams_table.php} (53%) create mode 100644 database/migrations/2021_04_19_062743_create_exam_progress_table.php diff --git a/admin/src/App.vue b/admin/src/App.vue index 17c20261..607114ae 100644 --- a/admin/src/App.vue +++ b/admin/src/App.vue @@ -34,6 +34,7 @@ 轮播图配置 允许客户端 用户 + 考核 热销商品配置 新品上线配置 为你推荐配置 diff --git a/admin/src/main.js b/admin/src/main.js index c59aae01..ffda6dee 100644 --- a/admin/src/main.js +++ b/admin/src/main.js @@ -1,14 +1,98 @@ import { createApp } from 'vue' -import { ElButton, ElContainer, ElAside, ElHeader, ElMain, ElFooter, ElMenu, ElSubmenu, ElMenuItemGroup, ElMenuItem, ElForm, ElFormItem, ElInput, ElPopover, ElTag, ElCard, ElTable, ElTableColumn, ElPagination, ElDialog, ElPopconfirm, ElUpload, ElLoading, ElSelect, ElOption, ElRadioGroup, ElRadio, ElCascader, ElCheckbox, ElInputNumber } from 'element-plus' +import { + ElAlert, + ElAside, + ElAutocomplete, + ElAvatar, + ElBacktop, + ElBadge, + ElBreadcrumb, + ElBreadcrumbItem, + ElButton, + ElButtonGroup, + ElCalendar, + ElCard, + ElCarousel, + ElCarouselItem, + ElCascader, + ElCascaderPanel, + ElCheckbox, + ElCheckboxButton, + ElCheckboxGroup, + ElCol, + ElCollapse, + ElCollapseItem, + ElCollapseTransition, + ElColorPicker, + ElContainer, + ElDatePicker, + ElDialog, + ElDivider, + ElDrawer, + ElDropdown, + ElDropdownItem, + ElDropdownMenu, + ElFooter, + ElForm, + ElFormItem, + ElHeader, + ElIcon, + ElImage, + ElInput, + ElInputNumber, + ElLink, + ElMain, + ElMenu, + ElMenuItem, + ElMenuItemGroup, + ElOption, + ElOptionGroup, + ElPageHeader, + ElPagination, + ElPopconfirm, + ElPopover, + ElPopper, + ElProgress, + ElRadio, + ElRadioButton, + ElRadioGroup, + ElRate, + ElRow, + ElScrollbar, + ElSelect, + ElSlider, + ElStep, + ElSteps, + ElSubmenu, + ElSwitch, + ElTabPane, + ElTable, + ElTableColumn, + ElTabs, + ElTag, + ElTimePicker, + ElTimeSelect, + ElTimeline, + ElTimelineItem, + ElTooltip, + ElTransfer, + ElTree, + ElUpload, + ElInfiniteScroll, + ElLoading, + ElMessage, + ElMessageBox, + ElNotification +} from 'element-plus' import App from './App.vue' import router from './router/index' import 'dayjs/locale/zh-cn' import locale from 'element-plus/lib/locale/lang/zh-cn' -// import 'element-plus/lib/theme-chalk/index.css' +import 'element-plus/lib/theme-chalk/index.css' // 修改后的主题样式必须放在最后面 -import '../theme/index.css' +// import '../theme/index.css' const orderStatus = { 0: '待支付', diff --git a/admin/src/router/index.js b/admin/src/router/index.js index b624b697..97ec9df9 100644 --- a/admin/src/router/index.js +++ b/admin/src/router/index.js @@ -108,8 +108,22 @@ const router = createRouter({ path: '/user-form', name: 'user-form', component: () => import(/* webpackChunkName: "account" */ '../views/user/form.vue'), - } - + }, + { + path: '/user-detail', + name: 'user-detail', + component: () => import(/* webpackChunkName: "account" */ '../views/user/detail.vue'), + }, + { + path: '/exam', + name: 'exam', + component: () => import(/* webpackChunkName: "account" */ '../views/exam/index.vue'), + }, + { + path: '/exam-form', + name: 'exam-form', + component: () => import(/* webpackChunkName: "account" */ '../views/exam/form.vue'), + }, ] }) diff --git a/admin/src/utils/api.js b/admin/src/utils/api.js index 6b3a45a1..9b6874ef 100644 --- a/admin/src/utils/api.js +++ b/admin/src/utils/api.js @@ -26,6 +26,25 @@ const api = { storeUser: (params = {}) => { return axios.post(baseUrl + 'user', params); }, + + listExam: (params = {}) => { + return axios.get(baseUrl + 'exam', {params: params}); + }, + storeExam: (params = {}) => { + return axios.post(baseUrl + 'exam', params); + }, + updateExam: (id, params = {}) => { + return axios.put(baseUrl + 'exam/' + id, params); + }, + getExam: (id) => { + return axios.get(baseUrl + 'exam/' + id); + }, + deleteExam: (id) => { + return axios.delete(baseUrl + 'exam/' + id); + }, + listClass: (params = {}) => { + return axios.get(baseUrl + 'class', {params: params}); + }, } export default api diff --git a/admin/src/utils/index.js b/admin/src/utils/index.js index 339e2318..3c61e428 100644 --- a/admin/src/utils/index.js +++ b/admin/src/utils/index.js @@ -46,5 +46,7 @@ export const pathMap = { "agent-allow": "允许客户端", "agent-allow-form": "允许客户端表单", "user": "用户", - "user-form": "用户表单" + "user-form": "用户表单", + "exam": "考核", + "exam-form": "考核表单", } diff --git a/admin/src/views/exam/form.vue b/admin/src/views/exam/form.vue new file mode 100644 index 00000000..ea114f82 --- /dev/null +++ b/admin/src/views/exam/form.vue @@ -0,0 +1,151 @@ + + + + + diff --git a/admin/src/views/exam/index.vue b/admin/src/views/exam/index.vue new file mode 100644 index 00000000..493eb4df --- /dev/null +++ b/admin/src/views/exam/index.vue @@ -0,0 +1,245 @@ + + + + + diff --git a/admin/src/views/user/detail.vue b/admin/src/views/user/detail.vue new file mode 100644 index 00000000..b7fa3e06 --- /dev/null +++ b/admin/src/views/user/detail.vue @@ -0,0 +1,171 @@ + + + + + diff --git a/admin/src/views/user/index.vue b/admin/src/views/user/index.vue index e466eb80..55e3f76d 100644 --- a/admin/src/views/user/index.vue +++ b/admin/src/views/user/index.vue @@ -84,7 +84,7 @@ width="100" >