| | |
| | | import { login, logout, getInfo } from '@/api/login' |
| | | import { getToken, setToken, removeToken } from '@/utils/auth' |
| | | import { isHttp, isEmpty } from "@/utils/validate" |
| | | import defAva from '@/assets/images/profile.jpg' |
| | | |
| | | const user = { |
| | | state: { |
| | |
| | | id: '', |
| | | name: '', |
| | | avatar: '', |
| | | deptId: null, |
| | | childDeptIds: [], |
| | | deptName: '', |
| | | roles: [], |
| | | roleIds: [], |
| | | permissions: [] |
| | | }, |
| | | |
| | |
| | | }, |
| | | SET_ROLES: (state, roles) => { |
| | | state.roles = roles |
| | | }, |
| | | SET_ROLE_IDS: (state, roleIds) => { |
| | | state.roleIds = roleIds |
| | | }, |
| | | SET_DEPT: (state, deptId) => { |
| | | state.deptId = deptId |
| | | }, |
| | | SET_CHILD_DEPT: (state, deptIds) => { |
| | | state.childDeptIds = deptIds |
| | | }, |
| | | SET_DEPT_NAME: (state, deptName) => { |
| | | state.deptName = deptName |
| | | }, |
| | | SET_PERMISSIONS: (state, permissions) => { |
| | | state.permissions = permissions |
| | |
| | | return new Promise((resolve, reject) => { |
| | | getInfo().then(res => { |
| | | const user = res.user |
| | | let avatar = user.avatar || "" |
| | | if (!isHttp(avatar)) { |
| | | avatar = (isEmpty(avatar)) ? defAva : process.env.VUE_APP_BASE_API + avatar |
| | | } |
| | | const avatar = (user.avatar == "" || user.avatar == null) ? require("@/assets/images/profile.jpg") : process.env.VUE_APP_BASE_API + user.avatar; |
| | | if (res.roles && res.roles.length > 0) { // 验证返回的roles是否是一个非空数组 |
| | | commit('SET_ROLES', res.roles) |
| | | commit('SET_PERMISSIONS', res.permissions) |
| | |
| | | commit('SET_ROLES', ['ROLE_DEFAULT']) |
| | | } |
| | | commit('SET_ID', user.userId) |
| | | commit('SET_ROLE_IDS', user.roles.map(role => role.roleId)) |
| | | commit('SET_NAME', user.userName) |
| | | commit('SET_DEPT', user.deptId) |
| | | commit('SET_CHILD_DEPT', res.childDeptList) |
| | | commit('SET_DEPT_NAME', user.dept ? user.dept.deptName : '') |
| | | commit('SET_AVATAR', avatar) |
| | | |
| | | resolve(res) |
| | | }).catch(error => { |
| | | reject(error) |