mirror of
https://github.com/J3vb/OwnCord.git
synced 2026-09-03 03:50:00 +03:00
- Add sqlc.yaml config (SQLite engine, db/queries/sqlite/, db/dbgen/ output) - Pin sqlc v1.30.0 in sqlc.version - Add Makefile with sqlc-install, sqlc-generate, sqlc-verify targets - Write 14 SQL query files covering all DB domains (users, sessions, invites, channels, messages, reactions, voice, roles, attachments, admin, dm, blocks, lockouts, profile) - Commit generated db/dbgen/ package (querier interface + typed fns) - FTS5 search queries remain hand-written in message_queries.go; transactional multi-step operations unchanged in Go
27 lines
845 B
SQL
27 lines
845 B
SQL
-- name: GetRoleByID :one
|
|
SELECT id, name, color, permissions, position, is_default
|
|
FROM roles WHERE id = ?;
|
|
|
|
-- name: ListRoles :many
|
|
SELECT id, name, color, permissions, position, is_default
|
|
FROM roles ORDER BY position DESC;
|
|
|
|
-- name: GetRoleForUser :one
|
|
SELECT r.id, r.name, r.color, r.permissions, r.position, r.is_default
|
|
FROM users u
|
|
JOIN roles r ON u.role_id = r.id
|
|
WHERE u.id = ?;
|
|
|
|
-- name: GetUserWithRole :one
|
|
SELECT u.id, u.username, u.password, u.avatar, u.role_id,
|
|
u.totp_secret, u.status, u.created_at, u.last_seen,
|
|
u.banned, u.ban_reason, u.ban_expires,
|
|
r.id, r.name, r.color, r.permissions, r.position, r.is_default
|
|
FROM users u
|
|
JOIN roles r ON r.id = u.role_id
|
|
WHERE u.id = ?;
|
|
|
|
-- name: GetDefaultRole :one
|
|
SELECT id, name, color, permissions, position, is_default
|
|
FROM roles WHERE is_default = 1 LIMIT 1;
|