# 学习记录问题诊断清单 ## 1. 检查后端是否重新编译 ### 问题症状 - 后台管理系统显示的进度还是 57% 或 78.33% - 而不是 11.11%(3/27) ### 解决方案 ```bash cd C:\Users\Administrator\Desktop\Project\ry_study-v_03\Study-Vue-redis mvn clean package -DskipTests # 重启后端服务 ``` ### 验证方法 查看后端日志,应该看到: ``` 课程 1 进度计算完成: 3个已完成 / 27个有效课件 = 11.11% ``` --- ## 2. 检查前端是否重新编译 ### 问题症状 - App端视频URL错误 - 显示:`http://.../profile/profile/upload/...` ### 解决方案 ```bash cd C:\Users\Administrator\Desktop\Project\ry_study-v_03\fronted_uniapp # 停止当前服务(Ctrl+C) npm run dev:app ``` ### 验证方法 查看App日志,应该看到: ``` [课程学习] 检测到filePath包含profile/前缀,已自动去除 [课程学习] 完整URL: http://192.168.1.164:30091/profile/upload/... ``` --- ## 3. 检查数据库数据 ### 执行SQL ```sql -- 1. 查看课件时长 SELECT id, name, type, duration FROM courseware WHERE course_id = 1 ORDER BY id; -- 2. 查看学习详情 SELECT id, courseware_id, video_end_position as video_position, duration, learn_time FROM learning_detail WHERE student_id = 452 AND course_id = 1 ORDER BY learn_time DESC LIMIT 10; -- 3. 查看学习记录 SELECT id, progress, total_duration, learn_count, last_learn_time FROM learning_record WHERE student_id = 452 AND course_id = 1; ``` --- ## 4. 当前应该的正常状态 ### 后端日志 ``` 视频课件 882 已完成 3秒 / 3秒 视频课件 873 已完成 17秒 / 17秒 视频课件 883 已完成 XX秒 / XX秒 课程 1 进度计算完成: 3个已完成 / 27个有效课件 = 11.11% ``` ### App端日志 ``` [课程学习] 📊 课程进度(完成比例): 3个已完成 / 27个总数 = 11% [课程学习] 🔗 URL构建信息: - 完整URL: http://192.168.1.164:30091/profile/upload/2025/12/05/xxx.mp4 ``` ### 后台管理系统 - 学习进度:11.11% - 学习时长:XX分钟 - 学习次数:X次 --- ## 5. 常见问题排查 ### 问题A:后端进度还是57% **原因**:后端没有重新编译 **解决**:执行步骤1 ### 问题B:前端显示不一致 **原因**:前端缓存没清除 **解决**: 1. 重启前端开发服务器 2. 完全关闭并重新打开App 3. 清除浏览器缓存(Ctrl+Shift+Delete) ### 问题C:视频不能播放 **原因**:URL重复/profile/ **解决**:执行步骤2,重新编译前端 ### 问题D:播放位置不对 **原因**:学习详情数据问题 **解决**:执行步骤3的SQL,检查数据 --- ## 6. 完整重启流程 如果以上都不行,完整重启: ### 1. 停止所有服务 - 后端:停止Spring Boot - 前端UI:停止npm - 前端App:停止npm ### 2. 清理编译产物 ```bash # 后端 cd Study-Vue-redis mvn clean # 前端UI cd ry-study-ui rm -rf node_modules/.cache rm -rf dist # 前端App cd fronted_uniapp rm -rf unpackage ``` ### 3. 重新编译 ```bash # 后端 cd Study-Vue-redis mvn package -DskipTests # 前端UI cd ry-study-ui npm run build:prod # 前端App cd fronted_uniapp npm run dev:app ``` ### 4. 重启服务并测试