WIP: Switch to React #6
No files matched your search
@@ -8,6 +8,7 @@
|
|||||||
| `/dashboard` | 角色化首页 | 已登录用户 | 管理总览;学生课表/消息/考试/预警;教师教学班/成绩登记进度 | verification |
|
| `/dashboard` | 角色化首页 | 已登录用户 | 管理总览;学生课表/消息/考试/预警;教师教学班/成绩登记进度 | verification |
|
||||||
| `/account` | 个人账户 | 已登录用户 | TOTP、恢复码、SSO 绑定;Passkey 浏览器仪式尚未开放 | verification |
|
| `/account` | 个人账户 | 已登录用户 | TOTP、恢复码、SSO 绑定;Passkey 浏览器仪式尚未开放 | verification |
|
||||||
| `/users` | 用户与权限 | SuperAdmin | 列表、筛选、分页、创建、启停、重置密码、角色范围、Excel | verification |
|
| `/users` | 用户与权限 | SuperAdmin | 列表、筛选、分页、创建、启停、重置密码、角色范围、Excel | verification |
|
||||||
| `/notifications` | 通知中心 | 已登录用户 | 收件箱筛选、游标分页、已读回执;已发送;定向群发暂回旧系统 | building |
|
| `/notifications` | 通知中心 | 已登录用户 | 收件箱筛选、游标分页、已读回执、权限范围/筛选/指定收件人群发、已发送 | verification |
|
||||||
|
| `/my-timetable` | 我的课表 | Student、Teacher | 当前学期周视图、考试/实验融合、Excel/PDF/ICS、订阅启停与密钥轮换 | verification |
|
||||||
|
|
||||||
后续从 `web/src/router/index.ts` 逐条补全。只有关键合同和各状态验收完整后,状态才能更新为 `complete`。
|
后续从 `web/src/router/index.ts` 逐条补全。只有关键合同和各状态验收完整后,状态才能更新为 `complete`。
|
||||||
+3
-1
@@ -29,6 +29,8 @@ npm.cmd run build
|
|||||||
- 读取真实 `/api/dashboard` 数据的首个页面;
|
- 读取真实 `/api/dashboard` 数据的首个页面;
|
||||||
- 完整迁移 `/account` 的身份信息、TOTP 和统一身份绑定流程;
|
- 完整迁移 `/account` 的身份信息、TOTP 和统一身份绑定流程;
|
||||||
- 完整迁移 `/users` 的分页筛选、Excel、账号、角色、状态和密码管理流程。
|
- 完整迁移 `/users` 的分页筛选、Excel、账号、角色、状态和密码管理流程。
|
||||||
|
- 迁移 `/notifications` 的收件箱、已读回执、权限范围/筛选/指定收件人群发和已发送记录;
|
||||||
|
- 迁移 `/my-timetable` 的周视图、考试与实验融合、Excel/PDF/ICS 导出和日历订阅管理。
|
||||||
|
|
||||||
## 迁移纪律
|
## 迁移纪律
|
||||||
|
|
||||||
@@ -43,7 +45,7 @@ npm.cmd run build
|
|||||||
| 批次 | 内容 | 状态 |
|
| 批次 | 内容 | 状态 |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
| 0 | 工程、主题、会话、登录、应用外壳 | 进行中 |
|
| 0 | 工程、主题、会话、登录、应用外壳 | 进行中 |
|
||||||
| 1 | Dashboard、Users、Account、移动端代表页 | 前三项进入联调验收 |
|
| 1 | Dashboard、Users、Account、Notifications、个人课表、移动端代表页 | 已实现,进入联调验收 |
|
||||||
| 2 | 标准 CRUD 与基础数据模块 | 未开始 |
|
| 2 | 标准 CRUD 与基础数据模块 | 未开始 |
|
||||||
| 3 | 学生、教师与审批工作台 | 未开始 |
|
| 3 | 学生、教师与审批工作台 | 未开始 |
|
||||||
| 4 | 选课、排课、成绩、实验等复杂模块 | 未开始 |
|
| 4 | 选课、排课、成绩、实验等复杂模块 | 未开始 |
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ const DashboardPage = lazy(() => import('../pages/DashboardPage'))
|
|||||||
const AccountPage = lazy(() => import('../pages/AccountPage'))
|
const AccountPage = lazy(() => import('../pages/AccountPage'))
|
||||||
const UsersPage = lazy(() => import('../pages/UsersPage'))
|
const UsersPage = lazy(() => import('../pages/UsersPage'))
|
||||||
const NotificationsPage = lazy(() => import('../pages/NotificationsPage'))
|
const NotificationsPage = lazy(() => import('../pages/NotificationsPage'))
|
||||||
|
const MyTimetablePage = lazy(() => import('../pages/MyTimetablePage'))
|
||||||
const SsoCallbackPage = lazy(() => import('../pages/SsoCallbackPage'))
|
const SsoCallbackPage = lazy(() => import('../pages/SsoCallbackPage'))
|
||||||
const SsoBindPage = lazy(() => import('../pages/SsoBindPage'))
|
const SsoBindPage = lazy(() => import('../pages/SsoBindPage'))
|
||||||
const AppShell = lazy(() => import('../layout/AppShell'))
|
const AppShell = lazy(() => import('../layout/AppShell'))
|
||||||
@@ -54,6 +55,7 @@ function AppRoutes() {
|
|||||||
<Route path="/account" element={<AccountPage />} />
|
<Route path="/account" element={<AccountPage />} />
|
||||||
<Route path="/users" element={<UsersPage />} />
|
<Route path="/users" element={<UsersPage />} />
|
||||||
<Route path="/notifications" element={<NotificationsPage />} />
|
<Route path="/notifications" element={<NotificationsPage />} />
|
||||||
|
<Route path="/my-timetable" element={<MyTimetablePage />} />
|
||||||
<Route path="/" element={<Navigate to="/dashboard" replace />} />
|
<Route path="/" element={<Navigate to="/dashboard" replace />} />
|
||||||
</Route>
|
</Route>
|
||||||
<Route path="*" element={<Navigate to="/dashboard" replace />} />
|
<Route path="*" element={<Navigate to="/dashboard" replace />} />
|
||||||
|
|||||||
Loaded 3 of 10 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user