56 lines
1.4 KiB
Markdown
56 lines
1.4 KiB
Markdown
# 课程完成标准调整说明
|
||
|
||
## 问题
|
||
课程只看了几分钟还没看完,就在课程记录中更新了进度。
|
||
|
||
## 原因
|
||
之前的完成标准过于宽松:
|
||
- 短视频(≤10秒):看80%就算完成
|
||
- 普通视频:看90%就算完成
|
||
|
||
导致用户只看了大部分就被标记为"已完成"。
|
||
|
||
## 解决方案
|
||
|
||
### 方案1:95%完成标准(已实施)
|
||
```java
|
||
// 短视频和普通视频都要求95%
|
||
completionThreshold = 0.95;
|
||
```
|
||
|
||
**效果:**
|
||
- 10分钟视频需要看到9.5分钟才算完成
|
||
- 用户必须几乎看完才会更新进度
|
||
|
||
### 方案2:100%完成标准(更严格,可选)
|
||
如果需要更严格,可以修改为:
|
||
```java
|
||
if (duration <= 10) {
|
||
completionThreshold = 1.0; // 100%
|
||
} else {
|
||
completionThreshold = 1.0; // 100%
|
||
}
|
||
```
|
||
|
||
**但不建议100%,因为:**
|
||
1. 视频播放器可能有1-2秒的误差
|
||
2. 用户可能提前几秒关闭
|
||
3. 95%已经能保证用户真正看完了
|
||
|
||
## 推荐配置
|
||
|
||
| 课件类型 | 推荐完成标准 | 说明 |
|
||
|---------|-------------|------|
|
||
| 短视频(≤10秒) | 95% | 确保看完 |
|
||
| 普通视频 | 95% | 几乎看到结尾 |
|
||
| 长视频(>10分钟) | 95% | 避免误差导致无法完成 |
|
||
| 图片/PDF | 查看即完成 | 保持不变 |
|
||
|
||
## 修改文件
|
||
`StudyLearningRecordServiceImpl.java` 第432-437行
|
||
|
||
## 测试建议
|
||
1. 重新编译后端
|
||
2. 测试不同长度的视频
|
||
3. 查看进度是否在95%时才更新
|