cs120_8 - 评价后分数显示错误
This commit is contained in:
parent
2183b89b47
commit
e5753c6a2d
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
## Bug统计
|
||||
- **总数量**: 9个
|
||||
- **已修复**: 5个 ✅
|
||||
- **未修改**: 4个
|
||||
- **已修复**: 6个 ✅
|
||||
- **未修改**: 3个
|
||||
- **分类**: 后端问题 6个,前端问题 2个,前后端问题 3个
|
||||
|
||||
---
|
||||
|
|
@ -273,7 +273,7 @@
|
|||
---
|
||||
|
||||
### cs120_8 - 评价后分数显示错误
|
||||
**状态**: 未修改
|
||||
**状态**: ✅ 已修复
|
||||
**类型**: 后端
|
||||
**优先级**: 中
|
||||
|
||||
|
|
@ -285,9 +285,29 @@
|
|||
**解决方案**:
|
||||
评分后再次点开,应显示修正后的分值(重新计算的平均分)。
|
||||
|
||||
**问题根本原因**:
|
||||
在`GetEvaluateServices`接口中,当用户已经评价过某人时,返回的`user_play_level`和`user_skills_level`使用的是评价记录表(`SQReservationEvaluate`)中的分数,而不是被评价用户在用户表(`CoreCmsUser`)中更新后的平均分。
|
||||
|
||||
**修复内容**:
|
||||
1. **GetEvaluateServices接口修复** (`server/CoreCms.Net.Web.WebApi/Controllers/SQController.cs`)
|
||||
- 修改第303-304行的逻辑
|
||||
- 当用户已评价时,`user_play_level`和`user_skills_level`改为使用`item.play_level`和`item.skills_level`
|
||||
- 这样显示的是被评价用户的当前平均分,而不是评价记录中的分数
|
||||
|
||||
**修复逻辑**:
|
||||
- `play_level`和`skills_level`: 保持显示用户给出的评分(用于回显)
|
||||
- `user_play_level`和`user_skills_level`: 显示被评价用户的当前平均分(修正后的分值)
|
||||
|
||||
**修复前后对比**:
|
||||
- **修复前**: 评价后显示"我给他4分,他当前4分"(错误)
|
||||
- **修复后**: 评价后显示"我给他4分,他当前4.2分"(正确的平均分)
|
||||
|
||||
**修复时间**: 2025-01-01
|
||||
**测试状态**: 待测试
|
||||
|
||||
**涉及接口**:
|
||||
- `AddEvaluateServices` - 添加评价
|
||||
- 评价后需要重新计算用户的平均分
|
||||
- `GetEvaluateServices` - 获取预约评价信息
|
||||
- `AddEvaluateServices` - 添加评价(计算逻辑正确,无需修改)
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -328,7 +348,7 @@
|
|||
- ✅ cs120_5 - 签到后页面状态未刷新(已修复)
|
||||
- cs120_6 - 首页Banner未显示
|
||||
- ✅ cs120_7 - 个人信息数值显示异常(已修复)
|
||||
- cs120_8 - 评价后分数显示错误
|
||||
- ✅ cs120_8 - 评价后分数显示错误(已修复)
|
||||
|
||||
### 🟢 低优先级(优化项)
|
||||
- ✅ cs110_23 - 后台房间管理图标说明缺失(已修复)
|
||||
|
|
|
|||
|
|
@ -297,11 +297,12 @@ public class SQController : ControllerBase
|
|||
if (e != null)
|
||||
{
|
||||
is_evaluate = true;
|
||||
play_level = e.play_level;
|
||||
skills_level = e.skills_level;
|
||||
play_level = e.play_level; // 这是用户给出的评分
|
||||
skills_level = e.skills_level; // 这是用户给出的评分
|
||||
now = e.created_at;
|
||||
user_play_level = e.play_level;
|
||||
user_skills_level = e.skills_level;
|
||||
// 修复:显示被评价用户的当前平均分,而不是评价记录中的分数
|
||||
user_play_level = item.play_level; // 使用用户表中的当前平均分
|
||||
user_skills_level = item.skills_level; // 使用用户表中的当前平均分
|
||||
}
|
||||
}
|
||||
if (userBlack.Count > 0)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user