From 8a709ba6db50831048f9c3e2452ea6dc6c3de36f Mon Sep 17 00:00:00 2001
From: Bang Hu <hu_bang@hotmail.com>
Date: 星期五, 12 九月 2025 15:45:33 +0800
Subject: [PATCH] bug修改代码提交

---
 src/router/index.ts |   78 +++++++++++++++++++++++++++++++++-----
 1 files changed, 67 insertions(+), 11 deletions(-)

diff --git a/src/router/index.ts b/src/router/index.ts
index 6f447b2..29dfb48 100644
--- a/src/router/index.ts
+++ b/src/router/index.ts
@@ -12,15 +12,16 @@
 import { useUserInfo } from '@/stores/modules/userInfo'
 import { useCommonInfo } from '@/stores/modules/common' // 鐘舵�佺鐞嗗櫒
 import { useNavTabs } from '@/stores/modules/navTabs' // 鏍囩瀵艰埅
+import { queryUserDetail } from '@/api/userInfo'
 
 const router = createRouter({
-  history: createWebHistory('/manage/'),
+  history: createWebHistory('/trade/'),
   routes: staticRoutes,
   scrollBehavior(to, from, savedPosition) {
     return { top: 0 }
   },
 })
-router.beforeEach((to, from, next) => {
+router.beforeEach(async (to, from, next) => {
   console.log("to",to)
   const userStore = useUserInfo()
   // * 鍦ㄨ烦杞矾鐢变箣鍓嶏紝娓呴櫎鎵�鏈夌殑璇锋眰
@@ -31,7 +32,7 @@
   const commonStore = useCommonInfo()
   commonStore.updateActiveMenu(to.path)
   const navStore = useNavTabs()
-  
+
   // 寮�鍙戞ā寮忎笅璺宠繃鐧诲綍楠岃瘉
   if (import.meta.env.DEV) {
     // 濡傛灉璁块棶鐧诲綍椤甸潰锛岀洿鎺ヨ烦杞埌棣栭〉
@@ -41,16 +42,32 @@
     }
     // 濡傛灉娌℃湁token锛岃缃竴涓粯璁oken骞剁户缁�
     if (!userStore.getAdminToken) {
-      const obj: any = {
-        adminToken: 'dev-token',
-        screenToken: '',
+      const localUserInfo = localStorage.getItem('userInfo')
+      if (localUserInfo) {
+          const userInfo = JSON.parse(localUserInfo)
+          if (userInfo.adminToken && userInfo.adminToken !== '') {
+          const obj: any = {
+            adminToken: userInfo.adminToken,
+            screenToken: '',
+          }
+          userStore.updateUserInfo(obj)
+        }else {
+            if (to.query.token) {
+              const token = to.query.token as string
+              localStorage.setItem('lastRecordTime', new Date().getTime().toString())
+              const obj: any = {
+                adminToken: token,
+                screenToken: '',
+              }
+              userStore.updateUserInfo(obj)
+            }
+          }
       }
-      userStore.updateUserInfo(obj)
     }
     next()
     return
   }
-  
+
   // 鐢熶骇鐜淇濇寔鍘熸湁閫昏緫
   if (to.path == '/login' || to.path == '/loginT') {
     // 濡傛灉璺緞鏄� /login 鍒欐甯告墽琛�
@@ -58,12 +75,17 @@
   } else {
     if (to.query.token) {
       const token = to.query.token as string
-      localStorage.setItem('lastRecordTime', new Date().getTime())
+      localStorage.setItem('lastRecordTime', new Date().getTime().toString())
       const obj: any = {
         adminToken: token,
         screenToken: '',
       }
       userStore.updateUserInfo(obj)
+      const localUserInfo = localStorage.getItem('userInfo')
+      if (localUserInfo) {
+        const userInfo = JSON.parse(localUserInfo)
+        userStore.updateUserDetail(userInfo)
+      }
       // chrome
       document.body.scrollTop = 0
       // firefox
@@ -72,9 +94,43 @@
       window.pageYOffset = 0
       next()
     } else if (!userStore.getAdminToken) {
-      // 濡傛灉娌℃湁锛屽垯璺宠嚦鐧诲綍椤甸潰
-      next({ path: '/loginT' })
+      // 浠� localStorage 涓幏鍙� userInfo 鐨� adminToken
+      const localUserInfo = localStorage.getItem('userInfo')
+      if (localUserInfo) {
+        try {
+          const userInfo = JSON.parse(localUserInfo)
+          if (userInfo.adminToken) {
+            // 濡傛灉鑾峰彇鍒� adminToken锛屽垯鏇存柊 userStore
+            userStore.updateUserInfo({
+              adminToken: userInfo.adminToken,
+              screenToken: userInfo.screenToken || '',
+              fullUnitName: userInfo.fullUnitName || '',
+              empCode: userInfo.empCode || '',
+              menuList: userInfo.menuList || []
+            })
+            // 鍚屾椂鏇存柊鐢ㄦ埛璇︾粏淇℃伅
+            userStore.updateUserDetail(userInfo)
+            next()
+          } else {
+            // 濡傛灉娌℃湁 adminToken锛屽垯鐢ㄦ埛鏈櫥褰�
+            next({ path: '/loginT' })
+          }
+        } catch (error) {
+          console.error('瑙f瀽 localStorage 涓殑 userInfo 澶辫触:', error)
+          // 瑙f瀽澶辫触锛岃涓虹敤鎴锋湭鐧诲綍
+          next({ path: '/loginT' })
+        }
+      } else {
+        // 濡傛灉娌℃湁 userInfo锛屽垯鐢ㄦ埛鏈櫥褰�
+        next({ path: '/loginT' })
+      }
     } else {
+      // 鑾峰彇鐢ㄦ埛淇℃伅
+      const localUserInfo = localStorage.getItem('userInfo')
+      if (localUserInfo) {
+        const userInfo = JSON.parse(localUserInfo)
+        userStore.updateUserDetail(userInfo)
+      }
       next()
     }
   }

--
Gitblit v1.8.0