staff_data/apps/web/src/routes/index.tsx

121 lines
2.6 KiB
TypeScript
Raw Normal View History

2024-07-11 11:00:51 +08:00
import {
2024-12-30 08:26:40 +08:00
createBrowserRouter,
IndexRouteObject,
Link,
NonIndexRouteObject,
2025-02-24 19:10:38 +08:00
useParams,
2024-07-11 11:00:51 +08:00
} from "react-router-dom";
2024-07-22 10:07:05 +08:00
import ErrorPage from "../app/error";
2024-12-30 08:26:40 +08:00
import LoginPage from "../app/login";
2025-01-03 09:24:46 +08:00
import HomePage from "../app/main/home/page";
2025-03-12 08:23:33 +08:00
import StaffMessage from "../app/main/staffpage/page";
import MainLayout from "../app/main/layout/MainLayout";
2025-03-19 15:57:48 +08:00
import DailyPage from "../app/main/daily/page";
import Dashboard from "../app/main/home/page";
import WeekPlanPage from "../app/main/plan/weekplan/page";
import StaffInformation from "../app/main/staffinformation/page";
2025-03-20 23:09:41 +08:00
import SettingPage from "../app/main/admin/deptsettingpage/settingpage";
import DeptSettingPage from "../app/main/admin/deptsettingpage/settingpage";
2024-09-10 10:31:24 +08:00
interface CustomIndexRouteObject extends IndexRouteObject {
2024-12-30 08:26:40 +08:00
name?: string;
breadcrumb?: string;
2024-09-10 10:31:24 +08:00
}
2024-12-30 08:26:40 +08:00
interface CustomIndexRouteObject extends IndexRouteObject {
name?: string;
breadcrumb?: string;
2024-09-10 10:31:24 +08:00
}
2024-12-30 08:26:40 +08:00
export interface CustomNonIndexRouteObject extends NonIndexRouteObject {
name?: string;
children?: CustomRouteObject[];
breadcrumb?: string;
handle?: {
crumb: (data?: any) => void;
};
}
export type CustomRouteObject =
| CustomIndexRouteObject
| CustomNonIndexRouteObject;
export const routes: CustomRouteObject[] = [
{
path: "/",
errorElement: <ErrorPage />,
handle: {
crumb() {
return <Link to={"/"}></Link>;
},
},
children: [
2024-12-31 15:57:32 +08:00
{
2025-01-03 09:24:46 +08:00
element: <MainLayout></MainLayout>,
children: [
{
index: true,
2025-03-19 15:57:48 +08:00
element:<Dashboard></Dashboard>,
},
{
path: "/staffinformation",
element: <StaffInformation></StaffInformation>,
2025-02-27 22:58:42 +08:00
},
2025-02-26 21:08:38 +08:00
{
2025-03-12 08:23:33 +08:00
path: "/staff",
element: <StaffMessage></StaffMessage>,
2024-12-30 08:26:40 +08:00
},
2025-03-20 23:09:41 +08:00
{
path: "/admin",
children: [
{
path: "department",
element: <DeptSettingPage></DeptSettingPage>,
},
]
},
2025-03-12 10:02:41 +08:00
{
2025-03-12 16:34:43 +08:00
path:"/plan",
2025-03-19 15:57:48 +08:00
children:[
{
path:"weekplan",
element:<WeekPlanPage></WeekPlanPage>
},
{
path:"monthplan",
element:<DailyPage></DailyPage>
}
]
},
{
path:"/daily",
2025-03-12 10:02:41 +08:00
element:<DailyPage></DailyPage>
2025-03-19 15:57:48 +08:00
},
{
path:"/assessment",
children:[
{
path:"positionassessment",
element:<DailyPage></DailyPage>
},
{
path:"commonassessment",
element:<DailyPage></DailyPage>
},
{
path:"sportsassessment",
element:<DailyPage></DailyPage>
}
]
},
2024-12-30 08:26:40 +08:00
],
},
2025-03-12 08:23:33 +08:00
2024-12-30 08:26:40 +08:00
],
},
{
path: "/login",
breadcrumb: "登录",
element: <LoginPage></LoginPage>,
},
];
2024-09-09 18:48:07 +08:00
2024-09-10 10:31:24 +08:00
export const router = createBrowserRouter(routes);