1.6 KiB
1.6 KiB
转人工服务功能测试说明
修复内容
1. 修复session_id字段缺失问题
- 问题: 在acceptManualRequest和rejectManualRequest方法中,创建ManualServiceSessions对象时缺少manualSessionId字段
- 修复: 将setUserId(requestId)改为setManualSessionId(requestId)
- 影响: 确保更新操作能正确定位到要修改的记录
2. 修复status字段数据截断问题
- 问题: status字段使用长字符串值("PENDING", "ACCEPTED", "REJECTED")导致数据截断
- 修复: 统一使用单字符状态码
- "0" - 待处理 (原PENDING)
- "1" - 已接受 (原ACCEPTED)
- "2" - 已拒绝 (原REJECTED)
- 影响: 避免"Data truncated for column 'status'"错误
测试步骤
1. 创建转人工请求
POST /customer/transfer
参数: sessionId=123, reason="需要人工协助"
预期: 成功创建请求,status=0
2. 接受转人工请求
POST /customer/manual-requests/{requestId}/accept
预期: 成功更新状态为1,设置serviceId
3. 拒绝转人工请求
POST /customer/manual-requests/{requestId}/reject
预期: 成功更新状态为2,设置serviceId
验证要点
- 插入操作不再报"Field 'session_id' doesn't have a default value"错误
- 更新操作不再报"Data truncated for column 'status'"错误
- 状态值正确保存和查询
- 主键字段正确设置,更新操作能找到对应记录
状态码对照表
| 数字码 | 含义 | 原字符串值 |
|---|---|---|
| 0 | 待处理 | PENDING |
| 1 | 已接受 | ACCEPTED |
| 2 | 已拒绝 | REJECTED |