feat(web): migrate student progress workflows

Add React experiences for academic planning simulations, published physical fitness results, degree award decisions, and graduation clearance tracking. Wire student navigation and document the migrated API contracts.
This commit is contained in:
biss committed 2026-10-02 08:33:52 +08:00
1 parent dcdbb86e2f
commit 0d9dfaf8ff
9 files changed
+117

No files matched your search

+8
View File
@@ -28,6 +28,10 @@ const AcademicCalendarPage = lazy(() => import('../pages/AcademicCalendarPage'))
const OtherExamsPage = lazy(() => import('../pages/OtherExamsPage'))
const MakeupExamsPage = lazy(() => import('../pages/MakeupExamsPage'))
const EvaluationsPage = lazy(() => import('../pages/EvaluationsPage'))
const AcademicPlanningPage = lazy(() => import('../pages/AcademicPlanningPage'))
const PhysicalFitnessPage = lazy(() => import('../pages/PhysicalFitnessPage'))
const DegreeAwardsPage = lazy(() => import('../pages/DegreeAwardsPage'))
const GraduationClearancePage = lazy(() => import('../pages/GraduationClearancePage'))
const SsoCallbackPage = lazy(() => import('../pages/SsoCallbackPage'))
const SsoBindPage = lazy(() => import('../pages/SsoBindPage'))
const AppShell = lazy(() => import('../layout/AppShell'))
@@ -90,6 +94,10 @@ function AppRoutes() {
<Route path="/other-exams" element={<OtherExamsPage />} />
<Route path="/makeup-exams" element={<MakeupExamsPage />} />
<Route path="/evaluations" element={<EvaluationsPage />} />
<Route path="/academic-planning" element={<AcademicPlanningPage />} />
<Route path="/physical-fitness" element={<PhysicalFitnessPage />} />
<Route path="/degree-awards" element={<DegreeAwardsPage />} />
<Route path="/graduation-clearance" element={<GraduationClearancePage />} />
<Route path="/" element={<Navigate to="/dashboard" replace />} />
</Route>
<Route path="*" element={<Navigate to="/dashboard" replace />} />