fix(web): 冻结推迟模块路由守卫
Some checks failed
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled

This commit is contained in:
iven
2026-05-06 10:34:55 +08:00
parent 263bba264a
commit 36275eb307

View File

@@ -1,6 +1,6 @@
import { useEffect, lazy, Suspense, useMemo } from 'react';
import { HashRouter, Routes, Route, Navigate } from 'react-router-dom';
import { ConfigProvider, theme as antdTheme, Spin } from 'antd';
import { ConfigProvider, theme as antdTheme, Spin, Result } from 'antd';
import zhCN from 'antd/locale/zh_CN';
import MainLayout from './layouts/MainLayout';
import Login from './pages/Login';
@@ -71,6 +71,19 @@ const ArticleEditor = lazy(() => import('./pages/health/ArticleEditor'));
const ArticleCategoryManage = lazy(() => import('./pages/health/ArticleCategoryManage'));
const ArticleTagManage = lazy(() => import('./pages/health/ArticleTagManage'));
const FROZEN_ROUTES = [
'/health/care-plans',
'/health/shifts',
'/health/family-proxy',
'/health/medications',
'/health/dialysis',
'/health/schedules',
];
function FrozenRoute() {
return <Result status="info" title="功能暂未开放" subTitle="该功能正在优化中,敬请期待" />;
}
function PrivateRoute({ children }: { children: React.ReactNode }) {
const isAuthenticated = useAuthStore((s) => s.isAuthenticated);
const permissions = useAuthStore((s) => s.permissions);
@@ -91,6 +104,11 @@ function PrivateRoute({ children }: { children: React.ReactNode }) {
if (!hasAccess) return <Navigate to="/" replace />;
}
// 冻结路由检查
if (FROZEN_ROUTES.some((frozen) => path.startsWith(frozen))) {
return <FrozenRoute />;
}
return <>{children}</>;
}