Como você mencionou que ainda não executou nada, aqui estão os próximos passos na ordem correta:
-- Execute primeiro: create_user_roles_system.sql
-- Este script cria o campo 'role' na tabela clients-- Execute: create_company_admin_system.sql
-- Este script adiciona o campo is_company_admin na tabela employees
-- E cria funções helper para verificar Admin do Cliente-- Execute: create_admin_full_access_rls_v2.sql
-- Este script atualiza as políticas RLS para incluir Admin do Cliente
-- IMPORTANTE: Este script substitui o create_admin_full_access_rls.sql anterior
-- ✅ ARQUIVO JÁ CRIADO-- Execute: create_admin_constraints.sql
-- Este script cria triggers para validaçõesApós executar os scripts SQL, será necessário atualizar:
api/employees/index.js- Adicionar verificação de Admin do Cliente- Rotas de Prospecção - Proteger para apenas Admin do Banco
- Rotas de Campanhas - Proteger para apenas Admin do Banco
src/utils/permissions.js- Adicionar funções para Admin do Cliente
- Componentes de Gestão de Colaboradores
- Componentes de Prospecção (proteger rotas)
- Componentes de Campanhas (proteger rotas)
- Sidebar (mostrar/ocultar links)
- Criar
CompanyAdminRouteeBankAdminRoute - Atualizar
src/App.jsx
Após implementação:
- Testar Admin do Banco (acesso total)
- Testar Admin do Cliente (acesso limitado à empresa)
- Testar Colaborador Normal (acesso básico)
- Verificar que Prospecção e Campanhas são apenas para Admin do Banco
- Verificar que Gestão de Colaboradores funciona para Admin do Banco e Admin do Cliente
Para marcar um colaborador como Admin do Cliente:
-- Marcar colaborador como admin da empresa
UPDATE public.employees
SET is_company_admin = true
WHERE id = 'ID_DO_EMPLOYEE_AQUI';
-- Ou marcar pelo platform_user_id e company_id
UPDATE public.employees
SET is_company_admin = true
WHERE platform_user_id = 'USER_ID_AQUI'
AND company_id = 'COMPANY_ID_AQUI';- ✅ Scripts SQL base (precisam ser atualizados)
- ✅ APIs de companies e connections (precisam ajustes menores)
- ✅ Componentes de integrações (precisam ajustes menores)
- ✅ Script SQL para Admin do Cliente (
create_company_admin_system.sql- CRIADO) - ✅ Script SQL atualizado de RLS (
create_admin_full_access_rls_v2.sql- CRIADO) - ⏳ APIs de employees (atualizar)
- ⏳ Proteção de rotas de Prospecção
- ⏳ Proteção de rotas de Campanhas
- ⏳ Componentes de proteção de rotas
- ⏳ Utils de permissões atualizados
- Primeiro: Execute
create_company_admin_system.sqlno Supabase - Segundo: Aguarde a criação do script
create_admin_full_access_rls_v2.sql(será criado em seguida) - Terceiro: Execute
create_admin_full_access_rls_v2.sqlno Supabase - Quarto: Aguarde as atualizações de código que serão feitas
- Quinto: Teste o sistema completo