docs: 更新目标和学员目标数据模型文档
This commit is contained in:
+55
-4
@@ -585,6 +585,29 @@ POST /api/config/test
|
|||||||
### GET /api/students/{id}/goals
|
### GET /api/students/{id}/goals
|
||||||
获取学员的所有目标
|
获取学员的所有目标
|
||||||
|
|
||||||
|
**响应**:
|
||||||
|
```json
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"student_id": 1,
|
||||||
|
"goal_id": 1,
|
||||||
|
"goal_name": "掌握基本音阶",
|
||||||
|
"goal_level": "入门",
|
||||||
|
"goal_category": "演奏能力",
|
||||||
|
"status": "进行中",
|
||||||
|
"start_date": "2026-04-01T00:00:00",
|
||||||
|
"assessment_date": "2026-05-01T00:00:00",
|
||||||
|
"mastery_level": 3,
|
||||||
|
"achievement_date": null,
|
||||||
|
"comment": null,
|
||||||
|
"created_at": "2026-04-01T10:00:00"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
```
|
||||||
|
|
||||||
|
**排序**:按状态(进行中→未开始→已结束),再按评估日期倒序
|
||||||
|
|
||||||
### POST /api/students/{id}/goals
|
### POST /api/students/{id}/goals
|
||||||
为学员分配目标
|
为学员分配目标
|
||||||
|
|
||||||
@@ -592,14 +615,42 @@ POST /api/config/test
|
|||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"goal_id": 1,
|
"goal_id": 1,
|
||||||
"status": "未开始",
|
"assessment_days": 30,
|
||||||
"mastery_level": 1,
|
"assessment_date": "2026-05-01",
|
||||||
"deadline": "2026-05-01"
|
"start_date": "2026-04-01",
|
||||||
|
"start_now": true
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
| 字段 | 类型 | 说明 |
|
||||||
|
|------|------|------|
|
||||||
|
| goal_id | Integer | 目标ID,必填 |
|
||||||
|
| assessment_days | Integer | 评估天数(15/30/60/90/180),与 assessment_date 二选一 |
|
||||||
|
| assessment_date | String | 具体评估日期(ISO格式),与 assessment_days 二选一 |
|
||||||
|
| start_date | String | 开始日期(ISO格式),可选 |
|
||||||
|
| start_now | Boolean | 设为 true 表示立即开始(默认当前时间) |
|
||||||
|
|
||||||
### PUT /api/students/{id}/goals/{goal_id}
|
### PUT /api/students/{id}/goals/{goal_id}
|
||||||
更新学员目标状态/掌握程度
|
更新学员目标
|
||||||
|
|
||||||
|
**请求体**:
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"start_date": "2026-04-01",
|
||||||
|
"assessment_date": "2026-05-01",
|
||||||
|
"mastery_level": 4,
|
||||||
|
"achievement_date": "2026-05-01",
|
||||||
|
"comment": "表现优秀,已掌握"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
| 字段 | 类型 | 说明 |
|
||||||
|
|------|------|------|
|
||||||
|
| start_date | String | 开始日期(ISO格式) |
|
||||||
|
| assessment_date | String | 评估日期(ISO格式) |
|
||||||
|
| mastery_level | Integer | 掌握程度 1-5 |
|
||||||
|
| achievement_date | String | 达成日期(ISO格式) |
|
||||||
|
| comment | String | 评语 |
|
||||||
|
|
||||||
### DELETE /api/students/{id}/goals/{goal_id}
|
### DELETE /api/students/{id}/goals/{goal_id}
|
||||||
移除学员的目标
|
移除学员的目标
|
||||||
|
|||||||
+20
-5
@@ -307,6 +307,8 @@ SELECT * FROM users;
|
|||||||
| id | Integer | 主键 |
|
| id | Integer | 主键 |
|
||||||
| name | String(100) | 目标名称 |
|
| name | String(100) | 目标名称 |
|
||||||
| content | Text | 目标内容(Markdown) |
|
| content | Text | 目标内容(Markdown) |
|
||||||
|
| level | String(20) | 级别:启蒙/入门/进阶/熟练/精通 |
|
||||||
|
| category | String(20) | 分类:综合/乐理相关/演奏能力/其他 |
|
||||||
| created_at | DateTime | 创建时间 |
|
| created_at | DateTime | 创建时间 |
|
||||||
| updated_at | DateTime | 更新时间 |
|
| updated_at | DateTime | 更新时间 |
|
||||||
|
|
||||||
@@ -330,12 +332,25 @@ SELECT * FROM users;
|
|||||||
| id | Integer | 主键 |
|
| id | Integer | 主键 |
|
||||||
| student_id | Integer | 学员ID,外键 |
|
| student_id | Integer | 学员ID,外键 |
|
||||||
| goal_id | Integer | 目标ID,外键 |
|
| goal_id | Integer | 目标ID,外键 |
|
||||||
| status | String(20) | 状态:未开始/进行中/已完成 |
|
| start_date | DateTime | 开始日期 |
|
||||||
| mastery_level | Integer | 掌握程度 1-5 |
|
| assessment_date | DateTime | 评估日期 |
|
||||||
| deadline | DateTime | 截止日期 |
|
| mastery_level | Integer | 掌握程度 1-5(评估时填写) |
|
||||||
| completed_at | DateTime | 完成时间 |
|
| achievement_date | DateTime | 达成日期 |
|
||||||
|
| comment | Text | 评语 |
|
||||||
| created_at | DateTime | 创建时间 |
|
| created_at | DateTime | 创建时间 |
|
||||||
|
|
||||||
|
**状态计算逻辑**:
|
||||||
|
- `status` 由 `start_date` 和 `assessment_date` 自动计算,不存储
|
||||||
|
- 早于 `start_date` → 未开始
|
||||||
|
- `start_date` 和 `assessment_date` 之间 → 进行中
|
||||||
|
- 晚于 `assessment_date` → 已结束
|
||||||
|
|
||||||
|
**排序规则**:按状态(进行中→未开始→已结束),再按评估日期倒序
|
||||||
|
|
||||||
**关系**:
|
**关系**:
|
||||||
- 一个学员可以分配多个目标
|
- 一个学员可以分配多个目标
|
||||||
- 一个目标可以分配给多个学员
|
- 一个目标可以分配给多个学员
|
||||||
|
|
||||||
|
**操作入口**:
|
||||||
|
- "调整目标":修改开始/评估日期,移除目标
|
||||||
|
- "评估目标":填写掌握程度、达成日期、评语
|
||||||
Reference in New Issue
Block a user