41 lines
1.8 KiB
Markdown
41 lines
1.8 KiB
Markdown
|
|
# TASK005 - 聊天会话管理模块
|
|||
|
|
|
|||
|
|
## 任务信息
|
|||
|
|
- **任务编号**: TASK005
|
|||
|
|
- **任务名称**: 聊天会话管理模块
|
|||
|
|
- **版本**: V1.0
|
|||
|
|
- **状态**: ✅ 完成
|
|||
|
|
|
|||
|
|
## 任务描述
|
|||
|
|
实现聊天会话的管理功能,包括创建会话、获取会话列表、获取会话消息、删除会话、清空会话等操作,支持会话的搜索和分页功能。
|
|||
|
|
|
|||
|
|
## 验收标准清单
|
|||
|
|
- [ ] 实现创建会话接口(/api/chat/session)
|
|||
|
|
- [ ] 实现获取会话列表接口(/api/chat/sessions)
|
|||
|
|
- [ ] 实现获取会话消息接口(/api/chat/messages)
|
|||
|
|
- [ ] 实现删除会话接口(/api/chat/session/{session_id})
|
|||
|
|
- [ ] 实现清空会话接口(/api/chat/session/{session_id}/clear)
|
|||
|
|
- [ ] 支持会话关键词搜索功能
|
|||
|
|
- [ ] 实现会话列表分页查询
|
|||
|
|
- [ ] 创建SessionService、SessionController和相关DTO
|
|||
|
|
- [ ] 实现会话权限验证(用户只能操作自己的会话)
|
|||
|
|
- [ ] 添加会话统计信息更新机制
|
|||
|
|
|
|||
|
|
## 注意事项
|
|||
|
|
1. 会话ID使用UUID格式,确保全局唯一性
|
|||
|
|
2. 创建会话时需要验证用户登录状态和标题合法性
|
|||
|
|
3. 获取会话列表需要按最后消息时间倒序排列
|
|||
|
|
4. 关键词搜索需要支持标题和消息内容的模糊匹配
|
|||
|
|
5. 分页参数需要设置合理的默认值和最大值限制
|
|||
|
|
6. 删除会话时需要级联删除相关的消息和收藏记录
|
|||
|
|
7. 清空会话只删除消息,保留会话本身
|
|||
|
|
8. 用户只能访问和操作自己创建的会话
|
|||
|
|
10. 需要实时更新会话的消息数量和最后消息时间
|
|||
|
|
12. 考虑会话的软删除机制,便于数据恢复
|
|||
|
|
14. 会话列表需要返回消息数量和最后消息时间
|
|||
|
|
|
|||
|
|
## 相关文件
|
|||
|
|
- src/main/java/com/lxy/hsend/controller/SessionController.java
|
|||
|
|
- src/main/java/com/lxy/hsend/service/SessionService.java
|
|||
|
|
- src/main/java/com/lxy/hsend/dto/session/
|
|||
|
|
- src/main/java/com/lxy/hsend/repository/SessionRepository.java
|