// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.30.0 // source: roles.sql package db import ( "context" "github.com/google/uuid" "github.com/jackc/pgx/v5/pgtype" ) const createRole = `-- name: CreateRole :one INSERT INTO roles (name, description, created_by) VALUES ( $1, $2, $3) RETURNING id, name, description, created_at, created_by ` type CreateRoleParams struct { Name string `db:"name" json:"name"` Description pgtype.Text `db:"description" json:"description"` CreatedBy pgtype.Text `db:"created_by" json:"createdBy"` } func (q *Queries) CreateRole(ctx context.Context, arg CreateRoleParams) (Role, error) { row := q.db.QueryRow(ctx, createRole, arg.Name, arg.Description, arg.CreatedBy) var i Role err := row.Scan( &i.ID, &i.Name, &i.Description, &i.CreatedAt, &i.CreatedBy, ) return i, err } const deleteRole = `-- name: DeleteRole :execrows DELETE FROM roles WHERE id = $1 ` func (q *Queries) DeleteRole(ctx context.Context, id uuid.UUID) (int64, error) { result, err := q.db.Exec(ctx, deleteRole, id) if err != nil { return 0, err } return result.RowsAffected(), nil } const getRoleByID = `-- name: GetRoleByID :one SELECT id, name, description, created_at, created_by FROM roles WHERE id = $1 ` func (q *Queries) GetRoleByID(ctx context.Context, id uuid.UUID) (Role, error) { row := q.db.QueryRow(ctx, getRoleByID, id) var i Role err := row.Scan( &i.ID, &i.Name, &i.Description, &i.CreatedAt, &i.CreatedBy, ) return i, err } const listRoles = `-- name: ListRoles :many SELECT id, name, description, created_at, created_by FROM roles ORDER BY created_at DESC ` func (q *Queries) ListRoles(ctx context.Context) ([]Role, error) { rows, err := q.db.Query(ctx, listRoles) if err != nil { return nil, err } defer rows.Close() var items []Role for rows.Next() { var i Role if err := rows.Scan( &i.ID, &i.Name, &i.Description, &i.CreatedAt, &i.CreatedBy, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Err(); err != nil { return nil, err } return items, nil } const updateRole = `-- name: UpdateRole :one UPDATE roles SET name = $1, description = $2 WHERE id = $3 RETURNING id, name, description, created_at, created_by ` type UpdateRoleParams struct { Name string `db:"name" json:"name"` Description pgtype.Text `db:"description" json:"description"` ID uuid.UUID `db:"id" json:"id"` } func (q *Queries) UpdateRole(ctx context.Context, arg UpdateRoleParams) (Role, error) { row := q.db.QueryRow(ctx, updateRole, arg.Name, arg.Description, arg.ID) var i Role err := row.Scan( &i.ID, &i.Name, &i.Description, &i.CreatedAt, &i.CreatedBy, ) return i, err }