20260720172840
This commit is contained in:
1 parent
cda7f16d3a
commit
94207c77ff
3117 files changed
+201407
-1236
No files matched your search
@@ -1,7 +1,9 @@
|
||||
import { createRouter, createWebHistory } from "vue-router";
|
||||
import NProgress from "nprogress";
|
||||
import { message } from "antdv-next";
|
||||
import "nprogress/nprogress.css";
|
||||
import { useAuthStore } from "../stores/auth";
|
||||
import { usePermissionStore } from "../stores/permissions";
|
||||
|
||||
NProgress.configure({ showSpinner: false });
|
||||
|
||||
@@ -132,13 +134,14 @@ const routes = [
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "demo/modules",
|
||||
name: "demo-modules",
|
||||
component: () => import("../views/ModuleManageDemo.vue"),
|
||||
path: "system/modules",
|
||||
name: "system-modules",
|
||||
component: () => import("../views/module-management/ModuleManagementView.vue"),
|
||||
meta: {
|
||||
title: "模块管理",
|
||||
section: "系统管理",
|
||||
menuKey: "/demo/modules",
|
||||
menuKey: "/system/modules",
|
||||
moduleCode: "M_MODULE",
|
||||
},
|
||||
},
|
||||
],
|
||||
@@ -161,7 +164,7 @@ const router = createRouter({
|
||||
scrollBehavior: () => ({ top: 0 }),
|
||||
});
|
||||
|
||||
router.beforeEach((to) => {
|
||||
router.beforeEach(async (to) => {
|
||||
NProgress.start();
|
||||
document.title = to.meta.title
|
||||
? `${to.meta.title} - FMS 货代物流管理系统`
|
||||
@@ -175,6 +178,22 @@ router.beforeEach((to) => {
|
||||
return getRedirectPath(to.query.redirect);
|
||||
}
|
||||
|
||||
if (to.meta.moduleCode) {
|
||||
const permissionStore = usePermissionStore();
|
||||
try {
|
||||
await permissionStore.load();
|
||||
if (!permissionStore.canModule(to.meta.moduleCode)) {
|
||||
message.warning("没有该模块的访问权限");
|
||||
return false;
|
||||
}
|
||||
} catch (error) {
|
||||
message.error(error.message || "权限加载失败,请重新登录");
|
||||
permissionStore.clear();
|
||||
authStore.clearSession();
|
||||
return { name: "login", query: { redirect: to.fullPath } };
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
});
|
||||
|
||||
|
||||
Reference in new issue
Block a user