| | |
| | | setRefreshToken, |
| | | removeToken, |
| | | removeRefreshToken, |
| | | getToken, |
| | | getRefreshToken, |
| | | } from '@/utils/auth' |
| | | import { setStore, getStore } from '@/utils/store' |
| | | import { validatenull } from '@/utils/validate' |
| | | import { deepClone } from '@/utils/util' |
| | | import { deepClone, logOutFun } from '@/utils/util' |
| | | import defaultAva from '@/assets/images/defaultava.png' |
| | | import { |
| | | loginByUsername, |
| | |
| | | import { encrypt } from '@/utils/sm2' |
| | | import md5 from 'js-md5' |
| | | |
| | | // 5是反制无人机菜单,7是系统菜单 |
| | | const sysType = localStorage.getItem('sysType') || 5 |
| | | |
| | | const user = { |
| | | state: { |
| | |
| | | token: getStore({ name: 'token' }) || '', |
| | | refreshToken: getStore({ name: 'refreshToken' }) || '', |
| | | parentDeptInfo: getStore({ name: 'parentDeptInfo' }) || '', |
| | | |
| | | }, |
| | | actions: { |
| | | //根据用户名登录 |
| | |
| | | // 登出 |
| | | LogOut ({ commit }) { |
| | | return new Promise((resolve, reject) => { |
| | | logout() |
| | | .then(() => { |
| | | const promiseRes = getToken() ? logout() : Promise.resolve() |
| | | promiseRes.then(() => { |
| | | commit('SET_TOKEN', '') |
| | | commit('SET_MENU_ALL_NULL', []) |
| | | commit('SET_MENU', []) |
| | |
| | | commit('CLEAR_LOCK') |
| | | removeToken() |
| | | removeRefreshToken() |
| | | removeToken() |
| | | resolve() |
| | | localStorage.clear() |
| | | }) |
| | | .catch(error => { |
| | | reject(error) |
| | | }) |
| | | }) |
| | | }, |
| | | //注销session |
| | | FedLogOut ({ commit }) { |
| | | return new Promise(resolve => { |
| | | commit('SET_TOKEN', '') |
| | | commit('SET_MENU_ALL_NULL', []) |
| | | commit('SET_MENU', []) |
| | | commit('SET_ROLES', []) |
| | | commit('DEL_ALL_TAG', []) |
| | | commit('CLEAR_LOCK') |
| | | removeToken() |
| | | removeRefreshToken() |
| | | removeToken() |
| | | resolve() |
| | | }) |
| | | }, |
| | | GetTopMenu () { |
| | |
| | | }) |
| | | }, |
| | | GetMenu ({ commit, dispatch }, tenantId) { |
| | | const errLogOut = () => { |
| | | dispatch('LogOut').then(() => { |
| | | window.location.href = "/drone-command/login" |
| | | // env === 'development' |
| | | // ? window.location.href = "/drone-command/login" |
| | | // : window.location.replace(`${adminUrl}#/login`) |
| | | }) |
| | | } |
| | | return new Promise(resolve => { |
| | | getRoutes({ tenantId, sysType: 5 }).then(res => { |
| | | const data = res.data.data |
| | | let menu = deepClone(data) |
| | | if (!res.data?.data?.length) { |
| | | errLogOut() |
| | | getRoutes({tenantId,sysType}).then(res => { |
| | | const data = res.data.data; |
| | | let menu = deepClone(data); |
| | | if (!res.data?.data?.length){ |
| | | ElMessage.warning('当前角色没有配置菜单,请联系管理员配置') |
| | | setTimeout(logOutFun,1500) |
| | | return |
| | | } |
| | | menu.forEach(ele => formatPath(ele, true)) |
| | |
| | | dispatch('GetButtons') |
| | | resolve(menu) |
| | | }).catch(err => { |
| | | errLogOut() |
| | | logOutFun() |
| | | }) |
| | | }) |
| | | }, |
| | | GetButtons ({ commit }) { |
| | | return new Promise(resolve => { |
| | | getButtons({ sysType: 5 }).then(res => { |
| | | getButtons({ sysType}).then(res => { |
| | | const data = res.data.data |
| | | commit('SET_PERMISSION', data) |
| | | resolve() |