From 40f4c8f438295248600b90dcceb5fa0444d42f39 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期日, 12 一月 2020 16:52:53 +0800
Subject: [PATCH] 2020-01-12

---
 src/router/index.js |   39 ++++++++++++++++++++++++++++-----------
 1 files changed, 28 insertions(+), 11 deletions(-)

diff --git a/src/router/index.js b/src/router/index.js
index bf812ca..59db3d9 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -11,6 +11,7 @@
 
 const routers = [
   {path: '/login', name: 'login', component: login, auth: false},
+  {path: '/ssologin/:param', name: 'ssologin', auth: true},
   {path: '/main', name: 'main', component: main, auth: true},
   {path: '/main/:param', name: 'pmain', component: main, auth: true}
 ]
@@ -23,7 +24,32 @@
 
     if (item.name === 'pmain') { // 鏂扮獥鍙f墦寮�锛屽彇url鍙傛暟鏀惧叆sessionStorage
       let _param = window.atob(props.match.params.param)
-      sessionStorage.setItem('view_param', _param)
+      let p = {}
+      _param.split('&').forEach(cell => {
+        let _cell = cell.split('=')
+        p[_cell[0]] = _cell[1]
+      })
+      sessionStorage.setItem('UserID', p.ud)
+      sessionStorage.setItem('SessionUid', p.sd)
+      sessionStorage.setItem('LoginUID', p.ld)
+      sessionStorage.setItem('User_Name', p.un)
+      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('SessionUid', p.sd)
+      sessionStorage.setItem('LoginUID', p.ld)
+      sessionStorage.setItem('User_Name', p.un)
+
       return (<Redirect to={{ pathname: '/main'}}/>)
     }
     
@@ -36,16 +62,7 @@
     if (userId && isauth) {
       return (<item.component {...props}/>)
     } else {
-      let param = sessionStorage.getItem('view_param')
-      if (param) {
-        param = param.split('&')
-        sessionStorage.setItem('UserID', param[3])
-        sessionStorage.setItem('SessionUid', param[4])
-        sessionStorage.setItem('LoginUID', param[5])
-        return (<item.component {...props}/>)
-      } else {
-        return (<Redirect to={{ pathname: '/login', state: {from: props.location}}}/>)
-      }
+      return (<Redirect to={{ pathname: '/login', state: {from: props.location}}}/>)
     }
   }
 

--
Gitblit v1.8.0