Yimaru-BackEnd/db/query/settings.sql

48 lines
1.4 KiB
SQL

-- -- name: InsertGlobalSetting :exec
-- INSERT INTO global_settings (key, value)
-- VALUES ($1, $2) ON CONFLICT (key) DO
-- UPDATE
-- SET value = EXCLUDED.value;
-- -- name: GetGlobalSettings :many
-- SELECT *
-- FROM global_settings;
-- -- name: GetGlobalSetting :one
-- SELECT *
-- FROM global_settings
-- WHERE key = $1;
-- -- name: UpdateGlobalSetting :exec
-- UPDATE global_settings
-- SET value = $2,
-- updated_at = CURRENT_TIMESTAMP
-- WHERE key = $1;
-- -- name: InsertCompanySetting :exec
-- INSERT INTO company_settings (company_id, key, value)
-- VALUES ($1, $2, $3) ON CONFLICT (company_id, key) DO
-- UPDATE
-- SET value = EXCLUDED.value;
-- -- name: GetAllCompanySettings :many
-- SELECT *
-- FROM company_settings;
-- -- name: GetCompanySetting :many
-- SELECT *
-- FROM company_settings
-- WHERE company_id = $1;
-- -- name: GetCompanySettingsByKey :many
-- SELECT *
-- FROM company_settings
-- WHERE key = $1;
-- -- name: GetOverrideSettings :many
-- SELECT gs.key,
-- gs.created_at,
-- gs.updated_at,
-- COALESCE(cs.value, gs.value) AS value
-- FROM global_settings gs
-- LEFT JOIN company_settings cs ON cs.key = gs.key
-- AND cs.company_id = $1;
-- -- name: DeleteCompanySetting :exec
-- DELETE FROM company_settings
-- WHERE company_id = $1
-- AND key = $2;
-- -- name: DeleteAllCompanySetting :exec
-- DELETE FROM company_settings
-- WHERE company_id = $1;