按钮级别的新版本,多级别的组织架构
loulijun2021
2023-08-15 621bd1e65350d17756863f35783dbab5619a54d4
src/permission.js
@@ -3,8 +3,9 @@
import { Message } from 'element-ui'
import NProgress from 'nprogress' // progress bar
import 'nprogress/nprogress.css' // progress bar style
import { getCookie, getToken } from '@/utils/auth' // get token from cookie
import { getCookie, getToken, setCookie } from '@/utils/auth' // get token from cookie
import getPageTitle from '@/utils/get-page-title'
import { decode } from 'jsonwebtoken'
NProgress.configure({ showSpinner: false }) // NProgress Configuration
@@ -27,30 +28,46 @@
      next({ path: '/' })
      NProgress.done()
    } else {
      // const hasGetUserInfo = store.getters.name
      const hasGetUserInfo = store.getters.name
      // const hasGetUserInfo = getCookie('usercode')
      if (hasGetUserInfo) {
        next()
      } else {
        try {
          // 拉取info
          // const info = await store.dispatch('user/getInfo')
          // jwt解密获取用户编码
          const jwt = decode(localStorage.getItem('token'))
          localStorage.setItem('usercode', jwt.usercode)
          localStorage.setItem('torg_name', jwt.storg_name)
          localStorage.setItem('torg_code', jwt.storg_code)
          // const code = await store.dispatch('user/getUserTorgData')
          // if (code === '200') {
          // 拉取菜单信息表
          const menu = await store.dispatch('user/getMenu')
          // 生成可访问的路由表
          await store.dispatch('permission/generateRoutes', menu)
          // eslint-disable-next-line require-atomic-updates
          store.state.settings.orgType = getCookie('description')
          // 动态添加可访问路由表
          router.addRoutes(store.getters.addRouters)
          // hack方法 确保addRoutes已完成
          next({ ...to, replace: true })
          // next()
          // }
          // // 拉取菜单信息表
          // const menu = await store.dispatch('user/getMenu')
          // // 生成可访问的路由表
          // await store.dispatch('permission/generateRoutes', menu)
          //
          // // eslint-disable-next-line require-atomic-updates
          // // store.state.settings.orgType = getCookie('description')  //注释掉
          //
          // // 动态添加可访问路由表
          // router.addRoutes(store.getters.addRouters)
          //
          // // hack方法 确保addRoutes已完成
          // next({ ...to, replace: true })
          //
          // // next()
        } catch (error) {
          // remove token and go to login page to re-login
          await store.dispatch('user/resetToken')