# 决策记录 > 记录每次讨论的结论和决策 --- ## 2025-01-29 第一次讨论 ### 讨论主题 项目背景、商业模式、角色分析、课程体系、教学场景 ### 已确认的结论 #### 1. 项目定位 - 面向幼儿园的B2B2C阅读教学服务平台 - 将优质绘本资源包装成教学课程 - 帮助幼儿园老师更好地完成教学工作 #### 2. 平台架构 - 超管端:管理所有租户、内容、数据 - 租户端:学校端、教师端、家长端 #### 3. 盈利模式 - 按年/学期向幼儿园收费 - 不同课程套餐包(基础/标准/高级) - 根据课程开展频次和地区需求定制 #### 4. 竞争优势 - 独家版权绘本资源 - 专业教研团队 - 强大的研发能力 #### 5. 角色核心诉求 | 角色 | 核心诉求 | |-----|---------| | 超管端 | 租户管理、内容管理、数据统计、运营监控 | | 学校端 | 教师管理、教学监督、数据报表、套餐管理 | | 教师端 | 备课、上课、活动开展、测评记录、家校沟通 | | 家长端 | 了解情况、配合教育、查看成长、亲子共读 | #### 6. 课程体系 - 课程构成:电子绘本 + 教学教案 + 教学课件 + 互动练习 - 分级:小班、中班、大班 - 标签:五大领域(健康/语言/社会/科学/艺术)+ 子主题 #### 7. 教学场景 - 一日活动:绘本教学 → 五大领域延伸活动 - 延伸活动形式:动手、交流、游戏等,丰富多样 #### 8. 测评功能 - 过程化展示,非简单打分 - 展示:阅读数量、内容覆盖、成长情况、成长轨迹 - 支持角色:教师端记录、家长端查看 ### 待继续讨论 - [ ] 教师端一节课的完整流程 - [ ] 五大领域延伸活动的平台支持方式 - [ ] 测评数据的具体来源和记录方式 - [ ] 《3-6岁儿童学习与发展指南》文档 --- ## 下次讨论重点 1. 教师端核心流程详解 2. 延伸活动的素材准备和支持方式 3. 测评/成长档案的详细设计 --- ## 2025-01-29 第二次讨论(下午) ### 讨论主题 《3-6岁儿童学习与发展指南》解读与应用 ### 已确认的结论 #### 1. 指南文档已获取 - 来源:教育部《3-6岁儿童学习与发展指南》(2012年9月) - 位置:已复制到项目文件夹作为参考资料 #### 2. 五大领域官方结构确认 | 领域 | 子领域数量 | 目标数量 | |-----|-----------|---------| | 健康 | 3个 | 9个 | | 语言 | 2个 | 6个 | | 社会 | 2个 | 6个 | | 科学 | 2个 | 6个 | | 艺术 | 2个 | 4个 | | **合计** | **11个** | **31个** | #### 3. 标签体系层级设计 ``` 一级:五大领域(5个) └─ 二级:子领域(11个) └─ 三级:发展目标(31个) └─ 四级:年龄段指标(93个) ``` #### 4. 测评维度设计方向 - 基于指南的31个目标设计测评维度 - 过程化展示:阅读数量、领域覆盖、能力发展、成长轨迹 - 五大领域可视化呈现(星级或进度条) #### 5. 项目文档更新 - ✅ 创建《06-指南解读与应用.md》 - ✅ 更新《03-课程体系.md》标签体系部分 - ✅ 复制指南文档到项目文件夹 ### 待继续讨论 - [ ] 教师端一节课的完整流程 - [ ] 五大领域延伸活动的平台支持方式 - [ ] 测评数据的具体来源和记录方式 - [ ] 完整的标签体系编码方案 - [ ] 教案模板的标准化设计 --- ## 2025-01-29 第三次讨论(下午续) ### 讨论主题 课程包详细设计与教师端功能设计 ### 已确认的结论 #### 1. 课程包定位明确 - **核心价值**:"傻瓜式"完整教学解决方案 - **覆盖范围**:"一日活动"全流程(课前-课中-课后) - **设计理念**:老师只需熟悉内容,跟着指引执行 #### 2. 课程包内容结构 | 组成部分 | 具体内容 | |---------|---------| | 绘本数字资源 | 电子绘本、配套音频、配套视频 | | 教学课件 | 互动PPT、动画组件、互动组件 | | 课堂计划 | 导入/引导/共读/活动/结束的完整脚本 | | 延伸活动 | 线上多媒体素材+线下素材说明+活动指引 | | 测评工具 | 观察记录表、参与情况记录、掌握情况评估 | #### 3. 教师权限 | 可做 | 不可做 | |-----|--------| | 浏览预览全部内容 | 修改课程包内容 | | 熟悉课程流程 | 下载课程包内容 | | 调整执行步骤 | 分享给非授权用户 | | 记录反馈 | - | #### 4. 更新迭代机制 - 教研团队制作课程包 - 提供反馈渠道给老师 - 根据反馈优化更新 #### 5. 测评维度 比之前更丰富,包括: - 一日活动参与情况 - 孩子掌握情况 - 月度成长情况 - 阶段性测试结果 ### 项目文档更新 | 文档 | 更新内容 | |-----|---------| | `07-课程包设计.md` | ✅ 新建,完整记录课程包设计 | | `08-教师端功能设计.md` | ✅ 新建,教师端完整功能设计 | ### 待继续讨论 - [ ] 超管端功能设计 - [ ] 学校端功能设计 - [ ] 家长端功能设计 - [ ] 技术形态选择(Web/App/小程序) - [ ] MVP阶段功能优先级 --- --- ## 2025-02-04 第四次讨论 ### 讨论主题 超管端功能设计、教师端课程包使用流程 ### 已确认的结论 #### 1. 超管端核心功能明确 | 模块 | 功能 | |-----|------| | 课程包制作工作台 | 6步完整流程:基础信息→数字资源→教学课件→课堂计划→延伸活动→测评工具 | | 课程包管理 | 列表、筛选、状态流转(草稿→审核→发布→下架/迭代) | | 课程包数据统计 | 使用学校数、教师数、授课次数、教师反馈汇总 | | 租户管理 | 开通学校、套餐配置、课程授权、账号管理 | | 资源库管理 | 绘本库、多媒体素材、模板库 | | 数据统计看板 | 平台整体数据、课程排行、学校排行、反馈汇总 | | 系统配置 | 标签体系、年级配置、权限角色、参数配置 | #### 2. 课程包制作流程 ``` 新建课程包 → 上传数字资源 → 配置教学课件 → 编辑教学脚本(核心) → 配置延伸活动 → 配置测评工具 → 预览测试 → 提交审核 → 审核发布 → 发布后监控 ``` #### 3. 课程包审核机制 - 审核检查项:内容完整性、教学科学性、素材质量、标签准确性、版权合规 - 审核通过后发布,不通过返回修改 - 支持版本迭代和历史记录 #### 4. 教师端使用流程 ``` 浏览课程包 → 查看详情 → 备课模式(熟悉内容/准备素材) → 上课模式(按脚本执行)→ 结束上课 → 快速记录 → 详细反馈 → 测评记录 ``` #### 5. 教师端核心模式 | 模式 | 功能 | |-----|------| | 浏览模式 | 筛选、搜索、查看课程包详情 | | 备课模式 | 左侧导航+右侧预览+备课笔记+素材清单 | | 上课模式 | 大屏展示+环节导航+互动组件+工具栏(暂停/音频/课件/笔记/计时器) | | 反馈模式 | 快速记录+详细反馈表+测评记录 | #### 6. 教师端权限边界 - ✅ 可以:浏览、预览、使用、记录、反馈、添加笔记、管理班级 - ❌ 不能:修改课程包、下载课程包、分享给他人、访问未授权课程 #### 7. 数据闭环 ``` 超管端发布 → 教师端使用 → 反馈数据回流 → 超管端迭代优化 ``` ### 项目文档更新 | 文档 | 更新内容 | |-----|---------| | `10-超管端功能设计.md` | ✅ 新建,完整超管端功能设计 | | `08-教师端功能设计-补充.md` | ✅ 新建,详细课程包查看与使用流程 | ### 待继续讨论 - [ ] 课程包是否支持版本历史记录? - [ ] 课程包下架后,已使用该课程的学校是否仍能查看? - [ ] 上课模式是否需要支持离线使用? - [ ] 教师笔记是否支持导出? - [ ] 待上清单是否支持周期性自动排课? --- ## 后续讨论方向(待继续) ### 按优先级排序 **高优先级(必须完成):** 1. ✅ 超管端功能设计(管理课程包、租户、数据) 2. ✅ 教师端课程包使用流程 3. 技术形态决策(Web/App/小程序) 4. MVP阶段功能范围确定 **中优先级(重要):** 5. 学校端功能设计(园长/管理员视角) 6. 数据统计与报表设计 **低优先级(可后续):** 7. 家长端功能设计(MVP阶段可不做) 8. 详细的原型设计 --- ## 2025-02-04 第五次讨论 ### 讨论主题 技术形态决策、MVP功能范围 ### 已确认的结论 #### 1. 技术形态决策 | 端 | 技术形态 | 说明 | 实现版本 | |---|---------|------|---------| | 超管端 | Web端 | PC浏览器访问,复杂内容管理操作 | ✅ MVP | | 学校端 | Web端 | PC浏览器访问,数据查看和管理 | ✅ MVP | | 教师端 | Web端 | PC/平板浏览器访问,支持投屏上课 | ✅ MVP | | 家长端 | H5响应式 | 手机/平板访问,支持微信内打开 | ⬜ V2 | #### 2. MVP第一版范围 **目标:验证商业模式和课程包价值** | 端 | 核心功能 | |---|---------| | 超管端 | 课程包制作、课程包管理、租户管理、资源库、基础数据统计 | | 学校端 | 教师管理、课程授权查看、基础数据看板 | | 教师端 | 课程中心、备课模式、上课模式、班级管理、反馈记录 | **不包含:** - 家长端(V2版本实现) - 复杂的数据分析(MVP仅基础统计) - AI相关功能(后续版本) #### 3. MVP验证指标 - 内容完成度:≥10个课程包(覆盖小/中/大班) - 试点学校:≥5所幼儿园 - 活跃教师:≥20人 - 使用次数:≥100次授课 - 反馈收集:≥50条反馈 - 付费意愿:≥2所续费意向 #### 4. 开发顺序(预计12-14周) 1. Phase 1:基础框架(2周)- 架构、认证、权限、标签体系 2. Phase 2:超管端核心(3-4周)- 课程包制作、管理、租户 3. Phase 3:教师端核心(3-4周)- 课程中心、备课、上课 4. Phase 4:学校端(2周)- 教师管理、数据看板 5. Phase 5:反馈与数据(2周)- 反馈收集、测评、统计 ### 项目文档更新 | 文档 | 更新内容 | |-----|---------| | `11-技术形态与MVP范围.md` | ✅ 新建,技术选型、MVP功能清单、开发计划 | ### 待继续讨论 - [ ] 前端技术栈选择(Vue vs React) - [ ] 后端技术栈选择(Node.js vs Java vs Go) - [ ] 是否需要支持离线使用(教师端上课模式) - [ ] 数据模型设计 - [ ] API接口设计 --- ## 后续讨论方向(待继续) ### 按优先级排序 **已完成:** 1. ✅ 超管端功能设计(管理课程包、租户、数据) 2. ✅ 教师端课程包使用流程 3. ✅ 技术形态决策(Web端 vs App vs 小程序) 4. ✅ MVP阶段功能范围确定 **下一步:** 5. 学校端功能设计(园长/管理员视角) 6. 数据统计与报表设计 7. 数据模型设计 8. API接口设计 --- ## 2025-02-04 第六次讨论 ### 讨论主题 学校端功能设计、数据模型与API设计 ### 已确认的结论 #### 1. 学校端功能设计完成 | 模块 | 功能 | |-----|------| | 首页看板 | 学校数据概览、授课趋势、活跃教师/课程排行、套餐状态 | | 教师管理 | 教师列表、新增/编辑教师、教师详情、数据查看 | | 课程管理 | 已授权课程包、课程包使用数据、教师反馈汇总 | | 学生管理 | 学生列表、班级管理、学生成长档案 | | 套餐管理 | 套餐详情、使用情况、到期信息、套餐对比 | | 数据报表 | 授课统计、教师活跃度、课程包排行、班级数据、学生阅读统计 | | 系统设置 | 学校信息、年级班级配置、通知设置 | #### 2. 数据模型设计完成 - **15张核心表**:租户、教师、学生、班级、课程包、课程资源、课程脚本、逐页配置、延伸活动、授课记录、课程反馈、学生测评、标签、租户课程授权 - **实体关系**:租户 → 教师 → 班级 → 学生,课程包 → 授课记录 - **数据权限**:超管端(全部数据)→ 学校端(本校数据)→ 教师端(自己班级数据) #### 3. API接口设计完成 - **接口规范**:HTTPS + JSON + JWT认证 - **超管端API**:课程包CRUD、资源管理、脚本管理、租户管理 - **学校端API**:教师管理、学生管理、班级管理、数据统计 - **教师端API**:课程包浏览、备课、上课、反馈、测评 - **公共API**:标签体系、年级配置、文件上传 ### 项目文档更新 | 文档 | 更新内容 | |-----|---------| | `12-学校端功能设计.md` | ✅ 新建,学校端完整功能设计 | | `13-数据模型与API设计.md` | ✅ 新建,15张核心表设计、API接口规范 | ### 待继续讨论 - [ ] 前端技术栈选择(Vue vs React) - [ ] 后端技术栈选择(Node.js vs Java vs Go) - [ ] 数据库选型确认 - [ ] 开发环境搭建 --- ## 后续讨论方向(待继续) ### 按优先级排序 **已完成:** 1. ✅ 超管端功能设计(管理课程包、租户、数据) 2. ✅ 教师端课程包使用流程 3. ✅ 技术形态决策(Web端 vs App vs 小程序) 4. ✅ MVP阶段功能范围确定 5. ✅ 学校端功能设计(园长/管理员视角) 6. ✅ 数据模型设计 7. ✅ API接口设计 **下一步(技术选型):** 8. 前端技术栈确认 9. 后端技术栈确认 10. 数据库选型确认 11. 开发环境搭建 **后续版本:** 12. 家长端功能设计(V2版本实现) 13. 详细的原型设计 14. UI/UX设计 --- ## 2025-02-04 第七次讨论 ### 讨论主题 项目开发启动 - 技术选型确认与项目初始化 ### 已确认的结论 #### 1. 技术栈最终确认 | 层级 | 技术选择 | 版本 | |-----|---------|------| | 前端框架 | Vue 3 | ^3.4.0 | | 构建工具 | Vite | ^5.0.0 | | UI组件库 | Ant Design Vue | ^4.0.0 | | 状态管理 | Pinia | ^2.1.0 | | 后端框架 | NestJS | ^10.0.0 | | ORM | Prisma | ^5.0.0 | | 数据库 | PostgreSQL | ^15.0.0 | | 认证 | JWT + Passport | - | #### 2. 项目初始化完成 - ✅ 前端项目结构创建(Vue3 + Vite + Ant Design Vue) - ✅ 后端项目结构创建(NestJS + Prisma) - ✅ 数据库模型定义(15张核心表) - ✅ 路由配置(三端路由分离) - ✅ 认证系统框架 - ✅ API请求封装 #### 3. 已创建的文件 **前端核心文件:** - package.json - 依赖配置 - vite.config.ts - Vite配置 - src/router/index.ts - 路由配置 - src/stores/user.ts - 用户状态管理 - src/api/index.ts - API封装 - src/api/auth.ts - 认证API - src/views/auth/LoginView.vue - 登录页 - src/views/admin/LayoutView.vue - 超管端布局 - src/views/admin/DashboardView.vue - 超管端首页 - src/views/admin/courses/CourseListView.vue - 课程包列表 **后端核心文件:** - package.json - 依赖配置 - prisma/schema.prisma - 数据库模型(15张表) - src/main.ts - 应用入口 - src/app.module.ts - 根模块 #### 4. 项目已就绪 | 项目 | 状态 | 目录 | |-----|------|-----| | 前端项目 | ✅ 结构已完成 | `/Users/retirado/ccProgram/reading-platform-frontend/` | | 后端项目 | ✅ 结构已完成 | `/Users/retirado/ccProgram/reading-platform-backend/` | | 文档 | ✅ 开发指南已创建 | `/Users/retirado/ccProgram/reading-platform/README.md` | ### 项目文档更新 | 文档 | 更新内容 | |-----|---------| | `14-技术选型与项目初始化.md` | ✅ 新建,技术栈确认、项目结构、开发计划 | | `reading-platform/README.md` | ✅ 新建,完整开发指南 | | 前端项目 | ✅ 多个核心文件已创建 | | 后端项目 | ✅ 多个核心文件已创建 | ### 下一步开发任务 - [x] 安装项目依赖(前端、后端) - [x] 启动数据库(SQLite,开发阶段) - [x] 配置环境变量 - [x] 运行Prisma迁移 - [x] 实现认证系统完整功能 - [x] 实现权限管理(角色守卫) - [ ] 开发超管端课程包CRUD(进行中) - [ ] 开发教师端课程中心 - [ ] 开发学校端基础功能 --- ## 2025-02-12 第八次讨论 ### 讨论主题 超管端课程包管理模块开发与测试 ### 已完成的工作 #### 1. 代码审查与问题修复 | 问题 | 修复内容 | |-----|---------| | 认证守卫缺失 | course.controller.ts 添加 JwtAuthGuard 和 RolesGuard | | 角色守卫未实现 | 创建 roles.decorator.ts 和 roles.guard.ts | | 冗余文件 | 删除 course 模块下的 .js 文件 | | 字段清除错误 | course.service.ts 中 fieldsToClear 数组修复 | | 测试代码残留 | CourseEditView.vue 中移除测试注释 | #### 2. Bug 修复 | Bug | 修复方案 | |-----|---------| | 其他素材不回显 | CourseEditView.vue 中字段名从 `data.otherPaths` 改为 `data.otherResources` | | 文件大小限制过小 | 从 50MB 更新到 300MB(前后端同步修改) | | 电子绘本不支持 pptx | file-upload.service.ts 中 ebook 类型添加 ppt/pptx MIME 类型支持 | #### 3. 文件大小限制配置 | 文件类型 | 最大大小 | |---------|---------| | 封面图 (COVER) | 10MB | | 电子书 (EBOOK) | 300MB | | 音频 (AUDIO) | 300MB | | 视频 (VIDEO) | 300MB | | PPT | 300MB | | 海报 (POSTER) | 10MB | | 其他 (OTHER) | 300MB | #### 4. 电子书支持的文件格式 - PDF (`application/pdf`) - PPT (`application/vnd.ms-powerpoint`) - PPTX (`application/vnd.openxmlformats-officedocument.presentationml.presentation`) ### 修改的文件 **后端:** - `src/modules/course/course.controller.ts` - 添加认证守卫 - `src/modules/course/course.service.ts` - 修复字段清除逻辑 - `src/modules/file-upload/file-upload.controller.ts` - 更新文件大小限制 - `src/modules/file-upload/file-upload.service.ts` - 更新文件大小限制、添加 pptx 支持 - `src/modules/common/decorators/roles.decorator.ts` - 新建 - `src/modules/common/guards/roles.guard.ts` - 新建 **前端:** - `src/views/admin/courses/CourseEditView.vue` - 修复其他素材回显、移除测试代码 - `src/api/file.ts` - 更新文件大小限制 ### 当前开发状态 **超管端课程包管理模块:** - [x] 课程包列表页面 - [x] 课程包创建页面(6步表单) - [x] 课程包编辑页面 - [x] 课程包详情页面 - [x] 文件上传功能 - [x] 草稿保存功能 - [x] 数据回显功能 - [ ] 测试完成,待继续开发 ### 下一步任务 - [ ] 继续测试课程包创建流程 - [ ] 开发课程包审核功能 - [ ] 开发课程包发布/下架功能 - [ ] 开发教师端课程中心 --- ## 2026-02-13 第九次讨论 ### 讨论主题 资源库开发策略确认与文档统一更新 ### 已确认的结论 #### 1. 资源库开发策略(三阶段) 根据 `11-技术形态与MVP范围.md` 文档,MVP阶段P0优先级为课程包制作和管理核心功能,资源库(P1)可在核心功能完成后再开发。 **第一阶段(当前):完成课程包核心功能** - 课程包创建/编辑 - 直接上传资源到课程包 - 课程包审核/发布流程 - 课程包列表管理 - 关联绘本:使用简单的文本输入框(手动输入绘本名称) **第二阶段(后续):完善资源库** - 开发资源库的完整管理功能 - 绘本库:绘本资源管理(名称、作者、适切年级、封面、授权状态) - 多媒体素材库:音频、视频、图片、互动组件管理 - 模板库:教学脚本模板、记录表模板、评估表模板 - 课程包中已上传的资源可选择性同步到资源库 **第三阶段(整合优化):重构资源选择逻辑** - 课程包编辑时提供两种选择方式: 1. **从资源库选择** - 引用已有资源 2. **上传新资源** - 同时添加到资源库和课程包 - 关联绘本:改为从绘本库选择 + 支持新增绘本 #### 2. 当前开发状态确认 **已完成**: - ✅ 项目架构搭建 - ✅ 用户认证系统 - ✅ 权限管理系统 - ✅ 标签体系初始化 - ✅ 课程包制作工作台(6步流程) - ✅ 课程包管理(草稿/发布/审核) - ✅ 课程包审核流程 - ✅ 教师端课程中心 - ✅ 教师端备课模式 - ✅ 教师端上课模式 **进行中**: - 🔄 租户管理 - 🔄 班级管理 - 🔄 学校端框架 **待开发(第二阶段)**: - ⬜ 资源库管理 - ⬜ 数据统计看板 #### 3. 文档更新要求 所有文档需要与当前开发情况和目标保持一致,确保后续开发过程中回溯文档寻找依据时查询到的依据都是正确的。 ### 项目文档更新 | 文档 | 更新内容 | |-----|---------| | `开发进展记录.md` | ✅ 添加资源库开发策略部分 | | `README.md` | ✅ 更新项目状态、技术栈、开发进度 | | `99-决策记录.md` | ✅ 添加资源库开发策略决策 | ### 下一步任务 - [ ] 完成课程包编辑功能测试 - [ ] 完成教师端端到端测试 - [ ] 开发资源库管理(第二阶段) - [ ] 开发数据统计看板