20260126_add_support_role.sql 654 B

123456789101112131415161718192021222324252627282930313233
  1. BEGIN;
  2. INSERT INTO "role" (role_id, company_id, role_name, role_permission, role_flag)
  3. SELECT
  4. 2,
  5. t.company_id,
  6. 'support',
  7. '{}'::jsonb,
  8. 'a'
  9. FROM (
  10. SELECT r.company_id, 1 AS ord
  11. FROM "role" r
  12. WHERE r.role_name = 'Admin'
  13. UNION ALL
  14. SELECT c.company_id, 2 AS ord
  15. FROM "company" c
  16. ) t
  17. ORDER BY t.ord
  18. LIMIT 1
  19. ON CONFLICT (role_id) DO UPDATE
  20. SET company_id = EXCLUDED.company_id,
  21. role_name = EXCLUDED.role_name,
  22. role_permission = EXCLUDED.role_permission,
  23. role_flag = EXCLUDED.role_flag;
  24. SELECT setval(
  25. pg_get_serial_sequence('"role"', 'role_id'),
  26. GREATEST((SELECT COALESCE(MAX(role_id), 0) FROM "role"), 1)
  27. );
  28. COMMIT;