2 Commits
8 changed files with 298 additions and 0 deletions

No files matched your search

+2
View File
@@ -45,6 +45,8 @@
| `/base-data/terms` | 学年学期 | SuperAdmin、AcademicAdmin | 当前学期切换、手动归档/恢复、预检查、原因和操作历史 | verification | | `/base-data/terms` | 学年学期 | SuperAdmin、AcademicAdmin | 当前学期切换、手动归档/恢复、预检查、原因和操作历史 | verification |
| `/base-data/facilities` | 教学场所 | SuperAdmin、AcademicAdmin | 教学楼、教室、容量/场地性质筛选、Excel | verification | | `/base-data/facilities` | 教学场所 | SuperAdmin、AcademicAdmin | 教学楼、教室、容量/场地性质筛选、Excel | verification |
| `/base-data/course-categories` | 课程分类 | SuperAdmin、AcademicAdmin | 分类增删改查、启停、排序和 Excel | verification | | `/base-data/course-categories` | 课程分类 | SuperAdmin、AcademicAdmin | 分类增删改查、启停、排序和 Excel | verification |
| `/courses` | 课程库 | 已登录用户;教务与学院管理员可维护 | 游标分页、数据范围、先修关系、分类/性质、Excel、归档审计 | verification |
| `/curriculum` | 培养方案管理 | SuperAdmin、AcademicAdmin、CollegeAdmin | 版本、模块、课程、课程组、发布替换与已发布受控编辑 | verification |
| `/activate` | 学生账号激活 | 公开 | 学籍选项、身份匹配、强密码和一次性激活 | verification | | `/activate` | 学生账号激活 | 公开 | 学籍选项、身份匹配、强密码和一次性激活 | verification |
| `/verify/:verificationCode?` | 电子凭证验真 | 公开 | 唯一编号、实时状态、签发信息和 PDF 哈希 | verification | | `/verify/:verificationCode?` | 电子凭证验真 | 公开 | 唯一编号、实时状态、签发信息和 PDF 哈希 | verification |
| `/classroom-repairs/report/:classroomId` | 教室扫码报修 | 公开 | 教室设备、故障类别、联系方式和工单提交 | verification | | `/classroom-repairs/report/:classroomId` | 教室扫码报修 | 公开 | 教室设备、故障类别、联系方式和工单提交 | verification |
+2
View File
@@ -44,6 +44,8 @@ npm.cmd run build
- 迁移教师教学点名工作台,覆盖人工/扫码/定位签到、Excel 导入导出、提交及课程出勤统计。 - 迁移教师教学点名工作台,覆盖人工/扫码/定位签到、Excel 导入导出、提交及课程出勤统计。
- 批量迁移教师授课意愿、等价课程规则、修读课程台账和学生余额管理四个教务工作流。 - 批量迁移教师授课意愿、等价课程规则、修读课程台账和学生余额管理四个教务工作流。
- 迁移组织机构、学年学期、教学场所与课程分类基础数据,保留 Excel、服务端分页和学期归档审计闭环。 - 迁移组织机构、学年学期、教学场所与课程分类基础数据,保留 Excel、服务端分页和学期归档审计闭环。
- 迁移课程库游标台账,保留学院维护范围、先修关系、筛选导出、批量导入与归档审计。
- 迁移培养方案管理,覆盖版本复制、模块与课程编制、公共课程组、发布替换和已发布方案受控调整。
## 迁移纪律 ## 迁移纪律
+4
View File
@@ -43,6 +43,8 @@ const CourseEquivalencyRulesPage = lazy(() => import('../pages/CourseEquivalency
const CampusWalletManagementPage = lazy(() => import('../pages/CampusWalletManagementPage')) const CampusWalletManagementPage = lazy(() => import('../pages/CampusWalletManagementPage'))
const CourseEnrollmentManagementPage = lazy(() => import('../pages/CourseEnrollmentManagementPage')) const CourseEnrollmentManagementPage = lazy(() => import('../pages/CourseEnrollmentManagementPage'))
const BaseDataPage = lazy(() => import('../pages/BaseDataPage')) const BaseDataPage = lazy(() => import('../pages/BaseDataPage'))
const CourseCataloguePage = lazy(() => import('../pages/CourseCataloguePage'))
const CurriculumManagementPage = lazy(() => import('../pages/CurriculumManagementPage'))
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'))
@@ -131,6 +133,8 @@ function AppRoutes() {
<Route path="/base-data/terms" element={<BaseDataPage />} /> <Route path="/base-data/terms" element={<BaseDataPage />} />
<Route path="/base-data/facilities" element={<BaseDataPage />} /> <Route path="/base-data/facilities" element={<BaseDataPage />} />
<Route path="/base-data/course-categories" element={<BaseDataPage />} /> <Route path="/base-data/course-categories" element={<BaseDataPage />} />
<Route path="/courses" element={<CourseCataloguePage />} />
<Route path="/curriculum" element={<CurriculumManagementPage />} />
<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 8 files, more files were not shown because too many files have changed in this diff. Show more