106 lines
2.2 KiB
Go
106 lines
2.2 KiB
Go
// Code generated by sqlc. DO NOT EDIT.
|
|
// source: payees.sql
|
|
|
|
package postgres
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/google/uuid"
|
|
)
|
|
|
|
const createPayee = `-- name: CreatePayee :one
|
|
INSERT INTO payees
|
|
(name, budget_id)
|
|
VALUES ($1, $2)
|
|
RETURNING id, budget_id, name
|
|
`
|
|
|
|
type CreatePayeeParams struct {
|
|
Name string
|
|
BudgetID uuid.UUID
|
|
}
|
|
|
|
func (q *Queries) CreatePayee(ctx context.Context, arg CreatePayeeParams) (Payee, error) {
|
|
row := q.db.QueryRowContext(ctx, createPayee, arg.Name, arg.BudgetID)
|
|
var i Payee
|
|
err := row.Scan(&i.ID, &i.BudgetID, &i.Name)
|
|
return i, err
|
|
}
|
|
|
|
const getPayees = `-- name: GetPayees :many
|
|
SELECT payees.id, payees.budget_id, payees.name FROM payees
|
|
WHERE payees.budget_id = $1
|
|
ORDER BY name
|
|
`
|
|
|
|
func (q *Queries) GetPayees(ctx context.Context, budgetID uuid.UUID) ([]Payee, error) {
|
|
rows, err := q.db.QueryContext(ctx, getPayees, budgetID)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
defer rows.Close()
|
|
var items []Payee
|
|
for rows.Next() {
|
|
var i Payee
|
|
if err := rows.Scan(&i.ID, &i.BudgetID, &i.Name); 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 searchPayees = `-- name: SearchPayees :many
|
|
SELECT payees.id, payees.budget_id, payees.name, 'payee' as type FROM payees
|
|
WHERE payees.budget_id = $1
|
|
AND payees.name ILIKE $2
|
|
ORDER BY payees.name
|
|
`
|
|
|
|
type SearchPayeesParams struct {
|
|
BudgetID uuid.UUID
|
|
Search string
|
|
}
|
|
|
|
type SearchPayeesRow struct {
|
|
ID uuid.UUID
|
|
BudgetID uuid.UUID
|
|
Name string
|
|
Type interface{}
|
|
}
|
|
|
|
func (q *Queries) SearchPayees(ctx context.Context, arg SearchPayeesParams) ([]SearchPayeesRow, error) {
|
|
rows, err := q.db.QueryContext(ctx, searchPayees, arg.BudgetID, arg.Search)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
defer rows.Close()
|
|
var items []SearchPayeesRow
|
|
for rows.Next() {
|
|
var i SearchPayeesRow
|
|
if err := rows.Scan(
|
|
&i.ID,
|
|
&i.BudgetID,
|
|
&i.Name,
|
|
&i.Type,
|
|
); 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
|
|
}
|