feat: 增强会话管理和 Agent 服务
- 优化 session_handler 会话处理逻辑 - 增强 agent_service Agent 服务功能 - 新增 chat_repository 仓储方法 - 更新 agent_handler 和 chat_group_handler - 更新数据模型 agent 和 chat_session Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -56,6 +56,21 @@ func (r *ChatRepository) DeleteSession(id string) error {
|
||||
return r.db.Delete(&model.ChatSession{}, "id = ?", id).Error
|
||||
}
|
||||
|
||||
// DeleteSessionsByAgentID 删除智能体的所有会话
|
||||
func (r *ChatRepository) DeleteSessionsByAgentID(agentID string) error {
|
||||
// 先查询该智能体的所有会话
|
||||
var sessions []model.ChatSession
|
||||
if err := r.db.Where("agent_id = ?", agentID).Find(&sessions).Error; err != nil {
|
||||
return err
|
||||
}
|
||||
// 删除每个会话下的所有消息
|
||||
for _, session := range sessions {
|
||||
r.db.Where("session_id = ?", session.ID).Delete(&model.ChatMessage{})
|
||||
}
|
||||
// 再删除所有会话
|
||||
return r.db.Where("agent_id = ?", agentID).Delete(&model.ChatSession{}).Error
|
||||
}
|
||||
|
||||
// Message CRUD
|
||||
|
||||
// CreateMessage 创建消息
|
||||
|
||||
Reference in New Issue
Block a user