kindergarten_java/docs/CHANGELOG.md
2026-02-28 16:41:39 +08:00

11 KiB
Raw Blame History

变更日志 (CHANGELOG)

本文档记录项目的所有重要变更。


[Unreleased]

待处理

  • TypeScript 编译警告修复约63个
  • 性能优化

[2026-02-28]

新增

  • 课程包第7步 - 环创建设
    • 课程包创建/编辑增加第7步"环创建设"
    • 富文本输入框最大3000字
    • 填写提示(主题环境布置、区域活动环境、阅读角创设、材料投放建议等)
    • 超管端和学校端课程包详情页展示环创建设内容

优化

  • 学校端课程管理年级Tab重设计
    • 原设计:使用 Ant Design Radio.Group与页面风格不协调
    • 新设计:白色卡片容器 + 自定义Tab按钮
    • 选中状态:绿色渐变背景,与页面头部呼应
    • 筛选功能:支持按年级(全部/小班/中班/大班)筛选课程

数据库变更

  • Course 表添加 environment_construction 字段TEXT类型

文件变更

  • 新增:Step7Environment.vue 组件
  • 修改7个文件后端2个前端5个

[2026-02-27]

新增

  • 课程包创建/编辑6步流程重构
    • 步骤1基本信息名称、主题、年级、核心内容、封面
    • 步骤2课程介绍8个Tab简介、亮点、目标、安排、重难点、方法、评价、注意事项
    • 步骤3排课计划参考可编辑表格
    • 步骤4导入课配置含资源上传、教学反思
    • 步骤5集体课配置含核心资源、4环节模板
    • 步骤6五大领域课配置健康/语言/社会/科学/艺术)
  • 新组件
    • FileUploader - 统一文件上传组件
    • LessonStepsEditor - 教学环节编辑器
    • LessonConfigPanel - 课程配置面板
  • 文件类型扩展
    • 新增 audio 音频类型支持
    • 新增 document 文档类型支持
    • PPT类型同时支持PDF格式
  • 数据库字段
    • 课程介绍8个字段introSummary等
    • coreContent 核心内容字段
    • scheduleRefData 排课参考字段

优化

  • 富文本输入框字符限制从500增加到1500
  • 添加字数统计显示show-count
  • 课程封面图片URL构建逻辑优化
  • 保存错误处理优化,添加详细日志

修复

  • 课程封面图片不显示 - URL路径重复问题
  • 导入课缺少资源上传功能
  • 导入课缺少教学反思字段
  • 教学课件只支持PPT不支持PDF
  • 保存课程偶发失败
  • 文件预览URL路径错误
  • 学校端课程详情不显示课程配置 - API缺少courseLessons关联
  • 超管端排课参考表格列名不匹配 - dayOfWeek/activity
  • 学校端排课参考表格不显示 - 数组类型判断

学校端新功能(晚上)

  • 套餐管理重构
    • 已授权套餐列表(卡片布局)
    • 套餐详情弹窗
    • 续订功能6/12/24个月
    • 到期状态提醒
  • 课程详情页适配新结构
    • 信息卡片网格布局
    • 课程介绍8个Tab
    • 排课参考表格
    • 课程配置卡片
    • 数字资源汇总
  • 校本课程包功能完善
    • 列表页统计概览
    • 预约功能弹窗
    • 排课管理弹窗
    • 详情页预约记录

文件变更

  • 后端新增14 个文件(新模块)
  • 后端修改3 个文件
  • 前端新增16 个文件(页面和组件)
  • 前端修改5 个文件

[2026-02-24]

新增

  • 学校端家长管理功能
    • 家长列表(卡片网格布局)
    • 家长CRUD操作创建、编辑、删除
    • 重置密码(生成临时密码)
    • 管理关联孩子(查看、添加、解除)
    • 关系标签显示(父亲/母亲/祖父/祖母/其他,不同颜色)
  • 选择孩子功能优化
    • 弹窗+表格+搜索方式替代下拉框
    • 支持按姓名搜索、按班级筛选
    • 分页加载,支持大量学生数据

修复

  • 家长管理页面重复变量声明错误 - 合并重复代码块
  • 学生选择表格行选择类型错误 - 修正 onChange 参数类型

优化

  • 孩子列表显示关系标签,格式为"关系XX"
  • 不同关系使用不同颜色标签区分
  • 移除未使用的代码allStudents、loadAllStudents、availableStudents

[2026-02-23]

新增

  • 学校端任务管理 API
    • SchoolTask、TaskCompletion 类型定义
    • getSchoolTasks、createSchoolTask、updateSchoolTask、deleteSchoolTask
    • getSchoolTaskCompletions 获取任务完成情况
  • 学校端导航菜单二级结构
    • 人员管理:教师管理、学生管理、班级管理
    • 教学管理:课程管理、课程排期、阅读任务、任务模板、课程反馈
    • 数据中心:数据报告、成长档案
    • 系统管理:套餐管理、操作日志、系统设置

修复

  • 学校端任务列表无法加载数据 - 补全 API 函数和类型定义
  • 教师端上课记录缺少布置任务入口 - 添加"课后记录"按钮跳转

优化

  • 学校端导航菜单重构14个扁平菜单 → 5个一级菜单 + 子菜单
  • 移除所有 Emoji 图标,使用 Ant Design Vue 图标组件
  • 添加 UI 规范:禁止使用 Emoji 图标

功能确认(已实现)

  • P1 数据统计增强
    • 学校端授课统计图表stats.service.ts
    • 教师端个人统计teacher-course.service.ts
    • 数据导出功能export.service.ts
  • P2 排课功能增强
    • 课程提醒schedule-notification.service.ts
    • 排课模板school.service.ts
    • 批量排课batchCreateSchedules
    • 拖拽调课CalendarView.vue + fullcalendar
  • P0 阅读任务模块
    • 家长端任务功能
    • 教师端完成情况详情页
    • 课后记录→布置任务流程
  • P2/P3 任务模块增强
    • 任务模板功能TaskTemplate
    • 任务提醒通知(定时任务+手动提醒)
    • 任务统计报表

[2026-02-22]

新增

  • 测试记录文档系统 (/docs/test-logs/)
  • 各端测试记录模板和规范
  • 班级管理功能增强
    • 数据模型ClassTeacher 关联表支持多教师协作、StudentClassHistory 调班历史表
    • 学校端:班级教师团队管理(添加/编辑/移除教师,设置角色和班主任)
    • 学校端:学生调班功能(选择目标班级、填写原因、查看调班历史)
    • 教师端:班级角色显示(主班/配班/保育员标签、班主任标记)
  • 超管端功能完善
    • 租户管理完整功能CRUD、配额调整、密码重置、状态管理
    • 系统设置后端API
    • 数据看板图表ECharts趋势图、统计卡片
  • 展播模式独立页面
    • 新路由 /teacher/broadcast/:id
    • 新标签页打开,便于教师投屏给学生看的同时自己查看讲稿
    • 支持通过 URL 参数 ?step=N 指定初始环节
    • 自动全屏、键盘快捷键支持
  • Lucide Vue Next 图标库

优化

  • "投屏模式"改名为"展播模式"
  • 移除授课页面冗余的全屏按钮
  • 展播页面深色主题设计,高对比度配色,适合课堂投影

测试

  • 超管端完整功能测试
    • 数据看板、资源库管理正常
    • 租户管理、系统设置已实现
  • 学校端回归测试
    • 所有模块正常
    • 修复系统设置页面导入错误
  • 教师端回归测试
    • 所有模块正常
  • 家长端功能测试
    • 所有模块正常
  • 展播模式自动化测试 (Playwright)
    • 新标签页打开功能
    • KidsMode 组件显示
    • 导航控制正常

修复

  • 学校端系统设置页面无法加载 - 修复 fileApi 导入方式 (SettingsView.vue)
  • 租户详情API 500错误 - BigInt转String序列化
  • 租户配额显示模板语法错误
  • 资源上传响应属性名不匹配
  • 文件下载URL未定义
  • 课程年级筛选API 500错误 - SQLite JSON查询兼容
  • 学生性别统计/显示不一致
  • 课程授权后统计未更新
  • 课程搜索不工作
  • 套餐配额数据不同步
  • 学生年龄显示格式异常
  • 学生调班API 500错误 - 前端变量名冲突 + 数据库字段约束 (StudentListView.vue, schema.prisma)
  • 学校端导航栏缺少班级管理入口 - 添加菜单项 (LayoutView.vue)
  • 教师端移除"添加新班级"功能 - 班级创建应由学校管理员操作 (ClassListView.vue)
  • PDF资源无法显示 - EbookViewer 使用 embed 标签替代 img 标签 (EbookViewer.vue)

测试验证

  • 班级教师管理功能 - 添加/编辑教师角色
  • 学生调班功能 - 调班操作和历史记录
  • 教师端班级角色显示 - 主班/班主任标签
  • 展播模式新标签页功能

[2026-02-21]

新增

  • 家长端完整功能
    • 登录、孩子信息
    • 阅读记录
    • 任务查看
    • 成长档案
  • 通知系统NotificationBell组件
  • 数据导出功能
  • 教师端课程反馈页面
    • GET /teacher/feedbacks - 反馈列表
    • GET /teacher/feedbacks/stats - 反馈统计

修复

  • 家长登录400错误 - LoginDto 添加 parent 角色
  • User 接口缺少 parent 角色类型
  • NotificationBell.vue 未使用的导入
  • tagMaps.ts 重复的 ART 属性
  • 教师端课程反馈404错误

[2026-02-14]

新增

  • 学校端核心管理模块
    • 教师管理 CRUD
    • 学生管理 CRUD + 批量导入
    • 班级管理
    • 统计数据
    • 套餐信息
  • 教师端首页API
    • 今日课程
    • 推荐课程
    • 本周统计
  • P1功能模块
    • 资源库管理
    • 成长档案
    • 阅读任务
    • 课程反馈

修复

  • 学校端登录失败 - Tenant模型添加 loginAccount/passwordHash
  • SQLite不支持@db.Text - 移除注解
  • classEntity.lessons不存在 - 使用 lessonCount 替代

[2026-02-13]

新增

  • 课程发布审核流程
    • 状态流转:草稿 → 待审核 → 已发布/已驳回
    • 发布前完整性验证
    • 版本历史快照
  • 文件预览功能
    • PDF预览iframe
    • 音视频播放器
    • 图片预览
    • PPT在线预览
  • 逐页脚本自动展开功能

修复

  • 课程编辑数据持久化问题
    • 课堂计划数据保存/加载
    • 延伸活动数据保存/加载
    • 测评工具数据保存/加载
  • "保存课程"按钮状态错误 - 改为 DRAFT
  • 提交审核验证逻辑错误
  • PaletteOutlined 图标不存在 - 替换为 BgColorsOutlined

优化

  • 延伸活动 UI 重新设计(卡片式布局)

[2026-02-12]

新增

  • 教师端核心业务流程打通
    • 课程中心
    • 备课模式
    • 上课模式
    • 课后记录
  • 种子数据脚本
  • 超管端课程包发布功能

修复

  • 教师端LayoutView编译错误 - JSX语法问题
  • 教师端API 404错误 - 模块未编译

[2026-02-10]

新增

  • 文件上传系统重构
    • FormData文件上传
    • Multer处理multipart/form-data
    • 本地文件系统存储
  • 多文件上传支持每分类15个单文件200MB
  • 统一启动脚本 (start-all.sh / stop-all.sh)

修复

  • 封面图片显示文件名问题 - 静态文件路径配置
  • 中文文件名乱码 - 安全文件名生成
  • Vue编译错误 - 重复函数声明

[2026-01-29] - 项目启动

新增

  • 项目初始化
  • 技术选型确定
  • 数据库模型设计15张表
  • 认证系统基础框架
  • 四端页面框架

版本说明

  • [Unreleased]: 开发中功能
  • [日期]: 当天发布的版本

本变更日志从 2026-02-22 开始规范化维护。