fix: 无权限时禁止展示全部菜单与路由

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
XingQue
2026-07-06 18:28:25 +08:00
parent 1a5c8aab88
commit 5b89e1b3c8
3 changed files with 17 additions and 11 deletions

View File

@@ -3,7 +3,7 @@ const CLUB_SCOPE_KEY = 'admin_club_scope';
const CLUB_CONTEXT_KEY = 'admin_club_context';
const MENU_ACCESS_KEY = 'kefu_menu_access';
const MENU_SESSION_KEY = 'kefu_menu_session_v';
const MENU_SESSION_VERSION = '12';
const MENU_SESSION_VERSION = '13';
const DEFAULT_CLUB_ID = 'xq';
let menuAccessInflight = null;
@@ -41,6 +41,8 @@ export function mergeServerClubContext(serverCtx) {
}
} else if (prevScope === 'all' && serverCtx.is_group_admin) {
scopeKey = 'all';
} else if (!allowedIds.has(clubId) && allowedIds.size > 0) {
clubId = serverCtx.club_id || [...allowedIds][0] || DEFAULT_CLUB_ID;
}
const merged = {
@@ -102,8 +104,7 @@ export function isMenuSessionFresh() {
}
export function shouldShowAllMenus(access) {
if (!isMenuSessionFresh()) return true;
if (!access) return true;
if (!access) return false;
if (Array.isArray(access.visible_page_ids) && access.visible_page_ids.length > 0) {
return false;
}
@@ -113,7 +114,7 @@ export function shouldShowAllMenus(access) {
if (Array.isArray(access.permission_codes) && access.permission_codes.length > 0) {
return false;
}
return true;
return false;
}
/** ??? kefu_menu_definitions ???visible_paths ???? permission_codes ?? */