20260920220520
This commit is contained in:
1 parent
6f03d92425
commit
b3364fe6dc
44 files changed
+2313
-2737
No files matched your search
@@ -39,10 +39,7 @@ router.beforeEach(async (to) => {
|
||||
// 菜单一次性到位、不会“跳出”;load 内部按主体去重,重复进入同一主体不重复请求
|
||||
const permissionStore = usePermissionStore()
|
||||
const menuStore = useMenuStore()
|
||||
await Promise.all([
|
||||
permissionStore.load().catch(() => {}),
|
||||
menuStore.load().catch(() => {}),
|
||||
])
|
||||
await Promise.all([permissionStore.load().catch(() => {}), menuStore.load().catch(() => {})])
|
||||
|
||||
// 业务数据多语言配置(s_i18n_type 语言清单 + s_i18n 译文):随权限一并加载,
|
||||
// 供菜单/模块等多语言编辑读取;内部去重、失败不阻断页面。
|
||||
@@ -56,6 +53,13 @@ router.beforeEach(async (to) => {
|
||||
return '/dashboard'
|
||||
}
|
||||
|
||||
// 菜单入口:路由命中 s_menu 里的页面菜单时,必须有该菜单的 menu.* 授权。
|
||||
// 侧栏已按授权裁剪(stores/menus),这里兜住「手输地址直接访问」。
|
||||
const menu = menuStore.findMenuByRoute(to.path)
|
||||
if (menu && !permissionStore.canEnterMenu(menu.b_id)) {
|
||||
return '/dashboard'
|
||||
}
|
||||
|
||||
// 系统管理员专用页面(meta.adminOnly,当前为模块中心 /module/*):
|
||||
// 非 g3soft 一律拦回工作台。按路由标记而非路径前缀判断,避免「菜单上看不见、
|
||||
// 手输地址却能进」的越权;侧栏入口同样仅对 g3soft 渲染(AppSidebar)。
|
||||
|
||||
Reference in new issue
Block a user