From c23ccd642095492a2e740be527bbb84571d1d626 Mon Sep 17 00:00:00 2001 From: paidaxing444 <12qwaszx> Date: Mon, 27 Jul 2020 22:11:32 +0800 Subject: [PATCH] =?UTF-8?q?20200727-=E5=85=A5=E5=9B=AD=E7=94=B3=E8=AF=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-ui/package.json | 2 +- ruoyi-ui/src/api/benyi/experience.js | 11 +- ruoyi-ui/src/permission.js | 46 ++- ruoyi-ui/src/views/benyi/experience/apply.vue | 285 +++++++------- .../src/views/benyi/experience/choose.vue | 44 ++- ruoyi-ui/src/views/benyi/experience/index.vue | 349 ++++++++++++------ .../src/views/benyi/experience/result.vue | 187 ++++++++++ .../framework/config/SecurityConfig.java | 25 +- .../controller/ByExperienceController.java | 28 +- .../mybatis/benyi/ByExperienceMapper.xml | 171 ++++----- 10 files changed, 780 insertions(+), 368 deletions(-) diff --git a/ruoyi-ui/package.json b/ruoyi-ui/package.json index d674c4ea0..2afde67cd 100644 --- a/ruoyi-ui/package.json +++ b/ruoyi-ui/package.json @@ -49,7 +49,7 @@ "@fullcalendar/vue": "^4.4.0", "@riophae/vue-treeselect": "0.4.0", "axios": "0.18.1", - "clipboard": "2.0.4", + "clipboard": "^2.0.4", "driver.js": "^0.9.8", "echarts": "4.2.1", "element-ui": "2.13.0", diff --git a/ruoyi-ui/src/api/benyi/experience.js b/ruoyi-ui/src/api/benyi/experience.js index e667a74b3..4bac0c8a4 100644 --- a/ruoyi-ui/src/api/benyi/experience.js +++ b/ruoyi-ui/src/api/benyi/experience.js @@ -17,10 +17,19 @@ export function getExperience(id) { }) } +// 查询入班体验申请详细 +export function getExperience_query(query) { + return request({ + url: '/benyi/experience/getInfo', + method: 'get', + params: query + }) +} + // 新增入班体验申请 export function addExperience(data) { return request({ - url: '/benyi/experience', + url: '/benyi/experience/add', method: 'post', data: data }) diff --git a/ruoyi-ui/src/permission.js b/ruoyi-ui/src/permission.js index 813e971d3..b901d8921 100644 --- a/ruoyi-ui/src/permission.js +++ b/ruoyi-ui/src/permission.js @@ -1,11 +1,17 @@ import router from './router' import store from './store' -import { Message } from 'element-ui' +import { + Message +} from 'element-ui' import NProgress from 'nprogress' import 'nprogress/nprogress.css' -import { getToken } from '@/utils/auth' +import { + getToken +} from '@/utils/auth' -NProgress.configure({ showSpinner: false }) +NProgress.configure({ + showSpinner: false +}) //const whiteList = ['/login', '/auth-redirect', '/bind', '/register'] const whiteList = ['/login'] @@ -15,26 +21,35 @@ router.beforeEach((to, from, next) => { if (getToken()) { /* has token*/ if (to.path === '/login') { - next({ path: '/' }) + next({ + path: '/' + }) NProgress.done() } else { if (store.getters.roles.length === 0) { // 判断当前用户是否已拉取完user_info信息 store.dispatch('GetInfo').then(res => { - // 拉取user_info - const roles = res.roles - store.dispatch('GenerateRoutes', { roles }).then(accessRoutes => { - // 测试 默认静态页面 - // store.dispatch('permission/generateRoutes', { roles }).then(accessRoutes => { - // 根据roles权限生成可访问的路由表 - router.addRoutes(accessRoutes) // 动态添加可访问路由表 - next({ ...to, replace: true }) // hack方法 确保addRoutes已完成 + // 拉取user_info + const roles = res.roles + store.dispatch('GenerateRoutes', { + roles + }).then(accessRoutes => { + // 测试 默认静态页面 + // store.dispatch('permission/generateRoutes', { roles }).then(accessRoutes => { + // 根据roles权限生成可访问的路由表 + router.addRoutes(accessRoutes) // 动态添加可访问路由表 + next({ + ...to, + replace: true + }) // hack方法 确保addRoutes已完成 + }) }) - }) .catch(err => { store.dispatch('FedLogOut').then(() => { Message.error(err) - next({ path: '/' }) + next({ + path: '/' + }) }) }) } else { @@ -49,8 +64,9 @@ router.beforeEach((to, from, next) => { } } } else { + //console.log(whiteList.indexOf(to.path)); // 没有token - if (whiteList.indexOf(to.path) !== -1) { + if (whiteList.indexOf(to.path) !== -1 ||to.path.indexOf("/experience/choose/") != -1||to.path.indexOf("/experience/apply/") != -1||to.path.indexOf("/experience/result/") != -1) { // 在免登录白名单,直接进入 next() } else { diff --git a/ruoyi-ui/src/views/benyi/experience/apply.vue b/ruoyi-ui/src/views/benyi/experience/apply.vue index 92c66eb3d..d23781f98 100644 --- a/ruoyi-ui/src/views/benyi/experience/apply.vue +++ b/ruoyi-ui/src/views/benyi/experience/apply.vue @@ -1,97 +1,71 @@ @@ -99,18 +73,49 @@ import { addExperience } from "@/api/benyi/experience"; export default { - name: "Experience", + name: "Apply", data() { return { - // 遮罩层 - loading: true, + activeNames: ["1"], + yysj: "", + sworxw: "", // 表单参数 form: {}, // 表单校验 - rules: {}, + rules: { + jzxm: [ + { required: true, message: "家长姓名不能为空", trigger: "blur" }, + ], + yexm: [ + { required: true, message: "幼儿姓名不能为空", trigger: "blur" }, + ], + csrq: [ + { required: true, message: "幼儿出生日期不能为空", trigger: "blur" }, + ], + lxfs: [ + { + required: true, + pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, + message: "请输入正确的手机号码", + trigger: "blur", + }, + ], + nrysj: [ + { required: true, message: "拟入园时间不能为空", trigger: "blur" }, + ], + sqtysj: [ + { required: true, message: "申请体验时间不能为空", trigger: "blur" }, + ], + swxw: [ + { required: true, message: "下午或下午不能为空", trigger: "blur" }, + ], + }, }; }, - created() {}, + created() { + const sid = this.$route.params && this.$route.params.id; + this.form.schoolid = sid; + }, methods: { // 表单重置 reset() { @@ -124,42 +129,74 @@ export default { sqtysj: undefined, swxw: undefined, schoolid: undefined, - sfhf: undefined, - hfrn: undefined, - hfuserid: undefined, - fhsj: undefined, - yzzs: undefined, - tyjg: undefined, - rysj: undefined, createTime: undefined, }; this.resetForm("form"); }, - + // 返回按钮 + cancel() { + this.$router.go(-1); + }, /** 提交按钮 */ submitForm: function () { this.$refs["form"].validate((valid) => { if (valid) { - if (this.form.id != undefined) { - updateExperience(this.form).then((response) => { - if (response.code === 200) { - this.msgSuccess("修改成功"); - this.open = false; - this.getList(); - } - }); - } else { - addExperience(this.form).then((response) => { - if (response.code === 200) { - this.msgSuccess("新增成功"); - this.open = false; - this.getList(); - } - }); - } + addExperience(this.form).then((response) => { + if (response.code === 200) { + this.msgSuccess("您的申请提交成功,等待园长回复"); + this.reset(); + } + }); } }); }, }, }; - \ No newline at end of file + + + \ No newline at end of file diff --git a/ruoyi-ui/src/views/benyi/experience/choose.vue b/ruoyi-ui/src/views/benyi/experience/choose.vue index fcc4cdd96..ac3cdb503 100644 --- a/ruoyi-ui/src/views/benyi/experience/choose.vue +++ b/ruoyi-ui/src/views/benyi/experience/choose.vue @@ -1,7 +1,7 @@ \ No newline at end of file + + + \ No newline at end of file diff --git a/ruoyi-ui/src/views/benyi/experience/index.vue b/ruoyi-ui/src/views/benyi/experience/index.vue index ad21f9572..bfe9652c1 100644 --- a/ruoyi-ui/src/views/benyi/experience/index.vue +++ b/ruoyi-ui/src/views/benyi/experience/index.vue @@ -40,9 +40,9 @@ type="primary" icon="el-icon-plus" size="mini" - @click="handleAdd" + @click="copy($event,inviteCode)" v-hasPermi="['benyi:experience:add']" - >新增 + >一键复制 - - - - - - - - - - - - - - - - + +