NAPPDesafio/api/models/users/users.sql.go
2024-07-21 00:15:14 -03:00

87 lines
1.5 KiB
Go

package users
import (
"context"
)
const createUser = `-- name: CreateUser :one
INSERT INTO users (
"user", created_at, updated_at, username, "password"
) VALUES (
$1, $2, $3, $4, $5
)
RETURNING "user", created_at, updated_at, username, password
`
type CreateUserParams struct {
User string
CreatedAt uint64
UpdatedAt *uint64
Username string
Password string
}
func (q *Queries) CreateUser(ctx context.Context, arg CreateUserParams) (User, error) {
row := q.db.QueryRow(ctx, createUser,
arg.User,
arg.CreatedAt,
arg.UpdatedAt,
arg.Username,
arg.Password,
)
var i User
err := row.Scan(
&i.User,
&i.CreatedAt,
i.UpdatedAt,
&i.Username,
&i.Password,
)
return i, err
}
const getUser = `-- name: GetUser :one
SELECT "user", created_at, updated_at, username, password FROM users
WHERE username = $1 LIMIT 1
`
func (q *Queries) GetUser(ctx context.Context, username string) (User, error) {
row := q.db.QueryRow(ctx, getUser, username)
var i User
err := row.Scan(
&i.User,
&i.CreatedAt,
&i.UpdatedAt,
&i.Username,
&i.Password,
)
return i, err
}
const updateUser = `-- name: UpdateUser :exec
UPDATE users
SET
updated_at = $2,
username = $3,
"password" = $4
WHERE "user" = $1
`
type UpdateUserParams struct {
User string
UpdatedAt uint64
Username string
Password string
}
func (q *Queries) UpdateUser(ctx context.Context, arg UpdateUserParams) error {
_, err := q.db.Exec(ctx, updateUser,
arg.User,
arg.UpdatedAt,
arg.Username,
arg.Password,
)
return err
}