Add related object filter criteria to various filter types in graphql schema (#4861)

* Move filter criterion handlers into separate file
* Add related filters for image filter
* Add related filters for scene filter
* Add related filters to gallery filter
* Add related filters to movie filter
* Add related filters to performer filter
* Add related filters to studio filter
* Add related filters to tag filter
* Add scene filter to scene marker filter
This commit is contained in:
WithoutPants
2024-06-11 11:34:38 +10:00
committed by GitHub
parent ff23d4e20b
commit e843c890fb
41 changed files with 4562 additions and 3805 deletions

View File

@@ -346,8 +346,8 @@ func (qb *BlobStore) delete(ctx context.Context, checksum string) error {
}
type blobJoinQueryBuilder struct {
repository
blobStore *BlobStore
repository repository
blobStore *BlobStore
joinTable string
}
@@ -381,7 +381,7 @@ func (qb *blobJoinQueryBuilder) UpdateImage(ctx context.Context, id int, blobCol
}
sqlQuery := fmt.Sprintf("UPDATE %s SET %s = ? WHERE id = ?", qb.joinTable, blobCol)
if _, err := qb.tx.Exec(ctx, sqlQuery, checksum, id); err != nil {
if _, err := dbWrapper.Exec(ctx, sqlQuery, checksum, id); err != nil {
return err
}
@@ -428,7 +428,7 @@ func (qb *blobJoinQueryBuilder) DestroyImage(ctx context.Context, id int, blobCo
}
updateQuery := fmt.Sprintf("UPDATE %s SET %s = NULL WHERE id = ?", qb.joinTable, blobCol)
if _, err = qb.tx.Exec(ctx, updateQuery, id); err != nil {
if _, err = dbWrapper.Exec(ctx, updateQuery, id); err != nil {
return err
}
@@ -441,7 +441,7 @@ func (qb *blobJoinQueryBuilder) HasImage(ctx context.Context, id int, blobCol st
"joinCol": blobCol,
})
c, err := qb.runCountQuery(ctx, stmt, []interface{}{id})
c, err := qb.repository.runCountQuery(ctx, stmt, []interface{}{id})
if err != nil {
return false, err
}