From 12d9f4e03c0331efc9a656356e78b9f314639707 Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期三, 18 三月 2026 17:07:57 +0800
Subject: [PATCH] lsh#
---
rsf-admin/src/config/authProvider.js | 56 ++++++++++++++++++++++++++++++++++++--------------------
1 files changed, 36 insertions(+), 20 deletions(-)
diff --git a/rsf-admin/src/config/authProvider.js b/rsf-admin/src/config/authProvider.js
index ee3f976..cb8083e 100644
--- a/rsf-admin/src/config/authProvider.js
+++ b/rsf-admin/src/config/authProvider.js
@@ -4,35 +4,51 @@
import avatar from '/avatar.jpg'
+const AI_COMPONENTS = new Set([
+ 'aiParam',
+ 'aiPrompt',
+ 'aiDiagnosis',
+ 'aiDiagnosisPlan',
+ 'aiCallLog',
+ 'aiRoute',
+ 'aiToolConfig',
+ 'aiMcpMount',
+]);
+
+const filterAiMenus = (items = []) =>
+ items
+ .filter((item) => !AI_COMPONENTS.has(item.component))
+ .map((item) => ({
+ ...item,
+ children: item.children ? filterAiMenus(item.children) : item.children,
+ }));
+
const AuthProvider = {
// login
login: async ({ username, password, tenantId }) => {
- const { accessToken, user, tenant } = await login({
+ const { code, msg, data } = await login({
username: username,
password: password,
tenantId: tenantId,
- }).catch((error) => {
- console.error(error);
- });
+ })
- if (user && accessToken) {
- const userToPersist = {
- avatar: avatar,
- fullName: user.nickname,
- id: user.id,
- username: user.username,
- tenant: tenant,
+ if (code === 200) {
+ const { accessToken, user, tenant } = data;
+ if (user && accessToken) {
+ const userToPersist = {
+ avatar: avatar,
+ fullName: user.nickname,
+ id: user.id,
+ username: user.username,
+ tenant: tenant,
+ }
+ setToken(accessToken);
+ localStorage.setItem("user", JSON.stringify(userToPersist));
+ return Promise.resolve();
}
- setToken(accessToken);
- localStorage.setItem("user", JSON.stringify(userToPersist));
- return Promise.resolve();
}
- return Promise.reject(
- new HttpError("Unauthorized", 401, {
- message: "Invalid username or password",
- }),
- );
+ return Promise.reject({ code, msg, data });
},
// logout
logout: () => {
@@ -61,7 +77,7 @@
const res = await menus();
const { code, msg, data } = res.data;
if (code === 200) {
- return Promise.resolve(data);
+ return Promise.resolve(filterAiMenus(data));
} else if (code === 401) {
localStorage.removeItem("user");
return Promise.reject();
--
Gitblit v1.9.1