From d186b4d37394e4816e0f271fcced4d06b3069454 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期一, 16 十二月 2024 15:31:28 +0800 Subject: [PATCH] 路由query添加当前页面id&&人员组织管理模块下所有页面按钮权限控制 --- Source/plt-web/plt-web-ui/src/store/modules/user.js | 42 ++++++++++++++++++++++++++---------------- 1 files changed, 26 insertions(+), 16 deletions(-) diff --git a/Source/plt-web/plt-web-ui/src/store/modules/user.js b/Source/plt-web/plt-web-ui/src/store/modules/user.js index cc12802..8e1fbc3 100644 --- a/Source/plt-web/plt-web-ui/src/store/modules/user.js +++ b/Source/plt-web/plt-web-ui/src/store/modules/user.js @@ -2,11 +2,12 @@ import {Message} from 'element-ui' import {setStore, getStore} from '@/util/store' import {isURL, validatenull} from '@/util/validate' -import {deepClone,queryStringToObject} from '@/util/util' +import {deepClone, queryStringToObject} from '@/util/util' import website from '@/config/website' import {loginByUsername, loginBySocial, loginBySso, getUserInfo, logout, refreshToken, getButtons} from '@/api/user' import {getTopMenu, getRoutes} from '@/api/system/menu' import md5 from 'js-md5' +import func from "@/util/func"; function addPath(ele, first) { @@ -16,7 +17,7 @@ label: propsConfig.label || 'name', path: propsConfig.path || 'path', icon: propsConfig.icon || 'icon', - children: propsConfig.children || 'children' + children: propsConfig.children || 'children', } const icon = ele[propsDefault.icon]; ele[propsDefault.icon] = validatenull(icon) ? menu.iconDefault : icon; @@ -37,7 +38,7 @@ item.pathValue = item.path; item.path = '/' + item.code; item.query = {}; // 鍒濆鍖� item.query - if(item.pathValue.indexOf('?')!=-1) { + if (item.pathValue.indexOf('?') != -1) { item.query = queryStringToObject(item.pathValue) } if (item.children && item.children.length > 0) { @@ -62,9 +63,10 @@ //鏍规嵁鐢ㄦ埛鍚嶇櫥褰� LoginByUsername({commit}, userInfo) { return new Promise((resolve, reject) => { - loginByUsername(userInfo.deptId, userInfo.roleId, userInfo.username, userInfo.password, userInfo.type, userInfo.key,).then(res => { + let passwordDes = func.encryptData(userInfo.password, 'daliantan0v0vcip') + loginByUsername(userInfo.deptId, userInfo.roleId, userInfo.username, passwordDes, userInfo.type, userInfo.key,).then(res => { const data = res.data; - if (data.code === 200) { + if (data.obj.failCode === 'loginSuccess' || data.obj.failCode === 'passwordRemainDay') { commit('SET_TOKEN', data.obj.tokenVO.accessToken); commit('SET_REFRESH_TOKEN', data.obj.tokenVO.accessToken); commit('DEL_ALL_TAG'); @@ -76,15 +78,10 @@ }).catch(err => { console.log(err) }) - - } else { - Message({ - message: data.msg, - type: 'error' - }) } - resolve(); + resolve(data); }).catch(error => { + // console.log(error) reject(error); }) }) @@ -213,7 +210,7 @@ return new Promise((resolve, reject) => { getUserInfo().then((res) => { const data = res.data.data; - console.log('user',res) + console.log('user', res) // commit('SET_USER_INFO', data.roles); resolve(data); }).catch(err => { @@ -235,7 +232,7 @@ commit('SET_MENU_ALL', menu) commit('SET_MENU', menu) - //dispatch('GetButtons');s + dispatch('GetButtons'); resolve(menu) }) }) @@ -247,6 +244,7 @@ return new Promise((resolve) => { getButtons().then(res => { const data = res.data.data; + console.log('getButton',data) commit('SET_PERMISSION', data); resolve(); }) @@ -299,8 +297,20 @@ SET_ROLES: (state, roles) => { state.roles = roles; }, - + SET_PERMISSION: (state, permission) => { + let permission_new = {}; + permission.forEach(item => { + let children = {}; + if (item.children && item.children.length > 0) { + item.children.forEach(child => { + Vue.set(children, child.code, true); + }); + } + Vue.set(permission_new, item.id, children); + }); + state.permission = permission_new; + setStore({name: "permission", content: permission_new}); + }, } - } export default user -- Gitblit v1.9.3