thread-master/internal/model/knowledge_graph/domain/repository/repository.go

20 lines
932 B
Go

package repository
import (
"context"
libkg "haixun-backend/internal/library/knowledge"
"haixun-backend/internal/model/knowledge_graph/domain/entity"
)
type Repository interface {
EnsureIndexes(ctx context.Context) error
UpsertByBrand(ctx context.Context, graph *entity.Graph) (*entity.Graph, error)
UpsertByTopic(ctx context.Context, graph *entity.Graph) (*entity.Graph, error)
FindByBrand(ctx context.Context, tenantID, ownerUID, brandID string) (*entity.Graph, error)
FindByTopic(ctx context.Context, tenantID, ownerUID, topicID string) (*entity.Graph, error)
UpdateNodes(ctx context.Context, tenantID, ownerUID, brandID string, nodes []libkg.Node, painTagCount int) (*entity.Graph, error)
UpdateNodesByTopic(ctx context.Context, tenantID, ownerUID, topicID string, nodes []libkg.Node, painTagCount int) (*entity.Graph, error)
AttachTopicID(ctx context.Context, tenantID, ownerUID, brandID, topicID string) error
}