3.0 KiB
3.0 KiB
周反馈为空问题分析报告
问题描述
管理师的成长记录中:
- 每日反馈有记录 ✅
- 周反馈显示为空 ❌
- 月反馈有信息 ✅
问题分析
1. 系统设计逻辑
根据代码分析,系统的反馈层级设计为:
每日反馈 (daily) → 周反馈 (weekly) → 月反馈 (monthly)
2. 关键发现
问题根源:周反馈需要手动生成!
通过分析代码发现:
- 每日反馈:陪伴员每天手动创建
- 周反馈:需要陪伴员手动调用生成接口
/api/growth-record/weekly/summary - 月反馈:基于已有的周反馈自动生成
代码证据:
GrowthRecordController.java 第168-191行:
@ApiOperation("陪伴员-生成周总结")
@PostMapping("/weekly/summary")
public Result<GrowthRecordVO> generateWeeklySummary(
@RequestBody Map<String, Object> params,
HttpServletRequest request) {
// 需要手动调用此接口才能生成周反馈
}
GrowthRecordServiceImpl.java 第695-697行:
if (weeklyRecords.isEmpty()) {
throw new RuntimeException("本月暂无周反馈记录,无法生成月反馈");
}
3. 前端调用逻辑
前端 growth-record.vue 第860行:
// 前端调用的是数据汇总接口,而不是周反馈列表接口
url: '/api/growth-record/weekly/data', // 这个接口只返回统计数据
问题:前端调用的是 /api/growth-record/weekly/data(数据汇总接口),而不是 /api/growth-record/weekly(周反馈列表接口)
4. 数据流程对比
正确流程应该是:
- 陪伴员创建每日反馈
- 陪伴员手动生成周反馈(汇总每日反馈)
- 系统基于周反馈自动生成月反馈
当前实际情况:
- ✅ 陪伴员创建每日反馈
- ❌ 陪伴员没有生成周反馈
- ❌ 月反馈可能也是手动创建的(因为代码要求必须有周反馈才能生成月反馈)
解决方案
方案一:修改前端调用(推荐)
将前端周反馈页面改为调用周反馈列表接口:
// 修改 growth-record.vue 第860行
url: '/api/growth-record/weekly' // 调用周反馈列表接口
方案二:自动生成周反馈
在每日反馈创建后,系统自动检查是否需要生成周反馈并自动生成。
方案三:添加提示
在前端周反馈页面添加提示:"本周暂无周反馈,请先生成周反馈"
建议的修复步骤
- 立即修复:修改前端调用周反馈列表接口
- 用户体验优化:添加"一键生成周反馈"按钮
- 长期优化:实现周反馈自动生成机制
技术细节
周反馈生成接口参数:
{
"orderId": 123,
"startDate": "2026-01-23",
"endDate": "2026-01-29"
}
周反馈列表接口:
GET /api/growth-record/weekly?orderId=123&page=1&size=10
结论
周反馈为空不是bug,而是设计如此。周反馈需要手动生成,但前端界面没有提供相应的操作入口,导致用户无法生成周反馈。