后端重构:
- 添加统一响应格式 ResultDto<T> 和 PageResultDto<T>
- 添加分页查询 DTO 基类 PageQueryDto
- 添加响应转换拦截器 TransformInterceptor
- 添加公共工具函数(JSON 解析、分页计算)
- 配置 Swagger/OpenAPI 文档(访问路径:/api-docs)
- Tenant 模块 DTO 规范化示例(添加 @ApiProperty 装饰器)
- CourseLesson 控制器重构 - 移除类级路径参数,修复 Orval 验证错误
- 后端 DTO 规范化 - 为 Course、Lesson、TeacherCourse、SchoolCourse 控制器添加完整的 Swagger 装饰器
前端重构:
- 配置 Orval 从后端 OpenAPI 自动生成 API 客户端
- 生成 API 客户端代码(带完整参数定义)
- 创建 API 客户端统一入口 (src/api/client.ts)
- 创建 API 适配层 (src/api/teacher.adapter.ts)
- 配置文件路由 (unplugin-vue-router)
- 课程模块迁移到新 API 客户端
- 修复 PrepareModeView.vue API 调用错误
- 教师模块迁移到新 API 客户端
- 修复 school-course.ts 类型错误
- 清理 teacher.adapter.ts 未使用导入
- 修复 client.ts API 客户端结构
- 创建文件路由目录结构
Bug 修复:
- 修复路由配置问题 - 移除 top-level await,改用手动路由配置
- 修复响应拦截器 - 正确解包 { code, message, data } 格式的响应
- 清理 teacher.adapter.ts 未使用导入
- 修复 client.ts API 客户端结构
- 创建文件路由目录结构
系统测试:
- 后端 API 测试通过 (7/7)
- 前端路由测试通过 (4/4)
- 数据库完整性验证通过
- Orval API 客户端验证通过
- 超管端功能测试通过 (97.8% 通过率)
新增文件:
- reading-platform-backend/src/common/dto/result.dto.ts
- reading-platform-backend/src/common/dto/page-query.dto.ts
- reading-platform-backend/src/common/interceptors/transform.interceptor.ts
- reading-platform-backend/src/common/utils/json.util.ts
- reading-platform-backend/src/common/utils/pagination.util.ts
- reading-platform-frontend/orval.config.ts
- reading-platform-frontend/src/api/generated/mutator.ts
- reading-platform-frontend/src/api/client.ts
- reading-platform-frontend/src/api/teacher.adapter.ts
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
||
|---|---|---|
| .. | ||
| design | ||
| dev-logs | ||
| screenshots | ||
| test-logs | ||
| CHANGELOG.md | ||
| course-list-with-delete.png | ||
| generate-docx.js | ||
| generate-pdf.py | ||
| package.json | ||
| README.md | ||
| 产品介绍与功能说明.md | ||
| 产品简介.md | ||
| 前端项目规范.md | ||
| 幼儿阅读教学服务平台-产品介绍与功能说明.docx | ||
| 幼儿阅读教学服务平台-产品介绍与功能说明.pdf | ||
| 统一开发规范.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 | admin123 |
| 学校端 | 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 编译警告
- 根据测试结果进行优化