refactor(dashboard): V2 审计重构 — i18n 补齐 + 共享抽象 + 单测 + a11y

V2 审计报告(docs/architecture/audit/dashboard-audit-report-v2.md)发现并修复:

- P0 i18n:10 个子组件硬编码字符串全部接入 next-intl(teacher-quick-actions /
  teacher-classes-card / teacher-homework-card / teacher-schedule /
  recent-submissions / teacher-grade-trends / student-grades-card /
  student-today-schedule-card / student-upcoming-assignments-card /
  admin-dashboard),新增 ~50 个翻译键
- P1 共享抽象:新增 DashboardGreetingHeader 组件,消除 teacher/student
  头部 90% 重复代码,两个 Header 改为薄包装
- P2 单测:为 6 个纯函数添加 31 个单元测试
  (tests/integration/dashboard/dashboard-utils.test.ts)
- P2 a11y:admin 表格 caption、teacher/student 视图语义化标签
  (header / section aria-label / aside aria-label)
- 同步架构图 004/005
This commit is contained in:
SpecialX
2026-06-22 17:01:00 +08:00
parent 10c668f36a
commit e997abaf5e
41 changed files with 1811 additions and 516 deletions

View File

@@ -64,7 +64,17 @@
"grades": "成绩",
"attendance": "考勤",
"announcements": "通知",
"leaveRequest": "请假申请"
"leaveRequest": "请假申请",
"createAssignment": "新建作业",
"grade": "批改",
"myClasses": "我的班级",
"viewAll": "查看全部",
"viewSchedule": "查看课表",
"viewAllAssignments": "查看全部作业",
"viewAllSubmissions": "查看全部提交",
"createNewAssignment": "新建作业",
"create": "新建",
"createClass": "新建班级"
},
"todo": {
"title": "今日待办",
@@ -86,13 +96,26 @@
"upcomingAssignments": "即将到期的作业",
"grades": "成绩",
"myClasses": "我的班级",
"gradeTrends": "成绩趋势"
"gradeTrends": "成绩趋势",
"homework": "作业",
"recentSubmissions": "最近提交",
"classPerformance": "班级表现",
"recentGrades": "最近成绩"
},
"table": {
"name": "姓名",
"email": "邮箱",
"role": "角色",
"created": "创建时间"
"created": "创建时间",
"student": "学生",
"assignment": "作业",
"submitted": "提交时间",
"action": "操作",
"title": "标题",
"status": "状态",
"due": "截止时间",
"score": "分数",
"when": "时间"
},
"empty": {
"noUsers": "暂无用户",
@@ -105,12 +128,31 @@
"noChildrenDesc": "您的账号尚未关联任何学生账号,请联系学校管理员完成绑定。",
"noStudent": "未找到学生用户",
"noStudentDesc": "请创建学生账号以查看仪表盘。",
"contactSupport": "联系客服"
"contactSupport": "联系客服",
"noClassesYet": "暂无班级",
"noClassesDesc": "创建班级以开始管理学生与课表。",
"noAssignments": "暂无作业",
"noAssignmentsDesc": "创建作业以开始布置任务。",
"noAssignmentsStudent": "暂无作业",
"noAssignmentsStudentDesc": "当前没有布置给你的作业。",
"noClassesToday": "今日无课",
"noClassesTodayDesc": "今日课表为空。",
"noNewSubmissions": "暂无新提交",
"noNewSubmissionsDesc": "全部处理完成!暂无新提交需要批改。",
"noData": "暂无数据",
"noDataDesc": "发布作业后即可查看班级表现趋势。",
"noGradedWork": "暂无已批改作业",
"noGradedWorkDesc": "完成并提交作业后即可查看成绩趋势。"
},
"badge": {
"activeSessions": "{count} 个活跃会话",
"users": "{count} 位用户",
"childrenLinked": "已关联 {count} 个孩子"
"childrenLinked": "已关联 {count} 个孩子",
"live": "进行中",
"late": "已迟交",
"inProgress": "进行中",
"upNext": "下一节",
"unknown": "未知"
},
"error": {
"loadFailed": "页面加载失败",
@@ -121,6 +163,26 @@
},
"chart": {
"newUsers": "新增用户",
"newSubmissions": "新增提交"
"newSubmissions": "新增提交",
"averageScorePercent": "平均分 (%)",
"scorePercent": "分数 (%)",
"classPerformanceDesc": "最近 {count} 份作业的平均分",
"submittedCount": "{submitted}/{total} 已提交",
"latest": "最新",
"points": "得分"
},
"schedule": {
"noDueDate": "无截止日期",
"scrollForMore": "滚动查看更多",
"noMoreClasses": "今日无更多课程",
"homeroom": "班主任",
"room": "教室"
},
"action": {
"review": "查看",
"view": "查看",
"continue": "继续",
"start": "开始",
"grade": "批改"
}
}