Drop one-shot tmp/axe scripts and agent i18n scratch so the Gitea tree is deployable.
30 lines
763 B
SQL
30 lines
763 B
SQL
-- name: CreateMembership :one
|
|
INSERT INTO memberships (company_id, user_id, role, status)
|
|
VALUES ($1, $2, $3, $4)
|
|
RETURNING *;
|
|
|
|
-- name: GetMembership :one
|
|
SELECT * FROM memberships
|
|
WHERE company_id = $1 AND user_id = $2
|
|
LIMIT 1;
|
|
|
|
-- name: ListMembershipsByCompany :many
|
|
SELECT m.*, u.email, u.name AS user_name
|
|
FROM memberships m
|
|
JOIN users u ON u.id = m.user_id
|
|
WHERE m.company_id = $1
|
|
ORDER BY m.created_at;
|
|
|
|
-- name: ListMembershipsByUser :many
|
|
SELECT m.*, c.name AS company_name
|
|
FROM memberships m
|
|
JOIN companies c ON c.id = m.company_id
|
|
WHERE m.user_id = $1 AND m.status = 'active'
|
|
ORDER BY m.created_at;
|
|
|
|
-- name: DeactivateMembership :one
|
|
UPDATE memberships
|
|
SET status = 'inactive', updated_at = now()
|
|
WHERE company_id = $1 AND user_id = $2
|
|
RETURNING *;
|