diff --git a/internal/ai/rag/index.go b/internal/ai/rag/index.go index e18d26a..e07d810 100644 --- a/internal/ai/rag/index.go +++ b/internal/ai/rag/index.go @@ -120,10 +120,6 @@ func (s *index) IndexFAQByID(ctx context.Context, faqID int64) error { func (s *index) RemoveDocumentIndex(ctx context.Context, documentID int64) error { chunks := repositories.KnowledgeChunkRepository.FindByDocumentID(sqls.DB(), documentID) - return s.RemoveDocumentIndexByChunks(ctx, documentID, chunks) -} - -func (s *index) RemoveDocumentIndexByChunks(ctx context.Context, documentID int64, chunks []models.KnowledgeChunk) error { if len(chunks) == 0 { return nil } diff --git a/internal/services/knowledge_document_service.go b/internal/services/knowledge_document_service.go index 1763c0a..80d9584 100644 --- a/internal/services/knowledge_document_service.go +++ b/internal/services/knowledge_document_service.go @@ -167,18 +167,13 @@ func (s *knowledgeDocumentService) UpdateKnowledgeDocument(req request.UpdateKno } func (s *knowledgeDocumentService) DeleteKnowledgeDocument(id int64) error { - chunks := repositories.KnowledgeChunkRepository.FindByDocumentID(sqls.DB(), id) - if err := sqls.WithTransaction(func(ctx *sqls.TxContext) error { - _ = repositories.KnowledgeDocumentRepository.Updates(ctx.Tx, id, map[string]any{ - "status": enums.StatusDeleted, - "updated_at": time.Now(), - }) - ctx.Tx.Delete(&models.KnowledgeChunk{}, "document_id = ?", id) - return nil + if err := repositories.KnowledgeDocumentRepository.Updates(sqls.DB(), id, map[string]any{ + "status": enums.StatusDeleted, + "updated_at": time.Now(), }); err != nil { return err } - return rag.Index.RemoveDocumentIndexByChunks(context.Background(), id, chunks) + return rag.Index.RemoveDocumentIndex(context.Background(), id) } func (s *knowledgeDocumentService) buildKnowledgeDocumentModel(req request.CreateKnowledgeDocumentRequest) (*models.KnowledgeDocument, error) {