0ac5ff9e15
Test Query * depstextandclean * startedcleaningresult * resulttidyup * roundone * cleaning * unsyncedquery * startedtestsandsimplification * api * querytests * resultprocessortests * unittests * cleanup
46 lines
1.1 KiB
Go
46 lines
1.1 KiB
Go
package result
|
|
|
|
import (
|
|
"context"
|
|
"queryorchestration/internal/database"
|
|
"queryorchestration/internal/database/repository"
|
|
resultprocessor "queryorchestration/internal/query/result/processor"
|
|
|
|
"github.com/google/uuid"
|
|
)
|
|
|
|
type Set struct {
|
|
DocumentID uuid.UUID
|
|
CleanVersion int32
|
|
TextVersion int32
|
|
Query *resultprocessor.Query
|
|
}
|
|
|
|
func (s *Service) Set(ctx context.Context, params *Set) (uuid.UUID, error) {
|
|
value, err := s.Process(ctx, &Process{
|
|
DocumentID: params.DocumentID,
|
|
MinCleanVersion: params.CleanVersion,
|
|
MinTextVersion: params.TextVersion,
|
|
Query: params.Query,
|
|
})
|
|
if err != nil {
|
|
return uuid.Nil, err
|
|
}
|
|
|
|
dbId, err := s.db.Queries.SetResult(ctx, &repository.SetResultParams{
|
|
Queryid: database.MustToDBUUID(params.Query.ID),
|
|
Documentid: database.MustToDBUUID(params.DocumentID),
|
|
Value: value.GetStoreValue(),
|
|
Cleanversion: params.CleanVersion,
|
|
Textversion: params.TextVersion,
|
|
Queryversion: params.Query.Version,
|
|
})
|
|
if err != nil {
|
|
return uuid.Nil, err
|
|
}
|
|
|
|
id := database.MustToUUID(dbId)
|
|
|
|
return id, nil
|
|
}
|