## 租户隔离修复 - 修复 SchoolCourseController 硬编码 tenantId=1L 的严重 bug - 为 SchoolClassController 8个接口添加租户验证 - 为 SchoolTeacherController 4个接口添加租户验证 - 为 SchoolStudentController 3个接口添加租户验证 - 为 SchoolParentController 6个接口添加租户验证 - 为 SchoolTaskController 3个接口添加租户验证 - 为 SchoolGrowthController 3个接口添加租户验证 ## Map 返回类型改 Response - SchoolTaskTemplateController: Map → TaskTemplateResponse - SchoolScheduleController: Map → SchedulePlanResponse - SchoolPackageController: Map → PackageInfoResponse/PackageUsageResponse - SchoolSettingsController: Map → SchoolSettingsResponse 等 - SchoolReportController: Map → ReportOverviewResponse 等 ## 新增 Response DTO - PackageInfoResponse, PackageUsageResponse - SchoolSettingsResponse, BasicSettingsResponse - NotificationSettingsResponse, SecuritySettingsResponse - ReportOverviewResponse, TeacherReportResponse - CourseReportResponse, StudentReportResponse ## 新增 Request DTO - RenewRequest, SchoolSettingsUpdateRequest - BasicSettingsUpdateRequest, NotificationSettingsUpdateRequest - SecuritySettingsUpdateRequest Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| design | ||
| dev-logs | ||
| screenshots | ||
| test-logs | ||
| CHANGELOG.md | ||
| CHANGELOG.md.tmp.28092.1773493785933 | ||
| course-list-with-delete.png | ||
| generate-docx.js | ||
| generate-pdf.py | ||
| Java后端启动指南.md | ||
| Java环境配置与启动指南.md | ||
| package.json | ||
| README.md | ||
| V10_MIGRATION_FIX.md | ||
| 产品介绍与功能说明.md | ||
| 产品简介.md | ||
| 前端项目规范.md | ||
| 幼儿阅读教学服务平台-产品介绍与功能说明.docx | ||
| 幼儿阅读教学服务平台-产品介绍与功能说明.pdf | ||
| 提示词记录.md | ||
| 数据库迁移指南.md | ||
| 统一开发规范.md | ||
幼儿阅读教学服务平台
面向幼儿园的B2B2C阅读教学服务平台,将优质绘本资源包装成教学课程,帮助幼儿园老师更好地完成教学工作。
项目状态
当前版本: MVP开发中 最后更新: 2026-02-21
开发进度
| 阶段 | 状态 | 说明 |
|---|---|---|
| Phase 1 - 基础框架 | ✅ 完成 | 项目架构、认证、权限 |
| Phase 2 - 超管端核心 | ✅ 完成 | 课程包制作、审核、发布 |
| Phase 3 - 教师端核心 | ✅ 完成 | 课程中心、备课、上课 |
| Phase 4 - 学校端 | ✅ 完成 | 教师/学生/班级管理 |
| Phase 5 - 家长端 | ✅ 完成 | 登录、阅读记录、成长档案 |
| Phase 6 - 功能测试 | 🔄 进行中 | 各端完整测试 |
技术架构
| 层级 | 技术 |
|---|---|
| 前端 | Vue 3 + Vite + Ant Design Vue + Pinia |
| 后端 | NestJS + Prisma |
| 数据库 | SQLite (开发) / PostgreSQL (生产) |
| 认证 | JWT + Passport |
| 存储 | 本地文件系统 |
项目结构
ccProgram/
├── reading-platform-frontend/ # 前端项目
│ ├── src/
│ │ ├── api/ # API请求
│ │ ├── views/ # 页面组件
│ │ │ ├── admin/ # 超管端
│ │ │ ├── school/ # 学校端
│ │ │ ├── teacher/ # 教师端
│ │ │ ├── parent/ # 家长端
│ │ │ └── auth/ # 登录
│ │ └── ...
│ └── package.json
│
├── reading-platform-backend/ # 后端项目
│ ├── src/
│ │ ├── modules/ # 业务模块
│ │ │ ├── auth/ # 认证
│ │ │ ├── course/ # 课程包
│ │ │ ├── school/ # 学校端
│ │ │ ├── teacher-course/ # 教师端
│ │ │ ├── lesson/ # 授课
│ │ │ ├── task/ # 任务
│ │ │ ├── growth/ # 成长档案
│ │ │ └── resource/ # 资源库
│ │ └── ...
│ ├── prisma/
│ │ └── schema.prisma # 数据模型
│ └── uploads/ # 文件存储
│
├── docs/ # 项目文档
│ ├── dev-logs/ # 开发日志
│ ├── design/ # 设计文档
│ ├── README.md # 本文档
│ └── CHANGELOG.md # 变更日志
│
├── start-all.sh # 统一启动脚本
└── stop-all.sh # 统一停止脚本
快速启动
方式一:统一启动(推荐)
cd /Users/retirado/ccProgram
./start-all.sh
方式二:分别启动
# 后端 (端口 3000)
cd reading-platform-backend
npm run start:dev
# 前端 (端口 5173)
cd reading-platform-frontend
npm run dev
访问地址
| 服务 | 地址 |
|---|---|
| 前端页面 | http://localhost:5173 |
| 后端API | http://localhost:3000/api/v1 |
| 静态文件 | http://localhost:3000/uploads |
测试账号
| 角色 | 账号 | 密码 |
|---|---|---|
| 超管端 | admin | 123456 |
| 学校端 | school1 | 123456 |
| 教师端 | teacher1 | 123456 |
| 家长端 | parent1 | 123456 |
| 家长端 | parent2 | 123456 |
四端功能
超管端
- 课程包制作工作台(6步流程)
- 课程包管理与审核
- 租户管理
- 资源库管理
学校端
- 数据概览
- 教师/学生/班级管理
- 课程使用统计
- 套餐管理
教师端
- 课程中心
- 备课模式
- 上课模式
- 课后反馈
- 成长档案
- 阅读任务
家长端
- 孩子信息查看
- 阅读记录
- 成长档案
- 亲子任务
文档索引
开发文档
- CHANGELOG.md - 变更日志
- dev-logs/ - 每日开发日志
设计文档
- design/README.md - 设计文档索引
- design/00-项目概览.md - 项目概览
- design/11-技术形态与MVP范围.md - MVP范围
- design/13-数据模型与API设计.md - 数据模型
查看日志
# 后端日志
tail -f /tmp/reading-platform-backend.log
# 前端日志
tail -f /tmp/reading-platform-frontend.log
下一步计划
- 完成各端功能测试
- 修复测试中发现的问题
- 考虑是否修复 TypeScript 编译警告
- 根据测试结果进行优化