// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.26.0 // source: talkgroups.sql package database import ( "context" ) const getTalkgroupTags = `-- name: GetTalkgroupTags :one SELECT tags FROM talkgroups WHERE system_id = $1 AND tgid = $2 ` func (q *Queries) GetTalkgroupTags(ctx context.Context, systemID int, tgid int) ([]string, error) { row := q.db.QueryRow(ctx, getTalkgroupTags, systemID, tgid) var tags []string err := row.Scan(&tags) return tags, err } const getTalkgroupsWithAllTags = `-- name: GetTalkgroupsWithAllTags :many SELECT system_id, tgid, name, tg_group, frequency, metadata, tags FROM talkgroups WHERE tags && ARRAY[$1] ` func (q *Queries) GetTalkgroupsWithAllTags(ctx context.Context, tags []string) ([]Talkgroup, error) { rows, err := q.db.Query(ctx, getTalkgroupsWithAllTags, tags) if err != nil { return nil, err } defer rows.Close() var items []Talkgroup for rows.Next() { var i Talkgroup if err := rows.Scan( &i.SystemID, &i.Tgid, &i.Name, &i.TgGroup, &i.Frequency, &i.Metadata, &i.Tags, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Err(); err != nil { return nil, err } return items, nil } const getTalkgroupsWithAnyTags = `-- name: GetTalkgroupsWithAnyTags :many SELECT system_id, tgid, name, tg_group, frequency, metadata, tags FROM talkgroups WHERE tags @> ARRAY[$1] ` func (q *Queries) GetTalkgroupsWithAnyTags(ctx context.Context, tags []string) ([]Talkgroup, error) { rows, err := q.db.Query(ctx, getTalkgroupsWithAnyTags, tags) if err != nil { return nil, err } defer rows.Close() var items []Talkgroup for rows.Next() { var i Talkgroup if err := rows.Scan( &i.SystemID, &i.Tgid, &i.Name, &i.TgGroup, &i.Frequency, &i.Metadata, &i.Tags, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Err(); err != nil { return nil, err } return items, nil } const setTalkgroupTags = `-- name: SetTalkgroupTags :exec UPDATE talkgroups SET tags = $1 WHERE system_id = $1 AND tgid = $2 ` func (q *Queries) SetTalkgroupTags(ctx context.Context, tags []string, tgid int) error { _, err := q.db.Exec(ctx, setTalkgroupTags, tags, tgid) return err }