20 lines
476 B
SQL
20 lines
476 B
SQL
-- name: CreatePayment :one
|
|
INSERT INTO payments (user_id, amount, currency, status, payment_processor_id, paid_at)
|
|
VALUES (?, ?, ?, ?, ?, ?)
|
|
RETURNING *;
|
|
|
|
-- name: GetPaymentByID :one
|
|
SELECT * FROM payments
|
|
WHERE id = ?;
|
|
|
|
-- name: GetPaymentsByUserID :many
|
|
SELECT * FROM payments
|
|
WHERE user_id = ?
|
|
ORDER BY created_at DESC;
|
|
|
|
-- name: UpdatePaymentStatus :one
|
|
UPDATE payments
|
|
SET status = ?, paid_at = CASE WHEN ? IS NOT NULL THEN ? ELSE paid_at END
|
|
WHERE id = ?
|
|
RETURNING *;
|