// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.27.0 // source: job.sql package repository import ( "context" "github.com/jackc/pgx/v5/pgtype" ) const addJobCanSync = `-- name: AddJobCanSync :exec INSERT INTO jobCanSync (canSync, jobId) VALUES ($1, $2) ` type AddJobCanSyncParams struct { Cansync bool `db:"cansync"` Jobid pgtype.UUID `db:"jobid"` } // AddJobCanSync // // INSERT INTO jobCanSync (canSync, jobId) VALUES ($1, $2) func (q *Queries) AddJobCanSync(ctx context.Context, arg *AddJobCanSyncParams) error { _, err := q.db.Exec(ctx, addJobCanSync, arg.Cansync, arg.Jobid) return err } const createJob = `-- name: CreateJob :one INSERT INTO jobs (clientId) VALUES ($1) RETURNING id ` // CreateJob // // INSERT INTO jobs (clientId) VALUES ($1) RETURNING id func (q *Queries) CreateJob(ctx context.Context, clientid pgtype.UUID) (pgtype.UUID, error) { row := q.db.QueryRow(ctx, createJob, clientid) var id pgtype.UUID err := row.Scan(&id) return id, err } const getJob = `-- name: GetJob :one SELECT j.id, j.clientId, coalesce(cs.canSync, false) as canSync FROM jobs as j LEFT JOIN ( SELECT jobId, canSync FROM jobCanSync WHERE jobId = $1 ORDER BY addedAt DESC LIMIT 1 ) as cs on cs.jobId = j.id WHERE j.id = $1 ` type GetJobRow struct { ID pgtype.UUID `db:"id"` Clientid pgtype.UUID `db:"clientid"` Cansync bool `db:"cansync"` } // GetJob // // SELECT j.id, j.clientId, coalesce(cs.canSync, false) as canSync // FROM jobs as j // LEFT JOIN ( // SELECT jobId, canSync // FROM jobCanSync // WHERE jobId = $1 // ORDER BY addedAt DESC // LIMIT 1 // ) as cs on cs.jobId = j.id // WHERE j.id = $1 func (q *Queries) GetJob(ctx context.Context, jobid pgtype.UUID) (*GetJobRow, error) { row := q.db.QueryRow(ctx, getJob, jobid) var i GetJobRow err := row.Scan(&i.ID, &i.Clientid, &i.Cansync) return &i, err }