功能:隐藏 ROI 菜单项,ROI 配置已整合到摄像头管理中
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -137,12 +137,31 @@ export const useAuthStore = defineStore('auth', () => {
|
||||
// userStore
|
||||
userStore.setUserInfo(authPermissionInfo.user);
|
||||
userStore.setUserRoles(authPermissionInfo.roles);
|
||||
// accessStore
|
||||
accessStore.setAccessMenus(authPermissionInfo.menus);
|
||||
// accessStore - 隐藏不需要的菜单项(保留路由,仅侧边栏不显示)
|
||||
const processedMenus = hideMenuItems(authPermissionInfo.menus);
|
||||
accessStore.setAccessMenus(processedMenus);
|
||||
accessStore.setAccessCodes(authPermissionInfo.permissions);
|
||||
return authPermissionInfo;
|
||||
}
|
||||
|
||||
/** 递归标记菜单为隐藏(visible=false),保留路由可直接访问 */
|
||||
function hideMenuItems(menus: any[]): any[] {
|
||||
// 需要从侧边栏隐藏的菜单路径(ROI 区域配置已整合到摄像头管理中)
|
||||
const hiddenPaths = new Set(['roi']);
|
||||
const hiddenNameKeywords = ['ROI', 'roi'];
|
||||
return menus.map((menu) => {
|
||||
const shouldHide =
|
||||
hiddenPaths.has(menu.path) ||
|
||||
(menu.name &&
|
||||
hiddenNameKeywords.some((kw: string) => menu.name.includes(kw)));
|
||||
return {
|
||||
...menu,
|
||||
visible: shouldHide ? false : menu.visible,
|
||||
children: menu.children ? hideMenuItems(menu.children) : menu.children,
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
function $reset() {
|
||||
loginLoading.value = false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user