feat(management-navigation-single-company-ux): 收敛管理导航与单公司配置体验

这个提交包含在:
2026-08-03 12:43:00 +08:00
父节点 f4ddc18f12
当前提交 4b0184c64b
共修改 36 个文件,包含 1249 行新增和 178 行删除
+28 -20
查看文件
@@ -1,6 +1,7 @@
import { Suspense, type ReactNode } from "react";
import { createBrowserRouter, createRoutesFromElements, Navigate, Outlet, Route } from "react-router-dom";
import { AuthProvider } from "../auth/AuthContext";
import { getManagementRoutePermissions } from "../features/navigation/managementRoutes";
import { RoutePageFallback } from "../components/common/RoutePageFallback";
import { UnsavedChangesProvider } from "../components/common/UnsavedChangesGuard";
import { AppShellLayout } from "../layouts/AppShellLayout";
@@ -209,7 +210,7 @@ const routeElements = (
<Route
path="system/reimbursement-templates"
element={
<RequirePermission anyOf={["system.settings"]}>
<RequirePermission anyOf={getManagementRoutePermissions("reimbursement_templates")}>
{withRouteFallback(<ReimbursementTemplatesPage />)}
</RequirePermission>
}
@@ -494,7 +495,7 @@ const routeElements = (
<Route
path="audit-logs"
element={
<RequirePermission anyOf={["system.audit.view"]}>
<RequirePermission anyOf={getManagementRoutePermissions("audit_logs")}>
{withRouteFallback(<AuditLogsPage />)}
</RequirePermission>
}
@@ -521,7 +522,7 @@ const routeElements = (
<Route
path="performance"
element={
<RequirePermission anyOf={["system.settings"]}>
<RequirePermission anyOf={getManagementRoutePermissions("performance")}>
{withRouteFallback(<PerformancePage />)}
</RequirePermission>
}
@@ -530,7 +531,7 @@ const routeElements = (
<Route
path="organization"
element={
<RequirePermission anyOf={["system.users", "report.dashboard.view"]}>
<RequirePermission anyOf={getManagementRoutePermissions("organization")}>
{withRouteFallback(<OrganizationPage />)}
</RequirePermission>
}
@@ -539,7 +540,7 @@ const routeElements = (
<Route
path="people"
element={
<RequirePermission anyOf={["system.users"]}>
<RequirePermission anyOf={getManagementRoutePermissions("people")}>
{withRouteFallback(<PeoplePage />)}
</RequirePermission>
}
@@ -548,18 +549,25 @@ const routeElements = (
<Route
path="people/stats"
element={
<RequirePermission anyOf={["system.users"]}>
<RequirePermission anyOf={getManagementRoutePermissions("people_stats")}>
{withRouteFallback(<PeopleStatsPage />)}
</RequirePermission>
}
/>
<Route path="people/:employeeId" element={withRouteFallback(<EmployeeProfilePage />)} />
<Route
path="people/:employeeId"
element={
<RequirePermission anyOf={getManagementRoutePermissions("employee_profile")}>
{withRouteFallback(<EmployeeProfilePage />)}
</RequirePermission>
}
/>
<Route
path="system/users"
element={
<RequirePermission anyOf={["system.accounts.manage", "system.roles.manage"]}>
<RequirePermission anyOf={getManagementRoutePermissions("user_accounts")}>
{withRouteFallback(<UserManagementPage />)}
</RequirePermission>
}
@@ -568,7 +576,7 @@ const routeElements = (
<Route
path="system/departments"
element={
<RequirePermission anyOf={["system.users"]}>
<RequirePermission anyOf={getManagementRoutePermissions("departments")}>
{withRouteFallback(<DepartmentsPage />)}
</RequirePermission>
}
@@ -577,7 +585,7 @@ const routeElements = (
<Route
path="system/master-data"
element={
<RequirePermission anyOf={["masterdata.view", "masterdata.manage"]}>
<RequirePermission anyOf={getManagementRoutePermissions("company_information")}>
{withRouteFallback(<MasterDataPage />)}
</RequirePermission>
}
@@ -586,7 +594,7 @@ const routeElements = (
<Route
path="system/payment-accounts"
element={
<RequirePermission anyOf={["payment.account.read", "payment.account.manage"]}>
<RequirePermission anyOf={getManagementRoutePermissions("payment_accounts")}>
{withRouteFallback(<PaymentAccountsPage />)}
</RequirePermission>
}
@@ -595,7 +603,7 @@ const routeElements = (
<Route
path="system/notification-channels"
element={
<RequirePermission anyOf={["notification.channel.manage"]}>
<RequirePermission anyOf={getManagementRoutePermissions("notification_channels")}>
{withRouteFallback(<NotificationChannelsPage />)}
</RequirePermission>
}
@@ -604,7 +612,7 @@ const routeElements = (
<Route
path="system/workspace"
element={
<RequirePermission anyOf={["system.settings"]}>
<RequirePermission anyOf={getManagementRoutePermissions("workspace")}>
{withRouteFallback(<WorkspaceSetupPage />)}
</RequirePermission>
}
@@ -613,7 +621,7 @@ const routeElements = (
<Route
path="system/settings"
element={
<RequirePermission anyOf={["system.settings", "system.users", "masterdata.manage", "notification.channel.manage", "integration.manage", "payment.account.read", "payment.account.manage"]}>
<RequirePermission anyOf={getManagementRoutePermissions("management")}>
{withRouteFallback(<SystemSettingsPage />)}
</RequirePermission>
}
@@ -622,7 +630,7 @@ const routeElements = (
<Route
path="system/approval-rules"
element={
<RequirePermission anyOf={["system.settings"]}>
<RequirePermission anyOf={getManagementRoutePermissions("approval_rules")}>
{withRouteFallback(<ApprovalRulesPage />)}
</RequirePermission>
}
@@ -631,7 +639,7 @@ const routeElements = (
<Route
path="system/expense-standards"
element={
<RequirePermission anyOf={["system.settings"]}>
<RequirePermission anyOf={getManagementRoutePermissions("expense_standards")}>
{withRouteFallback(<ExpenseStandardsPage />)}
</RequirePermission>
}
@@ -640,7 +648,7 @@ const routeElements = (
<Route
path="system/feature-flags"
element={
<RequirePermission anyOf={["system.settings"]}>
<RequirePermission anyOf={getManagementRoutePermissions("feature_flags")}>
{withRouteFallback(<FeatureFlagsPage />)}
</RequirePermission>
}
@@ -649,7 +657,7 @@ const routeElements = (
<Route
path="system/announcements"
element={
<RequirePermission anyOf={["system.settings"]}>
<RequirePermission anyOf={getManagementRoutePermissions("system_announcements")}>
{withRouteFallback(<PortalAnnouncementsPage />)}
</RequirePermission>
}
@@ -658,7 +666,7 @@ const routeElements = (
<Route
path="system/workflow-definitions"
element={
<RequirePermission anyOf={["system.settings"]}>
<RequirePermission anyOf={getManagementRoutePermissions("workflow_definitions")}>
{withRouteFallback(<WorkflowDefinitionsPage />)}
</RequirePermission>
}
@@ -667,7 +675,7 @@ const routeElements = (
<Route
path="system/cutover"
element={
<RequirePermission anyOf={["system.settings"]}>
<RequirePermission anyOf={getManagementRoutePermissions("cutover")}>
{withRouteFallback(<CutoverConsolePage />)}
</RequirePermission>
}