mirror of https://github.com/rocboss/paopao-ce
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.
190 lines
3.5 KiB
190 lines
3.5 KiB
2 years ago
|
// Code generated by sqlc. DO NOT EDIT.
|
||
|
// versions:
|
||
|
// sqlc v1.16.0
|
||
|
// source: venue.sql
|
||
|
|
||
|
package dbr
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
|
||
|
"github.com/jackc/pgx/v5/pgtype"
|
||
|
)
|
||
|
|
||
|
const createVenue = `-- name: CreateVenue :one
|
||
|
INSERT INTO venue (
|
||
|
slug,
|
||
|
name,
|
||
|
city,
|
||
|
created_at,
|
||
|
spotify_playlist,
|
||
|
status,
|
||
|
statuses,
|
||
|
tags
|
||
|
) VALUES (
|
||
|
$1,
|
||
|
$2,
|
||
|
$3,
|
||
|
NOW(),
|
||
|
$4,
|
||
|
$5,
|
||
|
$6,
|
||
|
$7
|
||
|
) RETURNING id
|
||
|
`
|
||
|
|
||
|
type CreateVenueParams struct {
|
||
|
Slug string
|
||
|
Name string
|
||
|
City string
|
||
|
SpotifyPlaylist string
|
||
|
Status Status
|
||
|
Statuses pgtype.Array[Status]
|
||
|
Tags pgtype.Array[string]
|
||
|
}
|
||
|
|
||
|
func (q *Queries) CreateVenue(ctx context.Context, arg CreateVenueParams) (int32, error) {
|
||
|
row := q.db.QueryRow(ctx, createVenue,
|
||
|
arg.Slug,
|
||
|
arg.Name,
|
||
|
arg.City,
|
||
|
arg.SpotifyPlaylist,
|
||
|
arg.Status,
|
||
|
arg.Statuses,
|
||
|
arg.Tags,
|
||
|
)
|
||
|
var id int32
|
||
|
err := row.Scan(&id)
|
||
|
return id, err
|
||
|
}
|
||
|
|
||
|
const deleteVenue = `-- name: DeleteVenue :exec
|
||
|
DELETE FROM venue
|
||
|
WHERE slug = $1 AND slug = $1
|
||
|
`
|
||
|
|
||
|
func (q *Queries) DeleteVenue(ctx context.Context, slug string) error {
|
||
|
_, err := q.db.Exec(ctx, deleteVenue, slug)
|
||
|
return err
|
||
|
}
|
||
|
|
||
|
const getVenue = `-- name: GetVenue :one
|
||
|
SELECT id, status, statuses, slug, name, city, spotify_playlist, songkick_id, tags, created_at
|
||
|
FROM venue
|
||
|
WHERE slug = $1 AND city = $2
|
||
|
`
|
||
|
|
||
|
type GetVenueParams struct {
|
||
|
Slug string
|
||
|
City string
|
||
|
}
|
||
|
|
||
|
func (q *Queries) GetVenue(ctx context.Context, arg GetVenueParams) (Venue, error) {
|
||
|
row := q.db.QueryRow(ctx, getVenue, arg.Slug, arg.City)
|
||
|
var i Venue
|
||
|
err := row.Scan(
|
||
|
&i.ID,
|
||
|
&i.Status,
|
||
|
&i.Statuses,
|
||
|
&i.Slug,
|
||
|
&i.Name,
|
||
|
&i.City,
|
||
|
&i.SpotifyPlaylist,
|
||
|
&i.SongkickID,
|
||
|
&i.Tags,
|
||
|
&i.CreatedAt,
|
||
|
)
|
||
|
return i, err
|
||
|
}
|
||
|
|
||
|
const listVenues = `-- name: ListVenues :many
|
||
|
SELECT id, status, statuses, slug, name, city, spotify_playlist, songkick_id, tags, created_at
|
||
|
FROM venue
|
||
|
WHERE city = $1
|
||
|
ORDER BY name
|
||
|
`
|
||
|
|
||
|
func (q *Queries) ListVenues(ctx context.Context, city string) ([]Venue, error) {
|
||
|
rows, err := q.db.Query(ctx, listVenues, city)
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
defer rows.Close()
|
||
|
var items []Venue
|
||
|
for rows.Next() {
|
||
|
var i Venue
|
||
|
if err := rows.Scan(
|
||
|
&i.ID,
|
||
|
&i.Status,
|
||
|
&i.Statuses,
|
||
|
&i.Slug,
|
||
|
&i.Name,
|
||
|
&i.City,
|
||
|
&i.SpotifyPlaylist,
|
||
|
&i.SongkickID,
|
||
|
&i.Tags,
|
||
|
&i.CreatedAt,
|
||
|
); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
items = append(items, i)
|
||
|
}
|
||
|
if err := rows.Err(); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
return items, nil
|
||
|
}
|
||
|
|
||
|
const updateVenueName = `-- name: UpdateVenueName :one
|
||
|
UPDATE venue
|
||
|
SET name = $2
|
||
|
WHERE slug = $1
|
||
|
RETURNING id
|
||
|
`
|
||
|
|
||
|
type UpdateVenueNameParams struct {
|
||
|
Slug string
|
||
|
Name string
|
||
|
}
|
||
|
|
||
|
func (q *Queries) UpdateVenueName(ctx context.Context, arg UpdateVenueNameParams) (int32, error) {
|
||
|
row := q.db.QueryRow(ctx, updateVenueName, arg.Slug, arg.Name)
|
||
|
var id int32
|
||
|
err := row.Scan(&id)
|
||
|
return id, err
|
||
|
}
|
||
|
|
||
|
const venueCountByCity = `-- name: VenueCountByCity :many
|
||
|
SELECT
|
||
|
city,
|
||
|
count(*)
|
||
|
FROM venue
|
||
|
GROUP BY 1
|
||
|
ORDER BY 1
|
||
|
`
|
||
|
|
||
|
type VenueCountByCityRow struct {
|
||
|
City string
|
||
|
Count int64
|
||
|
}
|
||
|
|
||
|
func (q *Queries) VenueCountByCity(ctx context.Context) ([]VenueCountByCityRow, error) {
|
||
|
rows, err := q.db.Query(ctx, venueCountByCity)
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
defer rows.Close()
|
||
|
var items []VenueCountByCityRow
|
||
|
for rows.Next() {
|
||
|
var i VenueCountByCityRow
|
||
|
if err := rows.Scan(&i.City, &i.Count); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
items = append(items, i)
|
||
|
}
|
||
|
if err := rows.Err(); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
return items, nil
|
||
|
}
|