From 2afcf172a0bfef66b2243575eb73bb925c463dfc Mon Sep 17 00:00:00 2001
From: 董国庆 <364620639@qq.com>
Date: 星期一, 11 五月 2026 13:48:22 +0800
Subject: [PATCH] feat(权限): 为多个页面添加权限控制并更新路由ID

---
 src/store/auth.ts |   95 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 92 insertions(+), 3 deletions(-)

diff --git a/src/store/auth.ts b/src/store/auth.ts
index 44e08cc..0fd72dc 100644
--- a/src/store/auth.ts
+++ b/src/store/auth.ts
@@ -4,6 +4,93 @@
 import { useRouteStore } from './router'
 import { useTabStore } from './tab'
 
+// 临时补充权限,待服务端正式下发后删除。
+const TEMP_PERMISSION_CODES = [
+  '202642901',
+  '202642902',
+  '202642903',
+  '202642904',
+  '202642905',
+  '202642906',
+  '202642907',
+  '202642908',
+  '202642909',
+  '202642910',
+  '202642911',
+  '202642912',
+  '202642913',
+  '202642914',
+  '202642915',
+  '202642916',
+  '202642917',
+  '202642918',
+  '202642919',
+  '202642920',
+  '202642921',
+  '202642922',
+  '202642923',
+  '202642924',
+  '202642925',
+  '202642926',
+  '202642927',
+  '202642928',
+  '202642929',
+  '202642930',
+  '202642931',
+  '202642932',
+  '202642933',
+  '202642934',
+  '202642935',
+  '202642936',
+  '202642937',
+  '202642938',
+  '202642939',
+  '202642940',
+  '202642941',
+  '202642942',
+  '202642943',
+  '202642944',
+  '202642945',
+  '202642946',
+  '202642947',
+  '202642948',
+  '202642949',
+  '202642950',
+  '202642951',
+  '202642952',
+  '202642953',
+  '202642954',
+  '202642955',
+  '202642956',
+  '202642957',
+  '202642958',
+  '202642959',
+  '202642960',
+  '202642961',
+  '202642962',
+  '202642963',
+  '202642964',
+  '202642965',
+  '202642966',
+  '202642967',
+  '202642968',
+  '202642969',
+  '2026429691',
+  '202642970',
+  '202642971',
+  '202642972',
+  '202642973',
+  '202642974',
+  '202642975',
+  '202642976',
+  '202642977',
+  '202642978',
+] as const
+
+function mergeTempPermissions(permissions: string[] = []) {
+  return Array.from(new Set([...permissions.map(String), ...TEMP_PERMISSION_CODES]))
+}
+
 interface AuthStatus {
   userInfo: Entity.User | null
   token: string
@@ -14,7 +101,7 @@
     return {
       userInfo: local.get('userInfo'),
       token: local.get('accessToken') || '',
-      permissions: local.get('permissions') || [],
+      permissions: mergeTempPermissions(local.get('permissions') || []),
     }
   },
   getters: {
@@ -71,13 +158,15 @@
 
     /* 处理登录返回的数据 */
     async handleLoginInfo(data: Api.Login.Info) {
+      const permissions = mergeTempPermissions(data.info.permissions || [])
+
       // 将token和userInfo保存下来
       local.set('userInfo', data.info.sysUser)
       local.set('accessToken', data.token.access_token)
-      local.set('permissions', data.info.permissions)
+      local.set('permissions', permissions)
       this.token = data.token.access_token
       this.userInfo = data.info.sysUser
-      this.permissions = data.info.permissions
+      this.permissions = permissions
 
       // 添加路由和菜单
       const routeStore = useRouteStore()

--
Gitblit v1.7.1