feat(web): migrate personnel registries

This commit is contained in:
biss committed 2026-10-02 16:48:01 +08:00
1 parent c2beed236e
commit 72f61093a1
6 files changed
+119

No files matched your search

+1
View File
@@ -47,6 +47,7 @@
| `/base-data/course-categories` | 课程分类 | SuperAdmin、AcademicAdmin | 分类增删改查、启停、排序和 Excel | verification | | `/base-data/course-categories` | 课程分类 | SuperAdmin、AcademicAdmin | 分类增删改查、启停、排序和 Excel | verification |
| `/courses` | 课程库 | 已登录用户;教务与学院管理员可维护 | 游标分页、数据范围、先修关系、分类/性质、Excel、归档审计 | verification | | `/courses` | 课程库 | 已登录用户;教务与学院管理员可维护 | 游标分页、数据范围、先修关系、分类/性质、Excel、归档审计 | verification |
| `/curriculum` | 培养方案管理 | SuperAdmin、AcademicAdmin、CollegeAdmin | 版本、模块、课程、课程组、发布替换与已发布受控编辑 | verification | | `/curriculum` | 培养方案管理 | SuperAdmin、AcademicAdmin、CollegeAdmin | 版本、模块、课程、课程组、发布替换与已发布受控编辑 | verification |
| `/teachers`、`/students` | 教师/学生档案 | 教务、学院、辅导员;管理员可写 | 服务端分页、数据范围、完整档案、Excel、账号激活与归档审计 | verification |
| `/activate` | 学生账号激活 | 公开 | 学籍选项、身份匹配、强密码和一次性激活 | verification | | `/activate` | 学生账号激活 | 公开 | 学籍选项、身份匹配、强密码和一次性激活 | verification |
| `/verify/:verificationCode?` | 电子凭证验真 | 公开 | 唯一编号、实时状态、签发信息和 PDF 哈希 | verification | | `/verify/:verificationCode?` | 电子凭证验真 | 公开 | 唯一编号、实时状态、签发信息和 PDF 哈希 | verification |
| `/classroom-repairs/report/:classroomId` | 教室扫码报修 | 公开 | 教室设备、故障类别、联系方式和工单提交 | verification | | `/classroom-repairs/report/:classroomId` | 教室扫码报修 | 公开 | 教室设备、故障类别、联系方式和工单提交 | verification |
+1
View File
@@ -46,6 +46,7 @@ npm.cmd run build
- 迁移组织机构、学年学期、教学场所与课程分类基础数据,保留 Excel、服务端分页和学期归档审计闭环。 - 迁移组织机构、学年学期、教学场所与课程分类基础数据,保留 Excel、服务端分页和学期归档审计闭环。
- 迁移课程库游标台账,保留学院维护范围、先修关系、筛选导出、批量导入与归档审计。 - 迁移课程库游标台账,保留学院维护范围、先修关系、筛选导出、批量导入与归档审计。
- 迁移培养方案管理,覆盖版本复制、模块与课程编制、公共课程组、发布替换和已发布方案受控调整。 - 迁移培养方案管理,覆盖版本复制、模块与课程编制、公共课程组、发布替换和已发布方案受控调整。
- 迁移教师与学生档案名册,覆盖分页筛选、完整个人资料、Excel、教师账号激活和人员归档审计。
## 迁移纪律 ## 迁移纪律
+3
View File
@@ -45,6 +45,7 @@ const CourseEnrollmentManagementPage = lazy(() => import('../pages/CourseEnrollm
const BaseDataPage = lazy(() => import('../pages/BaseDataPage')) const BaseDataPage = lazy(() => import('../pages/BaseDataPage'))
const CourseCataloguePage = lazy(() => import('../pages/CourseCataloguePage')) const CourseCataloguePage = lazy(() => import('../pages/CourseCataloguePage'))
const CurriculumManagementPage = lazy(() => import('../pages/CurriculumManagementPage')) const CurriculumManagementPage = lazy(() => import('../pages/CurriculumManagementPage'))
const PersonnelRegistryPage = lazy(() => import('../pages/PersonnelRegistryPage'))
const AccountActivationPage = lazy(() => import('../pages/AccountActivationPage')) const AccountActivationPage = lazy(() => import('../pages/AccountActivationPage'))
const OfficialDocumentVerifyPage = lazy(() => import('../pages/OfficialDocumentVerifyPage')) const OfficialDocumentVerifyPage = lazy(() => import('../pages/OfficialDocumentVerifyPage'))
const ClassroomRepairReportPage = lazy(() => import('../pages/ClassroomRepairReportPage')) const ClassroomRepairReportPage = lazy(() => import('../pages/ClassroomRepairReportPage'))
@@ -135,6 +136,8 @@ function AppRoutes() {
<Route path="/base-data/course-categories" element={<BaseDataPage />} /> <Route path="/base-data/course-categories" element={<BaseDataPage />} />
<Route path="/courses" element={<CourseCataloguePage />} /> <Route path="/courses" element={<CourseCataloguePage />} />
<Route path="/curriculum" element={<CurriculumManagementPage />} /> <Route path="/curriculum" element={<CurriculumManagementPage />} />
<Route path="/teachers" element={<PersonnelRegistryPage />} />
<Route path="/students" element={<PersonnelRegistryPage />} />
<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 6 files, more files were not shown because too many files have changed in this diff. Show more