- 修改 pom.xml 中的 groupId - 移动所有 Java 文件到新包路径 com/lesingle/edu - 更新所有 Java 文件的 package 和 import 语句 (438 个文件) - 更新配置文件中的日志包名引用 (application-*.yml, logback-spring.xml) - 更新 @MapperScan 注解路径 - 更新 CLAUDE.md 文档中的目录结构说明 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
530 lines
18 KiB
Markdown
530 lines
18 KiB
Markdown
# 少儿智慧阅读 - 产品介绍与功能说明
|
||
|
||
## 一、产品概述
|
||
|
||
### 1.1 产品定位
|
||
|
||
**少儿智慧阅读**是一款面向幼儿园的B2B2C综合性阅读教学管理系统,致力于为幼儿园、教师和家长提供全方位的绘本阅读教学服务。平台采用多端协同架构,打通超管、学校、教师、家长四方角色,实现从课程创作、教学管理到家校互动的完整闭环。
|
||
|
||
### 1.2 目标用户
|
||
|
||
| 用户角色 | 使用场景 | 核心需求 |
|
||
|---------|---------|---------|
|
||
| **平台超管** | 运营管理 | 课程内容管理、租户服务、平台运营 |
|
||
| **学校管理员** | 园所管理 | 教师学生管理、课程授权、数据统计 |
|
||
| **教师** | 教学实施 | 课程备课、课堂教学、任务布置、成长记录 |
|
||
| **家长** | 家校共育 | 查看任务、提交反馈、了解孩子成长 |
|
||
|
||
### 1.3 核心价值
|
||
|
||
- **标准化教学**:专业绘本课程包,标准化教学流程
|
||
- **效率提升**:备课上课一体化,教学管理智能化
|
||
- **家校联动**:任务布置与反馈,家校共育更紧密
|
||
- **成长可视**:多维度数据记录,成长轨迹清晰可见
|
||
- **灵活管理**:多租户架构,满足不同规模园所需求
|
||
|
||
---
|
||
|
||
## 二、技术架构
|
||
|
||
### 2.1 系统架构
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────────┐
|
||
│ 前端应用层 │
|
||
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
|
||
│ │ 超管端 │ │ 学校端 │ │ 教师端 │ │ 家长端 │ │
|
||
│ │ (Admin) │ │ (School) │ │(Teacher) │ │ (Parent) │ │
|
||
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
|
||
│ Vue 3 + Ant Design Vue │
|
||
└─────────────────────────────────────────────────────────────┘
|
||
│
|
||
▼
|
||
┌─────────────────────────────────────────────────────────────┐
|
||
│ API网关层 │
|
||
│ NestJS + JWT认证 │
|
||
└─────────────────────────────────────────────────────────────┘
|
||
│
|
||
▼
|
||
┌─────────────────────────────────────────────────────────────┐
|
||
│ 业务服务层 │
|
||
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
|
||
│ │ 课程服务 │ │ 教学服务 │ │ 用户服务 │ │ 数据服务 │ │
|
||
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
|
||
└─────────────────────────────────────────────────────────────┘
|
||
│
|
||
▼
|
||
┌─────────────────────────────────────────────────────────────┐
|
||
│ 数据存储层 │
|
||
│ Prisma ORM + SQLite/PostgreSQL │
|
||
└─────────────────────────────────────────────────────────────┘
|
||
```
|
||
|
||
### 2.2 技术选型
|
||
|
||
| 层级 | 技术栈 | 说明 |
|
||
|-----|-------|------|
|
||
| **前端框架** | Vue 3 + Vite | 现代化前端开发框架 |
|
||
| **UI组件** | Ant Design Vue 4.x | 企业级UI组件库 |
|
||
| **状态管理** | Pinia | Vue官方状态管理 |
|
||
| **后端框架** | NestJS | 企业级Node.js框架 |
|
||
| **ORM** | Prisma | 现代化数据库工具 |
|
||
| **数据库** | SQLite / PostgreSQL | 开发/生产数据库 |
|
||
| **认证** | JWT + Passport | 安全认证方案 |
|
||
| **文件存储** | 本地存储 / 云存储 | 支持多种存储方案 |
|
||
|
||
---
|
||
|
||
## 三、功能模块详解
|
||
|
||
### 3.1 超管端功能
|
||
|
||
超管端是平台的运营管理中心,负责课程内容生产、租户服务和平台运营。
|
||
|
||
#### 3.1.1 数据看板
|
||
|
||
提供平台整体运营数据的可视化展示:
|
||
|
||
- **核心指标**:租户数量、课程数量、授课次数、学生总数
|
||
- **趋势图表**:用户增长趋势、课程使用趋势
|
||
- **快捷入口**:快速访问常用功能
|
||
|
||
#### 3.1.2 课程包管理
|
||
|
||
完整的课程内容生产与发布流程:
|
||
|
||
| 功能 | 说明 |
|
||
|-----|------|
|
||
| **基础信息** | 课程名称、适用年级、关联绘本、课程简介、核心目标 |
|
||
| **资源上传** | 封面图片、电子绘本(PDF)、音频资源、视频资源 |
|
||
| **教学环节** | 多步骤教学流程设计,每步包含时长、目标、讲稿、资源 |
|
||
| **逐页脚本** | 绘本每一页的教师话术和教学备注 |
|
||
| **延伸活动** | 课堂延伸和家庭延伸活动设计 |
|
||
| **审核流程** | 草稿 → 待审核 → 已发布 → 已下架 |
|
||
| **版本管理** | 支持课程版本迭代和历史回溯 |
|
||
|
||
#### 3.1.3 资源库管理
|
||
|
||
统一管理平台所有教学资源:
|
||
|
||
- **资源类型**:图片、音频、视频、文档
|
||
- **资源分类**:按类型、用途自动分类
|
||
- **在线预览**:支持图片、PDF、音视频在线预览
|
||
- **批量管理**:支持批量上传、删除操作
|
||
|
||
#### 3.1.4 租户管理
|
||
|
||
多租户服务的核心管理功能:
|
||
|
||
- **租户列表**:查看所有签约园所
|
||
- **创建租户**:录入园所基本信息和管理员账号
|
||
- **套餐配置**:设置教师数、学生数、存储空间等配额
|
||
- **课程授权**:为租户分配可使用的课程包
|
||
- **服务管理**:暂停/恢复租户服务
|
||
- **密码重置**:重置租户管理员密码
|
||
|
||
#### 3.1.5 系统设置
|
||
|
||
平台全局配置:
|
||
|
||
- **标签管理**:课程标签、领域分类
|
||
- **年级配置**:小班、中班、大班等年级设置
|
||
|
||
---
|
||
|
||
### 3.2 学校端功能
|
||
|
||
学校端是园所管理员的管理后台,负责本园的教师、学生、班级和教学管理。
|
||
|
||
#### 3.2.1 数据概览
|
||
|
||
园所运营数据一目了然:
|
||
|
||
- **人员统计**:教师数、学生数、班级数
|
||
- **教学统计**:授课次数、任务完成率
|
||
- **图表展示**:授课趋势、课程分布
|
||
|
||
#### 3.2.2 人员管理
|
||
|
||
##### 教师管理
|
||
- 教师列表查看与搜索
|
||
- 添加/编辑教师信息(姓名、邮箱、手机号)
|
||
- 分配教师到班级
|
||
- 重置教师密码
|
||
- 删除教师账号
|
||
|
||
##### 学生管理
|
||
- 学生列表查看与搜索
|
||
- 添加/编辑学生信息(姓名、年级、家长联系方式)
|
||
- 批量导入学生(Excel)
|
||
- 学生调班功能
|
||
- 删除学生档案
|
||
|
||
#### 3.2.3 班级管理
|
||
|
||
- **班级列表**:查看所有班级及学生数量
|
||
- **创建班级**:设置班级名称、年级
|
||
- **教师分配**:设置班主任、配班教师
|
||
- **学生管理**:查看班级学生列表
|
||
|
||
#### 3.2.4 教学管理
|
||
|
||
##### 课程管理
|
||
- 查看已授权课程列表
|
||
- 按年级、领域筛选课程
|
||
- 搜索课程名称
|
||
- 查看课程详情
|
||
|
||
##### 课程排期
|
||
- **日历视图**:直观展示排课情况
|
||
- **创建排课**:选择课程、班级、教师、时间
|
||
- **编辑/删除**:调整排课安排
|
||
- **批量排课**:一次性安排多节课
|
||
|
||
##### 阅读任务
|
||
- 任务列表管理
|
||
- 创建/编辑/删除任务
|
||
- 查看任务完成情况
|
||
- 按班级、学生分配任务
|
||
|
||
##### 任务模板
|
||
- 预设任务模板库
|
||
- 基于模板快速创建任务
|
||
- 自定义任务模板
|
||
|
||
##### 课程反馈
|
||
- 查看教师提交的课程反馈
|
||
- 反馈数据统计分析
|
||
|
||
#### 3.2.5 数据中心
|
||
|
||
##### 数据报告
|
||
- 授课次数统计
|
||
- 活跃教师排行
|
||
- 课程评分统计
|
||
- 导出Excel报表
|
||
|
||
##### 成长档案
|
||
- 学生成长档案列表
|
||
- 查看个人成长详情
|
||
- 按班级、学生筛选
|
||
|
||
#### 3.2.6 系统管理
|
||
|
||
##### 套餐管理
|
||
- 查看当前套餐信息
|
||
- 配额使用情况(教师数、学生数、存储空间)
|
||
- 套餐有效期
|
||
|
||
##### 操作日志
|
||
- 记录所有管理操作
|
||
- 按时间、操作类型筛选
|
||
|
||
##### 系统设置
|
||
- 学校基本信息维护
|
||
- 通知设置
|
||
|
||
---
|
||
|
||
### 3.3 教师端功能
|
||
|
||
教师端是教师日常教学的核心工具,覆盖备课、上课、课后全流程。
|
||
|
||
#### 3.3.1 首页
|
||
|
||
教学数据一目了然:
|
||
|
||
- **我的班级**:负责的班级数量
|
||
- **学生总数**:教授的学生数量
|
||
- **授课次数**:累计授课次数
|
||
- **使用课程**:使用过的课程数
|
||
|
||
#### 3.3.2 课程中心
|
||
|
||
浏览和使用已授权的课程:
|
||
|
||
- **课程列表**:卡片式展示所有可用课程
|
||
- **年级筛选**:按小班/中班/大班筛选
|
||
- **领域筛选**:按语言、社会、科学等领域筛选
|
||
- **关键词搜索**:快速找到目标课程
|
||
- **课程详情**:查看完整的教学设计
|
||
|
||
#### 3.3.3 备课模式
|
||
|
||
课前准备工作:
|
||
|
||
- **教学流程**:按步骤展示教学环节
|
||
- **教师讲稿**:每个环节的详细讲稿
|
||
- **逐页脚本**:绘本每一页的教学话术
|
||
- **备课笔记**:记录个人备课心得
|
||
- **教学材料**:查看本节课需要的材料
|
||
- **选择班级**:选择要授课的班级
|
||
|
||
#### 3.3.4 上课模式
|
||
|
||
课堂教学核心功能:
|
||
|
||
| 功能模块 | 说明 |
|
||
|---------|------|
|
||
| **计时器** | 实时显示课程进行时间 |
|
||
| **流程导航** | 上一步/下一步切换教学环节 |
|
||
| **讲稿展示** | 当前环节的教师讲稿 |
|
||
| **展播模式** | 全屏展示,适合投屏教学 |
|
||
| **课堂评价** | 对每个环节进行星级评价 |
|
||
| **结束课程** | 保存课堂记录 |
|
||
|
||
##### 课堂记录
|
||
课程结束时填写:
|
||
- **完成情况**:完全完成/基本完成/未完成
|
||
- **整体评价**:星级评分
|
||
- **学生参与度**:星级评分
|
||
- **完成备注**:文字描述课堂情况
|
||
|
||
#### 3.3.5 上课记录
|
||
|
||
历史授课记录管理:
|
||
|
||
- **记录列表**:展示所有授课记录
|
||
- **状态筛选**:已计划/进行中/已完成
|
||
- **日期筛选**:按时间段查看
|
||
- **记录详情**:查看完整课堂信息
|
||
- **课后记录**:补充课后反思
|
||
|
||
#### 3.3.6 我的班级
|
||
|
||
管理负责的班级:
|
||
|
||
- **班级卡片**:显示班级信息、学生数、授课进度
|
||
- **学生列表**:查看班级学生详情
|
||
- **快捷操作**:备课、查看学生、查看记录
|
||
|
||
#### 3.3.7 阅读任务
|
||
|
||
布置和管理阅读任务:
|
||
|
||
- 任务列表查看
|
||
- 创建/编辑任务
|
||
- 查看完成情况
|
||
|
||
#### 3.3.8 课程反馈
|
||
|
||
对课程内容进行评价反馈:
|
||
|
||
- 反馈列表
|
||
- 提交课程反馈
|
||
- 设计质量、参与度、目标达成评价
|
||
|
||
#### 3.3.9 成长档案
|
||
|
||
记录学生成长瞬间:
|
||
|
||
- **档案列表**:查看所有成长记录
|
||
- **添加档案**:创建新的成长记录
|
||
- **档案类型**:个人档案/班级档案
|
||
- **内容记录**:标题、日期、内容、图片
|
||
|
||
---
|
||
|
||
### 3.4 家长端功能
|
||
|
||
家长端是家校互动的桥梁,让家长了解并参与孩子的阅读成长。
|
||
|
||
#### 3.4.1 首页
|
||
|
||
孩子信息概览:
|
||
|
||
- **孩子卡片**:显示孩子姓名、班级、阅读次数
|
||
- **最近任务**:待完成的阅读任务
|
||
- **成长档案**:最新的成长记录
|
||
|
||
#### 3.4.2 我的孩子
|
||
|
||
查看孩子详细信息:
|
||
|
||
- 基本信息(姓名、班级、年级)
|
||
- 阅读次数统计
|
||
- 上课次数统计
|
||
|
||
#### 3.4.3 阅读记录
|
||
|
||
查看孩子的学习记录:
|
||
|
||
- **记录列表**:显示所有上课记录
|
||
- **课程信息**:课程名称、绘本名称
|
||
- **上课时间**:授课日期
|
||
- **评分展示**:专注度、兴趣度星级评分
|
||
|
||
#### 3.4.4 阅读任务
|
||
|
||
完成教师布置的任务:
|
||
|
||
- **任务列表**:显示待完成的阅读任务
|
||
- **任务详情**:任务要求、截止日期
|
||
- **提交反馈**:填写任务完成情况
|
||
- **反馈记录**:查看已提交的反馈
|
||
|
||
#### 3.4.5 成长档案
|
||
|
||
查看孩子的成长记录:
|
||
|
||
- 档案列表展示
|
||
- 查看档案详情(图片、文字记录)
|
||
|
||
---
|
||
|
||
## 四、核心业务流程
|
||
|
||
### 4.1 课程生产流程
|
||
|
||
```
|
||
超管创建课程 → 填写基础信息 → 上传资源 → 设计教学环节
|
||
→ 添加延伸活动 → 提交审核 → 审核通过 → 发布课程
|
||
→ 授权给租户 → 学校/教师使用
|
||
```
|
||
|
||
### 4.2 教学实施流程
|
||
|
||
```
|
||
教师浏览课程 → 进入备课模式 → 记录备课笔记 → 选择班级
|
||
→ 开始上课 → 按流程教学 → 课堂评价 → 结束课程
|
||
→ 填写课堂记录 → 查看上课记录
|
||
```
|
||
|
||
### 4.3 家校互动流程
|
||
|
||
```
|
||
教师布置任务 → 分配给学生/班级 → 家长查看任务
|
||
→ 亲子完成阅读 → 家长提交反馈 → 教师查看反馈
|
||
```
|
||
|
||
### 4.4 成长记录流程
|
||
|
||
```
|
||
教师观察学生 → 创建成长档案 → 选择学生 → 填写内容
|
||
→ 上传图片 → 保存档案 → 家长查看
|
||
```
|
||
|
||
---
|
||
|
||
## 五、数据模型
|
||
|
||
### 5.1 核心实体关系
|
||
|
||
```
|
||
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
||
│ Tenant │────→│ School │────→│ Class │
|
||
│ (租户) │ │ (学校) │ │ (班级) │
|
||
└─────────────┘ └─────────────┘ └─────────────┘
|
||
│ │
|
||
│ │
|
||
▼ ▼
|
||
┌─────────────┐ ┌─────────────┐
|
||
│ Teacher │ │ Student │
|
||
│ (教师) │ │ (学生) │
|
||
└─────────────┘ └─────────────┘
|
||
│ │
|
||
│ │
|
||
▼ ▼
|
||
┌─────────────────────────────────┐
|
||
│ Lesson │
|
||
│ (授课) │
|
||
└─────────────────────────────────┘
|
||
```
|
||
|
||
### 5.2 主要数据表
|
||
|
||
| 表名 | 说明 | 主要字段 |
|
||
|-----|------|---------|
|
||
| **Tenant** | 租户信息 | name, status, packageType, quota |
|
||
| **User** | 用户账号 | username, password, role, tenantId |
|
||
| **Teacher** | 教师信息 | name, email, phone, classIds |
|
||
| **Student** | 学生信息 | name, grade, classId, parentId |
|
||
| **Parent** | 家长信息 | name, phone, studentIds |
|
||
| **Class** | 班级信息 | name, grade, teacherIds, studentIds |
|
||
| **Course** | 课程包 | name, grade, bookName, status, version |
|
||
| **Lesson** | 授课记录 | courseId, classId, teacherId, status |
|
||
| **Task** | 阅读任务 | title, courseId, classId, deadline |
|
||
| **GrowthRecord** | 成长档案 | studentId, type, title, content |
|
||
| **Resource** | 资源文件 | name, type, url, size |
|
||
|
||
---
|
||
|
||
## 六、安全与权限
|
||
|
||
### 6.1 认证机制
|
||
|
||
- **JWT Token**:用户登录后获取Token,后续请求携带Token
|
||
- **角色区分**:ADMIN/SCHOOL/TEACHER/PARENT四种角色
|
||
- **租户隔离**:数据按tenantId隔离,确保数据安全
|
||
|
||
### 6.2 权限控制
|
||
|
||
| 角色 | 数据范围 | 功能权限 |
|
||
|-----|---------|---------|
|
||
| **超管** | 全平台数据 | 课程管理、租户管理、系统设置 |
|
||
| **学校** | 本园数据 | 人员管理、班级管理、教学管理 |
|
||
| **教师** | 本班数据 | 课程使用、上课、任务布置 |
|
||
| **家长** | 自己孩子数据 | 查看任务、提交反馈、查看档案 |
|
||
|
||
---
|
||
|
||
## 七、部署与运维
|
||
|
||
### 7.1 部署架构
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────────┐
|
||
│ 负载均衡 (Nginx) │
|
||
└─────────────────────────────────────────────────────────────┘
|
||
│ │
|
||
▼ ▼
|
||
┌─────────────────┐ ┌─────────────────┐
|
||
│ 前端服务 │ │ 后端服务 │
|
||
│ (静态资源) │ │ (NestJS) │
|
||
└─────────────────┘ └─────────────────┘
|
||
│
|
||
▼
|
||
┌─────────────────┐
|
||
│ 数据库 │
|
||
│ (PostgreSQL) │
|
||
└─────────────────┘
|
||
```
|
||
|
||
### 7.2 环境配置
|
||
|
||
| 环境 | 前端地址 | 后端地址 | 数据库 |
|
||
|-----|---------|---------|-------|
|
||
| **开发** | localhost:5173 | localhost:3000 | SQLite |
|
||
| **生产** | 域名/CDN | 域名/API | PostgreSQL |
|
||
|
||
### 7.3 启动命令
|
||
|
||
```bash
|
||
# 开发环境启动
|
||
./start-all.sh
|
||
|
||
# 停止服务
|
||
./stop-all.sh
|
||
```
|
||
|
||
---
|
||
|
||
## 八、版本信息
|
||
|
||
| 项目 | 版本 | 更新日期 |
|
||
|-----|------|---------|
|
||
| 前端 | v1.0 | 2026-02-24 |
|
||
| 后端 | v1.0 | 2026-02-24 |
|
||
|
||
---
|
||
|
||
## 九、联系方式
|
||
|
||
如有问题或建议,请联系技术支持团队。
|
||
|
||
---
|
||
|
||
*文档版本:v1.0*
|
||
*创建日期:2026-02-24*
|
||
*最后更新:2026-02-24*
|