Commit Graph

32 Commits

Author SHA1 Message Date
En
6f64723428 feat: 教师端数据看板与学校端课程统计功能
教师端数据看板:
- 新增 TeacherDashboardResponse/TeacherLessonVO/TeacherLessonTrendVO
- 新增 TeacherWeeklyStatsResponse 周统计响应
- 新增 TeacherActivityLevel 枚举和 TeacherActivityRankResponse 活跃度排行
- 实现教师端课程统计、任务完成详情、任务反馈接口

学校端课程统计:
- 新增 CourseUsageVO/CourseUsageStatsVO/CoursePackageVO
- 新增 SchoolCourseResponse 和学校端课程使用查询接口
- 实现学校端统计数据和课程趋势接口

用户资料功能:
- 新增 UpdateProfileRequest/UpdateProfileResponse
- 实现用户资料更新接口

前后端对齐:
- 更新 OpenAPI 规范和前端 API 类型生成
- 优化 DashboardView 组件和 API 调用

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 12:45:56 +08:00
zhonghua
c93d325cee fix: 课后记录页面前后端对齐 - 修改 getStudentRecords 返回 { lesson, students } 结构 - 修改 batchSaveStudentRecords 接受 { records } 请求体 - 新增 StudentRecordsResponse/StudentWithRecordResponse/BatchStudentRecordsRequest - 前端增强数据容错
Made-with: Cursor
2026-03-20 16:11:08 +08:00
zhonghua
463c3d9922 feat: 阅读任务模块 - 关联绘本、任务模板与教师端优化
Made-with: Cursor
2026-03-20 15:55:33 +08:00
zhonghua
26f55da670 Merge branch 'retirado' of http://8.148.151.56:3000/tonytech/kindergarten_java
# Conflicts:
#	reading-platform-frontend/src/api/school.ts
#	reading-platform-frontend/src/api/teacher.ts
#	reading-platform-frontend/src/views/school/tasks/TaskListView.vue
#	reading-platform-frontend/src/views/teacher/tasks/TaskListView.vue
#	reading-platform-java/src/main/java/com/reading/platform/controller/school/SchoolTaskController.java
#	reading-platform-java/src/main/java/com/reading/platform/controller/teacher/TeacherTaskController.java
#	reading-platform-java/src/main/java/com/reading/platform/dto/response/TaskCompletionDetailResponse.java
#	reading-platform-java/src/main/java/com/reading/platform/service/TaskService.java
#	reading-platform-java/src/main/java/com/reading/platform/service/impl/TaskServiceImpl.java
2026-03-20 14:27:28 +08:00
Claude Opus 4.6
f62aa18e72 feat: 阅读任务模块重写(Phase 1-4)
## 主要变更

### 后端改造 (Phase 1)
- 新增 task_feedback 表存储教师评价
- task 表添加 related_book_name 字段
- task_completion 表添加 video_url, audio_url 字段
- 新增 TaskFeedback 实体和服务层
- 扩展 TaskService 支持完成情况查询和评价功能
- 学校端 API 改为只读模式 (/v1/school/reading-tasks)

### 教师端前端 (Phase 2)
- 创建任务弹窗添加关联绘本字段
- 完成情况弹窗支持新状态值 (PENDING/SUBMITTED/REVIEWED)
- 新增评价弹窗组件(评价结果、评分、评语)
- 显示提交内容预览(照片、视频、音频、文字)

### 家长端前端 (Phase 3)
- 提交功能改造支持照片上传(最多9张)
- 支持视频/音频链接输入
- 阅读心得文字输入
- 新增查看教师评价功能
- 状态驱动操作(待提交/已提交/已评价)

### 学校端前端 (Phase 4)
- 完全重写为只读模式
- 移除创建/编辑/删除功能
- 多维度筛选(关键字、类型、状态、日期、排序)
- 统计卡片(任务数、进行中、已提交、已评价)
- 任务详情弹窗
- 完成情况列表弹窗
- 提交详情弹窗

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-20 14:08:36 +08:00
zhonghua
37a6aba8cc feat: 任务完成情况 API 与 UI 优化
- 学校/教师端: 新增 GET/PUT 任务完成情况接口,支持分页与状态筛选
- 后端: TaskCompletionDetailResponse 含学生姓名、班级信息
- 后端: 新增 getTaskCompletionStats、getTaskCompletionsWithStudent
- 学校端: 状态筛选移至弹框标题后,分页始终显示
- 班级字段: 支持 ACTIVE 状态,无记录时用 student.grade 兜底
- 迁移 V43: 添加 student_class_history 测试数据

Made-with: Cursor
2026-03-20 11:48:56 +08:00
zhonghua
f90037dd17 feat: 根据排课lessonType直接进入子课程,子课程结束即上课结束;右侧添加课程类型展示
- 后端:LessonDetailResponse 新增 lessonType,从 SchedulePlan 读取
- 前端:根据 lessonType 直接进入对应子课程,子课程结束即上课结束
- 前端:右侧面板课程资源上方添加课程类型标签展示

Made-with: Cursor
2026-03-20 10:56:41 +08:00
zhonghua
8502d8b2d3 fix:优化上课备课路由死循环 2026-03-20 10:07:17 +08:00
zhonghua
ed9371b21f feat: 排课/预约优化与国际化
- main.ts: dayjs 时间国际化使用中文
- 排课日期禁止选择过去时间(学校端、教师端、校本课程预约)
- 移除选择课程套餐,租户仅一个套餐直接展示课程包
- 教师端预约上课增加排课计划参考表格

Made-with: Cursor
2026-03-19 18:31:54 +08:00
zhonghua
824ce7ad80 feat: 教师端预约上课与学校端新建排课流程一致
- 后端:教师可访问课程套餐/课程包/lesson-types API
- 后端:TeacherScheduleServiceImpl 支持 coursePackageId、lessonType
- 前端:新增 TeacherCreateScheduleModal 四步流程(选择课程包→课程类型→班级→时间)
- 前端:ScheduleView 集成新弹窗
- 前端:课程中心 PrepareModeView 预约上课使用相同四步流程,支持预设

Made-with: Cursor
2026-03-19 18:14:25 +08:00
zhonghua
3f6696d7bb feat: 教师端排课优化
- 排课详情/课表:显示班级、课程、课程类型(使用 toSchedulePlanResponse 填充)
- 开始上课:改用 from-schedule API,避免 teacherId/title/lessonDate 校验失败
- 前端:TeacherSchedule 增加 lessonType/coursePackageName,课程展示兼容 coursePackageName

Made-with: Cursor
2026-03-19 18:00:03 +08:00
zhonghua
20c500e921 feat: 教师课程中心 - 年级/领域/课程类型筛选与 lessonTags 展示
- 新增 lessonType 筛选参数,支持 SOCIAL/SOCIETY/DOMAIN_* 等格式兼容
- 列表接口返回 lessonTags(name,lessonType) 供 tag 展示
- 新增 LessonTagResponse DTO
- 完善 tagMaps 与 LESSON_TYPE_NAMES 映射(INTRO/DOMAIN_*)
- 修复筛选参数未传递到接口的问题

Made-with: Cursor
2026-03-19 15:01:13 +08:00
zhonghua
81dd74662e fix: 修复 /api/v1/school/courses 接口 gradeTags 前端显示数据丢失
- 后端: 增强 SchoolCourseController.parseJsonArray 兼容多种 JSON 格式
- 后端: 新增 SchoolCourseResponse,gradeTags/domainTags 规范为 String[]
- 前端: 学校端课程列表/详情统一使用 parseGradeLevels 解析 gradeTags
- 前端: 兼容 grade_tags/domain_tags snake_case 字段

Made-with: Cursor
2026-03-19 14:05:28 +08:00
zhonghua
43d5bc8662 fix: 教学资源区域增加间距,避免动画被遮挡
Made-with: Cursor
2026-03-18 14:13:57 +08:00
zhonghua
eb1b1a3153 课程包详情: 核心发展目标字段翻译为中文显示
Made-with: Cursor
2026-03-17 17:56:30 +08:00
zhonghua
0baf3936d0 课程详情: 收藏/已收藏图标颜色区分(红/灰)
Made-with: Cursor
2026-03-17 17:47:49 +08:00
zhonghua
971f78e630 KidsMode: 取消 controlsVisible 自动隐藏底部导航
Made-with: Cursor
2026-03-17 17:25:43 +08:00
En
6af88225c9 fix: 数据看板前后端接口数据结构差异修复
- admin.ts: 新增后端响应类型定义和数据映射函数
  - AdminStatsResponse, StatsTrendResponse, ActiveTenantResponse, PopularCourseResponse
  - mapStatsData, mapTrendData, mapActiveTenants, mapPopularCourses
- admin/DashboardView: 活跃租户列表显示调整
- teacher/DashboardView: 数据加载添加字段映射和默认值处理
- school/DashboardView: 图表初始化添加空数据处理和数据校验

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 16:21:51 +08:00
zhonghua
459fa434ac feat: KidsMode 文档/视频预览调整,player 增强
- KidsMode: 视频对接 player 组件,文档对接 WebOffice 组件
- WebOffice: 新增 noPage 嵌入模式,支持 props 传入 url/fileName
- player: 参考 VideoPlayer 增强功能(title、emit、键盘快捷键、加载遮罩、唯一ID)

Made-with: Cursor
2026-03-17 14:43:08 +08:00
zhonghua
c8ecbe277c fix: 教师端课程与授课记录优化
- 修复 assessment_data JSON 字段:普通文本自动包装为有效 JSON
- 修复返回时页面 ID 丢失:校验无效 ID 并跳转,goBackToDetail 优先使用路由 ID
- 修复上课记录列表:getLessons 支持 pageNum、日期范围、状态映射,list 转 items
- 修复班级与课程取值:LessonResponse 增加 courseName/className,接口返回时自动填充
- 备课/详情页增加 ID 校验,防止跳转到 undefined

Made-with: Cursor
2026-03-17 11:24:25 +08:00
zhonghua
03726b5ab8 样式优化 2026-03-17 09:56:38 +08:00
zhonghua
709e59e142 feat: 展播模式优化与排课表修复
- 展播模式:空状态/错误状态添加返回上课按钮
- 展播模式:退出时自动跳转回上课页面或关闭标签页
- 数据库:lesson表id添加AUTO_INCREMENT,修复预约上课报错

Made-with: Cursor
2026-03-16 19:22:06 +08:00
zhonghua
4a713c41d3 chore: 隐藏通知设置及顶部通知铃铛
- 学校端系统设置:移除通知设置卡片
- 超管端系统设置:移除通知设置标签页
- 各端 Layout:移除顶部通知铃铛图标

Made-with: Cursor
2026-03-16 15:32:19 +08:00
zhonghua
f25664cf9a feat: 实现各端个人信息功能
- 新增 ProfileView 共享个人信息页面
- 扩展 auth API UserProfile 支持各角色
- 为 admin/school/teacher/parent 添加 profile 路由
- 各端 Layout 用户菜单增加个人信息入口及跳转
- 家长端移动版抽屉菜单增加个人信息入口

Made-with: Cursor
2026-03-16 15:04:48 +08:00
zhonghua
23eab43590 fix(teacher): 教师端多项修复
- 课程中心: 修复搜索框重复图标、页面无数据、gradeTags/domainTags 解析
- 备课/上课: 课程/授课 ID 使用 string 避免 Long 精度丢失
- 预约上课: 补充 teacherId/title/lessonDate 等必填字段
- 备课模式: 解析 gradeTags 字符串修复 translateGradeTags 报错
- 涉及: CourseListView, PrepareModeView, LessonView, BroadcastView, LessonRecordsView

Made-with: Cursor
2026-03-16 14:54:18 +08:00
En
6e11c874d2 chore: 忽略 target 目录和 .class 文件
- 添加 target/ 到 .gitignore
- 从 git 暂存区移除已追踪的 target 目录

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 16:50:54 +08:00
En
1aec778dd6 fix: 修复教师端成长档案列表 loading 问题
- 删除 teacher.ts 中重复的 getTeacherCourseUsage 导出
- 修复 GrowthRecordView.vue 中字段名不匹配:items -> list

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 16:36:57 +08:00
Claude Opus 4.6
e07e21f430 Merge design branch - 代码重构规范化完成
合并内容:
- 后端 Swagger/OpenAPI 配置
- 后端 DTO 规范化
- 前端 Orval API 客户端自动生成
- 前端文件路由配置
- 所有测试文件和配置

冲突解决:
- main.ts: 保留 Swagger 和 TransformInterceptor
- package.json: 合并 orval 相关脚本和依赖
- playwright.config.ts: 使用 design 分支配置
- .env: 保留 design 分支配置
- 启动脚本: 保留 design 分支版本

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 17:27:48 +08:00
Claude Opus 4.6
4e13f186f3 fix: 统一修改错误处理逻辑
- 将所有 error.response?.data?.message 改为 error.message
- 影响所有教师端组件的错误处理
- 适配新的响应拦截器返回的错误对象结构

修改的文件:
- CourseListView.vue
- CourseDetailView.vue
- PrepareModeView.vue
- LessonListView.vue
- LessonView.vue
- LessonRecordsView.vue
- SchoolCourseEditView.vue
- ClassListView.vue
- ClassStudentsView.vue
- TaskListView.vue

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 14:33:44 +08:00
张逸遥
ad0204a59a 提交说明 2026-02-28 16:41:39 +08:00
zhonghua
0d4d9f5768 菜单顶部栏优化 2026-02-28 06:44:56 +08:00
lesingle
54f6daea62 Initialize the Kindergarten platform source code. 2026-02-26 15:22:26 +08:00