From 25df88d0ab9d7444ed1d162b9efa1259ac2f6f66 Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期一, 27 四月 2026 10:13:53 +0800
Subject: [PATCH] 小程序对接finish
---
frontend-admin/src/router/index.ts | 32 +++++++++++++++++++++++++++-----
1 files changed, 27 insertions(+), 5 deletions(-)
diff --git a/frontend-admin/src/router/index.ts b/frontend-admin/src/router/index.ts
index 9cb5c2b..4820796 100644
--- a/frontend-admin/src/router/index.ts
+++ b/frontend-admin/src/router/index.ts
@@ -37,7 +37,7 @@
{ path: "", redirect: "/dashboard" },
{ path: "dashboard", component: () => import("../views/DashboardView.vue"), meta: { permission: "dashboard:page" } },
{ path: "appointments", component: () => import("../views/AppointmentListView.vue"), meta: { permission: "appointments:page" } },
- { path: "approvals", component: () => import("../views/ApprovalTodoView.vue"), meta: { permission: "approvals:page" } },
+ { path: "approvals", component: () => import("../views/ApprovalTodoView.vue"), meta: { title: "运维日志", permission: "approvals:page" } },
{ path: "config", redirect: "/system/booking-settings" },
{
path: "system/approval-settings",
@@ -59,7 +59,7 @@
component: () => import("../views/ContentSettingsView.vue"),
meta: { title: "内容设置", permission: "config:content-settings:page" },
},
- { path: "exports", component: () => import("../views/ExportView.vue"), meta: { permission: "exports:page" } },
+ { path: "exports", component: () => import("../views/ExportView.vue"), meta: { title: "操作日志", permission: "exports:page" } },
{ path: "staff/depts", component: () => import("../views/DeptManageView.vue"), meta: { permission: "sys:depts:page" } },
{ path: "staff/employees", component: () => import("../views/StaffEmployeesView.vue"), meta: { permission: "sys:staff:page" } },
{
@@ -92,7 +92,13 @@
router.beforeEach((to, _from, next) => {
const auth = useAuthStore();
if (to.path === "/login" && auth.token) {
- next(resolveFirstAllowedPath());
+ const redirectPath = resolveFirstAllowedPath();
+ if (redirectPath === "/login") {
+ auth.clear();
+ next();
+ return;
+ }
+ next(redirectPath);
return;
}
if (to.meta.requiresAuth && !auth.token) {
@@ -101,11 +107,27 @@
}
const requiredPermission = typeof to.meta.permission === "string" ? to.meta.permission : "";
if (requiredPermission && !auth.hasPermission(requiredPermission)) {
- next(resolveFirstAllowedPath());
+ const redirectPath = resolveFirstAllowedPath();
+ if (redirectPath === to.path) {
+ next();
+ return;
+ }
+ if (redirectPath === "/login") {
+ auth.clear();
+ }
+ next(redirectPath);
return;
}
if (to.path === "/") {
- next(resolveFirstAllowedPath());
+ const redirectPath = resolveFirstAllowedPath();
+ if (redirectPath === "/") {
+ next();
+ return;
+ }
+ if (redirectPath === "/login" && auth.token) {
+ auth.clear();
+ }
+ next(redirectPath);
return;
}
next();
--
Gitblit v1.7.1