GraphQL API and utilities for the rpdata project
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

235 lines
5.7 KiB

// Code generated by sqlc. DO NOT EDIT.
// source: tags.sql
package psqlcore
import (
"context"
"github.com/lib/pq"
)
const clearTag = `-- name: ClearTag :exec
DELETE FROM common_tag
WHERE tag=$1::TEXT
AND target_kind=$2::TEXT
AND target_id=$3::TEXT
`
type ClearTagParams struct {
Tag string `json:"tag"`
TargetKind string `json:"target_kind"`
TargetID string `json:"target_id"`
}
func (q *Queries) ClearTag(ctx context.Context, arg ClearTagParams) error {
_, err := q.db.ExecContext(ctx, clearTag, arg.Tag, arg.TargetKind, arg.TargetID)
return err
}
const clearTagsByTarget = `-- name: ClearTagsByTarget :exec
DELETE FROM common_tag
WHERE target_kind=$1::TEXT
AND target_id=$2::TEXT
`
type ClearTagsByTargetParams struct {
TargetKind string `json:"target_kind"`
TargetID string `json:"target_id"`
}
func (q *Queries) ClearTagsByTarget(ctx context.Context, arg ClearTagsByTargetParams) error {
_, err := q.db.ExecContext(ctx, clearTagsByTarget, arg.TargetKind, arg.TargetID)
return err
}
const selectDistinctTags = `-- name: SelectDistinctTags :many
SELECT DISTINCT tag FROM common_tag
`
func (q *Queries) SelectDistinctTags(ctx context.Context) ([]string, error) {
rows, err := q.db.QueryContext(ctx, selectDistinctTags)
if err != nil {
return nil, err
}
defer rows.Close()
items := []string{}
for rows.Next() {
var tag string
if err := rows.Scan(&tag); err != nil {
return nil, err
}
items = append(items, tag)
}
if err := rows.Close(); err != nil {
return nil, err
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}
const selectDistinctTagsByKind = `-- name: SelectDistinctTagsByKind :many
SELECT DISTINCT tag FROM common_tag WHERE tag LIKE '$1::text%'
`
func (q *Queries) SelectDistinctTagsByKind(ctx context.Context) ([]string, error) {
rows, err := q.db.QueryContext(ctx, selectDistinctTagsByKind)
if err != nil {
return nil, err
}
defer rows.Close()
items := []string{}
for rows.Next() {
var tag string
if err := rows.Scan(&tag); err != nil {
return nil, err
}
items = append(items, tag)
}
if err := rows.Close(); err != nil {
return nil, err
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}
const selectTagsByTag = `-- name: SelectTagsByTag :many
SELECT tag, target_kind, target_id FROM common_tag WHERE tag = $1::text
`
func (q *Queries) SelectTagsByTag(ctx context.Context, tagName string) ([]CommonTag, error) {
rows, err := q.db.QueryContext(ctx, selectTagsByTag, tagName)
if err != nil {
return nil, err
}
defer rows.Close()
items := []CommonTag{}
for rows.Next() {
var i CommonTag
if err := rows.Scan(&i.Tag, &i.TargetKind, &i.TargetID); err != nil {
return nil, err
}
items = append(items, i)
}
if err := rows.Close(); err != nil {
return nil, err
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}
const selectTagsByTags = `-- name: SelectTagsByTags :many
SELECT tag, target_kind, target_id FROM common_tag WHERE tag = ANY($1::text[])
`
func (q *Queries) SelectTagsByTags(ctx context.Context, tagNames []string) ([]CommonTag, error) {
rows, err := q.db.QueryContext(ctx, selectTagsByTags, pq.Array(tagNames))
if err != nil {
return nil, err
}
defer rows.Close()
items := []CommonTag{}
for rows.Next() {
var i CommonTag
if err := rows.Scan(&i.Tag, &i.TargetKind, &i.TargetID); err != nil {
return nil, err
}
items = append(items, i)
}
if err := rows.Close(); err != nil {
return nil, err
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}
const selectTagsByTarget = `-- name: SelectTagsByTarget :many
SELECT tag, target_kind, target_id FROM common_tag WHERE target_kind = $1 AND target_id = $2::text
`
type SelectTagsByTargetParams struct {
TargetKind string `json:"target_kind"`
Column2 string `json:"column_2"`
}
func (q *Queries) SelectTagsByTarget(ctx context.Context, arg SelectTagsByTargetParams) ([]CommonTag, error) {
rows, err := q.db.QueryContext(ctx, selectTagsByTarget, arg.TargetKind, arg.Column2)
if err != nil {
return nil, err
}
defer rows.Close()
items := []CommonTag{}
for rows.Next() {
var i CommonTag
if err := rows.Scan(&i.Tag, &i.TargetKind, &i.TargetID); err != nil {
return nil, err
}
items = append(items, i)
}
if err := rows.Close(); err != nil {
return nil, err
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}
const selectTagsByTargets = `-- name: SelectTagsByTargets :many
SELECT tag, target_kind, target_id FROM common_tag WHERE target_kind = $1 AND target_id = ANY($2::text[])
`
type SelectTagsByTargetsParams struct {
TargetKind string `json:"target_kind"`
Column2 []string `json:"column_2"`
}
func (q *Queries) SelectTagsByTargets(ctx context.Context, arg SelectTagsByTargetsParams) ([]CommonTag, error) {
rows, err := q.db.QueryContext(ctx, selectTagsByTargets, arg.TargetKind, pq.Array(arg.Column2))
if err != nil {
return nil, err
}
defer rows.Close()
items := []CommonTag{}
for rows.Next() {
var i CommonTag
if err := rows.Scan(&i.Tag, &i.TargetKind, &i.TargetID); err != nil {
return nil, err
}
items = append(items, i)
}
if err := rows.Close(); err != nil {
return nil, err
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}
const setTag = `-- name: SetTag :exec
INSERT INTO common_tag (tag, target_kind, target_id)
VALUES (
$1::TEXT, $2::TEXT, $3::TEXT
)
ON CONFLICT DO NOTHING
`
type SetTagParams struct {
Tag string `json:"tag"`
TargetKind string `json:"target_kind"`
TargetID string `json:"target_id"`
}
func (q *Queries) SetTag(ctx context.Context, arg SetTagParams) error {
_, err := q.db.ExecContext(ctx, setTag, arg.Tag, arg.TargetKind, arg.TargetID)
return err
}