king
2020-11-10 5df578ff69f6b02e821d59a8883bc75d78695a62
src/router/index.js
@@ -13,6 +13,7 @@
const MobManage = asyncLoadComponent(() => import('@/views/mobmanage'))
const MobDesign = asyncLoadComponent(() => import('@/views/mobdesign'))
const MenuDesign = asyncLoadComponent(() => import('@/views/menudesign'))
const BillPrint = asyncLoadComponent(() => import('@/views/billprint'))
const PrintT = asyncLoadComponent(() => import('@/views/printTemplate'))
const routers = [
@@ -24,6 +25,7 @@
  {path: '/mobmanage', name: 'mobmanage', component: MobManage, auth: true},
  {path: '/mobdesign/:appId/:appType/:appCode/:appName', name: 'mobdesign', component: MobDesign, auth: true},
  {path: '/menudesign/:param', name: 'menudesign', component: MenuDesign, auth: true},
  {path: '/billprint/:param', name: 'billprint', component: BillPrint, auth: true},
  {path: '/paramsmain/:param', name: 'pmain', component: Main, auth: true}
]
@@ -34,38 +36,61 @@
    }
    if (item.name === 'pmain') { // 新窗口打开,取url参数放入sessionStorage
      let _param = window.atob(props.match.params.param)
      let p = {}
      _param.split('&').forEach(cell => {
        let _cell = cell.split('=')
        p[_cell[0]] = _cell[1]
      })
      !sessionStorage.getItem('UserID') && sessionStorage.setItem('UserID', p.ud)
      !sessionStorage.getItem('LoginUID') && sessionStorage.setItem('LoginUID', p.ld)
      !sessionStorage.getItem('User_Name') && sessionStorage.setItem('User_Name', p.un)
      try {
        let _param = JSON.parse(window.decodeURIComponent(window.atob(props.match.params.param)))
      if (p.mlogo) {
        window.GLOB.mainlogo = p.mlogo
        if (typeof(_param) === 'object') {
          if (_param.UserID && !sessionStorage.getItem('UserID')) {
            sessionStorage.setItem('UserID', _param.UserID)
          }
          if (_param.LoginUID && !sessionStorage.getItem('LoginUID')) {
            sessionStorage.setItem('LoginUID', _param.LoginUID)
          }
          if (_param.User_Name && !sessionStorage.getItem('User_Name')) {
            sessionStorage.setItem('User_Name', _param.User_Name)
          }
          if (_param.mainlogo) {
            window.GLOB.mainlogo = _param.mainlogo
          }
          if (_param.mstyle && options.styles[_param.mstyle]) {
            document.getElementById('root').className = options.styles[_param.mstyle]
          }
          if (_param.MainMenu) {
            sessionStorage.setItem('MainMenu', _param.MainMenu)
          }
          if (_param.SubMenu) {
            sessionStorage.setItem('SubMenu', _param.SubMenu)
          }
          if (_param.ThirdMenu) {
            sessionStorage.setItem('ThirdMenu', _param.ThirdMenu)
          }
          if (_param.param) {
            _param.param.ThirdMenu = _param.ThirdMenu
            sessionStorage.setItem('MenuParam', JSON.stringify(_param.param))
          }
        }
      } catch {
        console.warn('菜单参数解析错误!')
      }
      if (options.styles[p.mstyle]) {
        document.getElementById('root').className = options.styles[p.mstyle]
      }
      sessionStorage.setItem('MainMenu', p.mm)
      sessionStorage.setItem('SubMenu', p.sm)
      sessionStorage.setItem('ThirdMenu', p.tm)
      return (<item.component {...props}/>)
    } else if (item.name === 'ssologin') {
      let _param = window.atob(props.match.params.param)
      let p = {}
      _param.split('&').forEach(cell => {
        let _cell = cell.split('=')
        p[_cell[0]] = _cell[1]
      })
      sessionStorage.setItem('UserID', p.ud)
      sessionStorage.setItem('LoginUID', p.ld)
      sessionStorage.setItem('User_Name', p.un)
      try {
        let _param = JSON.parse(window.decodeURIComponent(window.atob(props.match.params.param)))
        if (typeof(_param) === 'object') {
          if (_param.UserID) {
            sessionStorage.setItem('UserID', _param.UserID)
          }
          if (_param.LoginUID) {
            sessionStorage.setItem('LoginUID', _param.LoginUID)
          }
          if (_param.User_Name) {
            sessionStorage.setItem('User_Name', _param.User_Name)
          }
        }
      } catch {
        console.warn('菜单参数解析错误!')
      }
      return (<Redirect to={{ pathname: '/main'}}/>)
    }