feat(web): migrate teaching and enrollment administration
Add React workflows for teaching eligibility, course equivalency rules, enrollment management, and campus wallet administration. Preserve role-aware navigation, college scope, audit trails, and existing server authorization.
This commit is contained in:
1 parent
fdba798935
commit
7ee13a4b7c
9 files changed
+158
No files matched your search
@@ -37,6 +37,10 @@
|
||||
| `/approvals` | 我的审批申请 | Student | 免修、缓考、课程替代申请与审核结果 | verification |
|
||||
| `/teacher-roster` | 选课名单 | Teacher | 本人授课教学班、学生联系与特殊支持信息、Excel 导出 | verification |
|
||||
| `/teacher-attendance` | 教学点名 | Teacher、教务管理、Counselor | 教学班筛选、人工/扫码/定位签到、Excel、提交、风险信号与课程统计 | verification |
|
||||
| `/teaching-preferences` | 授课科目申报/资格审核 | Teacher、教务管理 | 教师申报与撤回、学院审核、直接分配授课资格 | verification |
|
||||
| `/course-equivalency-rules` | 等价课程规则 | 教务管理 | 规则建立、适用年级、启停与安全删除 | verification |
|
||||
| `/course-enrollments` | 修读课程管理 | 教务管理 | 课程/学生双视图、多维筛选、退选递补与全量导出 | verification |
|
||||
| `/campus-wallets` | 学生余额管理 | 教务管理 | 学生筛选、单笔调整、批量导入、模板与余额导出 | verification |
|
||||
| `/activate` | 学生账号激活 | 公开 | 学籍选项、身份匹配、强密码和一次性激活 | verification |
|
||||
| `/verify/:verificationCode?` | 电子凭证验真 | 公开 | 唯一编号、实时状态、签发信息和 PDF 哈希 | verification |
|
||||
| `/classroom-repairs/report/:classroomId` | 教室扫码报修 | 公开 | 教室设备、故障类别、联系方式和工单提交 | verification |
|
||||
|
||||
@@ -42,6 +42,7 @@ npm.cmd run build
|
||||
- 迁移公开账号激活、电子凭证验真、教室扫码报修及场地信息屏。
|
||||
- 迁移教师选课名单工作台,支持按学期查看本人教学班、学生支持信息和 Excel 导出。
|
||||
- 迁移教师教学点名工作台,覆盖人工/扫码/定位签到、Excel 导入导出、提交及课程出勤统计。
|
||||
- 批量迁移教师授课意愿、等价课程规则、修读课程台账和学生余额管理四个教务工作流。
|
||||
|
||||
## 迁移纪律
|
||||
|
||||
|
||||
@@ -38,6 +38,10 @@ const CampusRegistrationsPage = lazy(() => import('../pages/CampusRegistrationsP
|
||||
const StudentApprovalsPage = lazy(() => import('../pages/StudentApprovalsPage'))
|
||||
const TeacherRosterPage = lazy(() => import('../pages/TeacherRosterPage'))
|
||||
const TeacherAttendancePage = lazy(() => import('../pages/TeacherAttendancePage'))
|
||||
const TeachingPreferencesPage = lazy(() => import('../pages/TeachingPreferencesPage'))
|
||||
const CourseEquivalencyRulesPage = lazy(() => import('../pages/CourseEquivalencyRulesPage'))
|
||||
const CampusWalletManagementPage = lazy(() => import('../pages/CampusWalletManagementPage'))
|
||||
const CourseEnrollmentManagementPage = lazy(() => import('../pages/CourseEnrollmentManagementPage'))
|
||||
const AccountActivationPage = lazy(() => import('../pages/AccountActivationPage'))
|
||||
const OfficialDocumentVerifyPage = lazy(() => import('../pages/OfficialDocumentVerifyPage'))
|
||||
const ClassroomRepairReportPage = lazy(() => import('../pages/ClassroomRepairReportPage'))
|
||||
@@ -118,6 +122,10 @@ function AppRoutes() {
|
||||
<Route path="/approvals" element={<StudentApprovalsPage />} />
|
||||
<Route path="/teacher-roster" element={<TeacherRosterPage />} />
|
||||
<Route path="/teacher-attendance" element={<TeacherAttendancePage />} />
|
||||
<Route path="/teaching-preferences" element={<TeachingPreferencesPage />} />
|
||||
<Route path="/course-equivalency-rules" element={<CourseEquivalencyRulesPage />} />
|
||||
<Route path="/campus-wallets" element={<CampusWalletManagementPage />} />
|
||||
<Route path="/course-enrollments" element={<CourseEnrollmentManagementPage />} />
|
||||
<Route path="/" element={<Navigate to="/dashboard" replace />} />
|
||||
</Route>
|
||||
<Route path="*" element={<Navigate to="/dashboard" replace />} />
|
||||
|
||||
Loaded 3 of 9 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user