df/db/query/payment.sql

47 lines
1.2 KiB
SQL

-- name: GetPayment :one
SELECT * FROM payments
WHERE "ID" = $1 LIMIT 1;
-- name: CreatePayment :one
INSERT INTO payments (
"accountID",
"paymentCategory",
"bankname",
"IBAN",
"BIC",
"paypalAccount",
"paypalID",
"paymentSystem",
"type",
"creator",
"changer"
) VALUES (
$1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11
) RETURNING *;
-- name: ListPayments :many
SELECT * FROM payments
ORDER BY "paymentCategory"
LIMIT $1
OFFSET $2;
-- name: UpdatePayment :one
UPDATE payments
SET
"accountID" = COALESCE(sqlc.narg(accountID), "accountID"),
"paymentCategory" = COALESCE(sqlc.narg(paymentCategory), "paymentCategory"),
"bankname" = COALESCE(sqlc.narg(bankname), "bankname"),
"IBAN" = COALESCE(sqlc.narg(IBAN), "IBAN"),
"BIC" = COALESCE(sqlc.narg(BIC), "BIC"),
"paypalAccount" = COALESCE(sqlc.narg(paypalAccount), "paypalAccount"),
"paypalID" = COALESCE(sqlc.narg(paypalID), "paypalID"),
"paymentSystem" = COALESCE(sqlc.narg(paymentSystem), "paymentSystem"),
"type" = COALESCE(sqlc.narg(type), "type"),
"changer" = $2,
"changed" = now()
WHERE "ID" = $1
RETURNING *;
-- name: DeletePayment :exec
DELETE FROM payments
WHERE "ID" = $1;