From f3d4db769ba9b51b799d981511a710fd443d0e08 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期一, 21 四月 2025 12:18:03 +0800 Subject: [PATCH] Merge branch 'master' into positec --- src/router/index.js | 153 ++++++++++++++++----------------------------------- 1 files changed, 48 insertions(+), 105 deletions(-) diff --git a/src/router/index.js b/src/router/index.js index 46c93e1..a1bc174 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -1,128 +1,71 @@ import React, {Component} from 'react' import {HashRouter, Switch, Route, Redirect} from 'react-router-dom' -import md5 from 'md5' -import moment from 'moment' -import options from '@/store/options.js' import asyncComponent from '@/utils/asyncComponent' import asyncLoadComponent from '@/utils/asyncLoadComponent' -const Pay = asyncLoadComponent(() => import('@/views/pay')) -const Main = asyncLoadComponent(() => import('@/views/main')) const Login = asyncLoadComponent(() => import('@/views/login')) +const Main = asyncLoadComponent(() => import('@/views/main')) +const Sso = asyncLoadComponent(() => import('@/views/sso')) +const Pay = asyncLoadComponent(() => import('@/views/pay')) +const MainParams = asyncLoadComponent(() => import('@/views/mainparams')) +const Design = asyncLoadComponent(() => import('@/views/design')) const NotFound = asyncComponent(() => import('@/views/404')) -const MobManage = asyncLoadComponent(() => import('@/views/mobmanage')) +const AppManage = asyncLoadComponent(() => import('@/views/appmanage')) +const AppCheck = asyncLoadComponent(() => import('@/views/appcheck')) +const PCDesign = asyncLoadComponent(() => import('@/views/pcdesign')) const MobDesign = asyncLoadComponent(() => import('@/views/mobdesign')) +const ImDesign = asyncLoadComponent(() => import('@/views/imdesign')) const MenuDesign = asyncLoadComponent(() => import('@/views/menudesign')) +const BaseDesign = asyncLoadComponent(() => import('@/views/basedesign')) +const TableDesign = asyncLoadComponent(() => import('@/views/tabledesign')) const BillPrint = asyncLoadComponent(() => import('@/views/billprint')) const PrintT = asyncLoadComponent(() => import('@/views/printTemplate')) +const Interface = asyncLoadComponent(() => import('@/views/interface')) +const RoleManage = asyncLoadComponent(() => import('@/views/rolemanage')) +const SystemFunc = asyncLoadComponent(() => import('@/views/systemfunc')) +const SystemProc = asyncLoadComponent(() => import('@/views/systemproc')) +// const SystemCheck = asyncLoadComponent(() => import('@/views/syscheck')) +const MkIframe = asyncLoadComponent(() => import('@/views/mkiframe')) +// const MkAi = asyncLoadComponent(() => import('@/views/mkai')) const routers = [ - {path: '/login', name: 'login', component: Login, auth: false}, - {path: '/pay/:param', name: 'pay', component: Pay, auth: false}, - {path: '/print/:param', name: 'print', component: PrintT, auth: false}, - {path: '/ssologin/:param', name: 'ssologin', auth: true}, - {path: '/main', name: 'main', component: Main, auth: true}, - {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} + {path: '/login', name: 'login', component: Login}, + {path: '/main', name: 'main', component: Main}, + {path: '/pay/:param', name: 'pay', component: Pay}, + {path: '/print/:param', name: 'print', component: PrintT}, + {path: '/ssologin/:param', name: 'ssologin', component: Sso}, + {path: '/design', name: 'design', component: Design}, + {path: '/appmanage', name: 'appmanage', component: AppManage}, + {path: '/appcheck', name: 'appcheck', component: AppCheck}, + {path: '/pcdesign/:param', name: 'pcdesign', component: PCDesign}, + {path: '/mobdesign/:param', name: 'mobdesign', component: MobDesign}, + {path: '/imdesign/:param', name: 'imdesign', component: ImDesign}, + {path: '/menudesign/:param', name: 'menudesign', component: MenuDesign}, + {path: '/basedesign/:param', name: 'basedesign', component: BaseDesign}, + {path: '/tabledesign/:param', name: 'tabledesign', component: TableDesign}, + {path: '/billprint/:param', name: 'billprint', component: BillPrint}, + {path: '/docprint/:menuId', name: 'docprint', component: BillPrint}, + {path: '/docprint/:menuId/:id', name: 'docprint', component: BillPrint}, + {path: '/tab/:menuId', name: 'tab', component: MainParams}, + {path: '/role/:param', name: 'role', component: RoleManage}, + {path: '/hs', name: 'hs', component: SystemFunc}, + {path: '/proc', name: 'proc', component: SystemProc}, + {path: '/proc/:func', name: 'proc', component: SystemProc}, + {path: '/iframe/:menuId/:loginUid', name: 'iframe', component: MkIframe}, + {path: '/iframe/:menuId/:loginUid/:bid', name: 'iframe', component: MkIframe}, + {path: '/view/:menuId', name: 'iframe', component: MkIframe}, + {path: '/view/:menuId/:bid', name: 'iframe', component: MkIframe}, + {path: '/interface', name: 'interface', component: Interface}, + // {path: '/ai', name: 'ai', component: MkAi}, + // {path: '/syscheck', name: 'syscheck', component: SystemCheck} ] export default class RouteConfig extends Component { - controlRoute (item, props) { - if (!item.auth) { // 涓嶉渶瑕佹巿鏉冿紝鐩存帴璺宠浆锛堢櫥褰曢〉锛� - return (<item.component {...props}/>) - } - - if (item.name === 'pmain') { // 鏂扮獥鍙f墦寮�锛屽彇url鍙傛暟鏀惧叆sessionStorage - try { - let _param = JSON.parse(window.decodeURIComponent(window.atob(props.match.params.param))) - - if (typeof(_param) === 'object') { - _param.UserID && sessionStorage.setItem('UserID', _param.UserID) - _param.LoginUID && sessionStorage.setItem('LoginUID', _param.LoginUID) - _param.User_Name && sessionStorage.setItem('User_Name', _param.User_Name) - _param.Full_Name && sessionStorage.setItem('Full_Name', _param.Full_Name) - _param.debug && sessionStorage.setItem('debug', _param.debug) - _param.dataM && sessionStorage.setItem('dataM', _param.dataM) - _param.avatar && sessionStorage.setItem('avatar', _param.avatar) - _param.role_id && sessionStorage.setItem('role_id', _param.role_id) - _param.Member_Level && sessionStorage.setItem('Member_Level', _param.Member_Level) - - 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('鑿滃崟鍙傛暟瑙f瀽閿欒锛�') - } - - return (<item.component {...props}/>) - } else if (item.name === 'ssologin') { - 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('鑿滃崟鍙傛暟瑙f瀽閿欒锛�') - } - - return (<Redirect to={{ pathname: '/main'}}/>) - } - - let userId = sessionStorage.getItem('UserID') // 鍒ゆ柇鏄惁瀛樺湪userid - - let authCode = localStorage.getItem(window.location.href.split('#')[0] + 'AuthCode') // 鍒ゆ柇绯荤粺鏄惁鍦ㄦ巿鏉冩湡闄愬唴 - let _s = md5('mksoft' + moment().format('YYYYMMDD')) - let isauth = authCode && authCode.includes(_s) - - if (userId && isauth) { - return (<item.component {...props}/>) - } else { - // return (<Redirect to={{ pathname: '/login', state: {from: props.location}}}/>) - return (<Redirect to={{ pathname: '/login'}}/>) - } - } - render () { return ( <HashRouter> <Switch> - { - routers.map((item, index) => { - return ( - <Route key={index} path={item.path} name={item.name} exact render={ props => { - return this.controlRoute(item, props) - }}/> - ) - }) - } + {routers.map((item, index) => <Route key={index} path={item.path} name={item.name} exact render={ props => <item.component {...props}/>}/>)} <Redirect exact from="/" to="login"/> <Route component= {NotFound}/> </Switch> -- Gitblit v1.8.0