// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.30.0 // source: image_reference.sql package generated import ( "context" "github.com/jackc/pgx/v5/pgtype" ) const countImageReferences = `-- name: CountImageReferences :one SELECT COUNT(*)::INT AS total FROM image_asset_references WHERE tenant_id = $1 AND image_asset_id = $2 ` type CountImageReferencesParams struct { TenantID int64 `json:"tenant_id"` ImageAssetID int64 `json:"image_asset_id"` } func (q *Queries) CountImageReferences(ctx context.Context, arg CountImageReferencesParams) (int32, error) { row := q.db.QueryRow(ctx, countImageReferences, arg.TenantID, arg.ImageAssetID) var total int32 err := row.Scan(&total) return total, err } const deleteImageReferencesByArticle = `-- name: DeleteImageReferencesByArticle :exec DELETE FROM image_asset_references WHERE tenant_id = $1 AND article_id = $2 ` type DeleteImageReferencesByArticleParams struct { TenantID int64 `json:"tenant_id"` ArticleID int64 `json:"article_id"` } func (q *Queries) DeleteImageReferencesByArticle(ctx context.Context, arg DeleteImageReferencesByArticleParams) error { _, err := q.db.Exec(ctx, deleteImageReferencesByArticle, arg.TenantID, arg.ArticleID) return err } const deleteImageReferencesByArticleScope = `-- name: DeleteImageReferencesByArticleScope :exec DELETE FROM image_asset_references WHERE tenant_id = $1 AND article_id = $2 AND ref_scope = $3 ` type DeleteImageReferencesByArticleScopeParams struct { TenantID int64 `json:"tenant_id"` ArticleID int64 `json:"article_id"` RefScope string `json:"ref_scope"` } func (q *Queries) DeleteImageReferencesByArticleScope(ctx context.Context, arg DeleteImageReferencesByArticleScopeParams) error { _, err := q.db.Exec(ctx, deleteImageReferencesByArticleScope, arg.TenantID, arg.ArticleID, arg.RefScope) return err } const listImageReferenceArticles = `-- name: ListImageReferenceArticles :many SELECT DISTINCT r.article_id, r.ref_scope FROM image_asset_references r WHERE r.tenant_id = $1 AND r.image_asset_id = $2 ` type ListImageReferenceArticlesParams struct { TenantID int64 `json:"tenant_id"` ImageAssetID int64 `json:"image_asset_id"` } type ListImageReferenceArticlesRow struct { ArticleID int64 `json:"article_id"` RefScope string `json:"ref_scope"` } func (q *Queries) ListImageReferenceArticles(ctx context.Context, arg ListImageReferenceArticlesParams) ([]ListImageReferenceArticlesRow, error) { rows, err := q.db.Query(ctx, listImageReferenceArticles, arg.TenantID, arg.ImageAssetID) if err != nil { return nil, err } defer rows.Close() var items []ListImageReferenceArticlesRow for rows.Next() { var i ListImageReferenceArticlesRow if err := rows.Scan(&i.ArticleID, &i.RefScope); err != nil { return nil, err } items = append(items, i) } if err := rows.Err(); err != nil { return nil, err } return items, nil } const listImageReferences = `-- name: ListImageReferences :many SELECT r.id, r.tenant_id, r.image_asset_id, r.article_id, r.ref_scope, r.created_at FROM image_asset_references r WHERE r.tenant_id = $1 AND r.image_asset_id = $2 ` type ListImageReferencesParams struct { TenantID int64 `json:"tenant_id"` ImageAssetID int64 `json:"image_asset_id"` } type ListImageReferencesRow struct { ID int64 `json:"id"` TenantID int64 `json:"tenant_id"` ImageAssetID int64 `json:"image_asset_id"` ArticleID int64 `json:"article_id"` RefScope string `json:"ref_scope"` CreatedAt pgtype.Timestamptz `json:"created_at"` } func (q *Queries) ListImageReferences(ctx context.Context, arg ListImageReferencesParams) ([]ListImageReferencesRow, error) { rows, err := q.db.Query(ctx, listImageReferences, arg.TenantID, arg.ImageAssetID) if err != nil { return nil, err } defer rows.Close() var items []ListImageReferencesRow for rows.Next() { var i ListImageReferencesRow if err := rows.Scan( &i.ID, &i.TenantID, &i.ImageAssetID, &i.ArticleID, &i.RefScope, &i.CreatedAt, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Err(); err != nil { return nil, err } return items, nil } const upsertImageReference = `-- name: UpsertImageReference :exec INSERT INTO image_asset_references (tenant_id, image_asset_id, article_id, ref_scope) VALUES ($1, $2, $3, $4) ON CONFLICT (image_asset_id, article_id, ref_scope) DO UPDATE SET updated_at = NOW() ` type UpsertImageReferenceParams struct { TenantID int64 `json:"tenant_id"` ImageAssetID int64 `json:"image_asset_id"` ArticleID int64 `json:"article_id"` RefScope string `json:"ref_scope"` } func (q *Queries) UpsertImageReference(ctx context.Context, arg UpsertImageReferenceParams) error { _, err := q.db.Exec(ctx, upsertImageReference, arg.TenantID, arg.ImageAssetID, arg.ArticleID, arg.RefScope, ) return err }