Atue como Engenheiro de Software Sênior e Arquiteto de Soluç...
Prompt
Atue como Engenheiro de Software Sênior e Arquiteto de Soluções Fullstack especialista em SaaS Multi-tenant. Sua missão é projetar e desenvolver um sistema completo de CRM e Gestão para Igrejas baseado nas funcionalidades do ecossistema Enuves, estruturado de forma limpa, moderna, modular e com 100% de funcionamento prático de ponta a ponta. Stack Tecnológica Obrigatória: - Framework: Next.js (App Router, Server Actions, TypeScript) - Banco de Dados: PostgreSQL com ORM (Prisma ou Drizzle) - Estilização & UI: Tailwind CSS + Shadcn/UI + Lucide React - Autenticação e Autorização: NextAuth.js ou Supabase Auth com suporte a Multi-tenancy e RBAC estrito (Roles baseadas em permissões por módulo). --- ### MODELAGEM MULTI-TENANT E SEGURANÇA 1. Cada igreja é uma entidade isolada (`Church` / Tenant). Todas as tabelas e consultas contêm obrigatoriamente `church_id`. 2. Perfis de Acesso (RBAC): - SUPER_ADMIN: Acesso global à plataforma. - ADMIN_IGREJA: Acesso irrestrito a todos os módulos do tenant. - PASTOR / LIDERANÇA: Visão geral e relatórios ministeriais. - TESOUREIRO: Acesso restrito ao módulo Financeiro, caixas e prestação de contas. - LIDER_CELULA: Acesso restrito à gestão de sua célula, membros e envio de relatórios semanais. - PROFESSOR_EBD: Acesso restrito à sua turma, lançamento de presenças e materiais. - MEMBRO: Acesso exclusivo ao Portal do Membro (sua carteirinha, seus dados, seus dízimos pessoais, mural de avisos e agenda). --- ### ESCOPO COMPLETO DE FUNCIONALIDADES E REQUISITOS DE NEGÓCIO #### 1. DASHBOARD & MÉTRICAS PRINCIPAIS - Contadores em tempo real: Total de membros ativos, visitantes, novos convertidos no mês e aniversariantes da semana/mês. - Gráfico de Novos Convertidos: Evolução mensal de conversões/batismos nos últimos 12 meses. - Termômetro de Células: Indicador de células ativas vs. inativas (alerta automático se uma célula estiver há mais de 15/30 dias sem enviar relatório de reunião). - Feed de Cadastros Recentes e próximas datas de aniversário com atalho para felicitação via WhatsApp. #### 2. GESTÃO DE PESSOAS & CRM (MEMBROS E VISITANTES) - Ficha Cadastral 360º: - Dados pessoais: Nome, foto de perfil, gênero, estado civil, data de nascimento, RG/CPF. - Dados eclesiásticos: Data de batismo, data de conversão, cargo/função eclesiástica (ex: Pastor, Diácono, Obreiro, Membro, Visitante, Criança), status (Ativo/Inativo/Transferido/Falecido). - Contato e Endereço: Telefone/WhatsApp, e-mail e endereço completo com CEP. - Campos Personalizados: Capacidade do administrador criar campos customizados dinâmicos (texto, número, seleção). - Aba de Histórico Integrado: Exibe em quais células o membro participa, quais turmas de ensino faz parte e seu histórico de contribuições. - Link Público de Auto-Cadastro (`/[slug-igreja]/cadastro`): - Formulário público responsivo para visitantes e membros preencherem seus próprios dados pelo celular, entrando com status "Pendente/Novo" para moderação da secretaria. - Gerador de Carteirinha de Membro: - Layout visual de credencial digital/impressa contendo foto, nome, cargo, congregação, data de batismo, data de emissão/validade e QR Code de validação. #### 3. CÉLULAS / PEQUENOS GRUPOS - Gestão de Grupos: - Cadastro de célula: Nome do grupo, foto/banner, até 4 líderes/co-líderes vinculados, anfitrião, dia e horário fixo da reunião, endereço e link do WhatsApp do grupo. - Vinculação de membros ao grupo. - Relatório de Encontro Semanal (preenchido pelo líder via mobile): - Data do encontro, quantidade de membros presentes, quantidade de visitantes, valor de oferta arrecadada no encontro, resumo da palavra/observações espirituais. - Automação de Status: Marcação automática da célula como "Inativa/Alerta" caso fique X semanas sem submissão de relatório. #### 4. ENSINO & DISCIPULADO (EBD / CURSOS) - Gestão de Turmas e Disciplinas: Criação de salas com ano/semestre letivo, professor responsável e alunos matriculados. - Material Didático: Upload e disponibilização de arquivos em PDF, apostilas e links para os alunos da turma. - Chamada e Frequência: Lançamento de presenças por aula e geração de relatório consolidado de assiduidade do aluno para graduação/certificação. #### 5. FINANCEIRO & TESOURARIA - Gestão de Contas e Caixas: Múltiplas contas (Caixa Físico, Conta Bancária, Poupança). - Entradas de Valores: - Registro de Dízimos e Ofertas, com opção de atribuir ao membro (com confidencialidade estrita) ou lançamento anônimo. - Outras receitas (eventos, cantina, doações específicas). - Saídas e Despesas: - Categorização via plano de contas (Aluguel, Água/Luz, Missões, Manutenção, Ação Social). - Upload de comprovantes/notas fiscais (PDF/imagem). - Relatórios & Fluxo de Caixa: Demonstrativo de Resultados do Exercício (DRE simplificado), extrato por período, balancete mensal e impressão de relatórios para assembleias. #### 6. AGENDA & EVENTOS - Calendário Institucional: Visualização mensal/semanal de cultos fixos, conferências, vigílias e ensaios. - Detalhes do Evento: Título, data/hora de início e término, local, descrição e indicação de público-alvo (Geral, Jovens, Mulheres, Crianças). #### 7. COMUNICAÇÃO & MURAL DE AVISOS - Mural de Avisos da Igreja: Criação de comunicados importantes com fixação no topo e definição de período de exibição. - Notificação interna visível no painel inicial de todos os usuários logados. #### 8. ESTUDOS & DEVOCIONAIS - Publicador de Conteúdo: Artigos, esboços de sermões e roteiros de células organizados por categorias temáticas (Família, Doutrina, Liderança, Infantil, Células). - Editor de texto rico para leitura direta no sistema ou exportação. #### 9. MÍDIAS & CENTRAL DE ARQUIVOS - Galeria de Mídias: Criação de álbuns de fotos de eventos da igreja e incorporação de links de transmissões/vídeos do YouTube. - Central de Downloads: Repositório de arquivos institucionais (estatuto, regimentos internos, modelos de cartas de recomendação) protegidos por permissão de acesso. #### 10. PATRIMÔNIO & ATIVOS DA IGREJA - Cadastro de Bens: Nome do item, código de tombamento/patrimônio, setor/localização física (ex: Templo Principal, Sala do Som, Cozinha), estado de conservação (Novo, Bom, Danificado) e valor estimado. #### 11. FORMULÁRIOS DINÂMICOS - Criador de formulários personalizados para inscrições de eventos, encontros, retiros e pedidos de oração com links públicos compartilháveis. #### 12. BLOCO DE NOTAS ("MINHAS ANOTAÇÕES") - Bloco de notas pessoal integrado para cada usuário logado (pastores e líderes salvarem apontamentos confidenciais e rascunhos de pregações). #### 13. PORTAL DO MEMBRO (ÁREA RESTRITA DO MEMBRO) - Dashboard simplificado mobile-first: - Visualização da Carteirinha Digital de Membro. - Acesso ao Mural de Avisos e Agenda de Cultos. - Materiais de estudo e devocionais liberados. - Extrato Confidencial Pessoal: Histórico exclusivamente individual de seus próprios dízimos e ofertas entregues à igreja (sem acesso ao financeiro geral). - Atualização dos seus próprios dados de contato e endereço. --- ### INSTRUÇÕES DE ENTREGA DO CÓDIGO 1. Esquema do Banco de Dados: Forneça o arquivo `schema.prisma` completo, indexado e com todas as relações e enums descritos. 2. Camada de Negócio e Serviços: Crie as Server Actions e funções de acesso ao banco com filtros automáticos por `church_id`. 3. Middleware de Proteção de Rotas: Validação de sessão, tenant e permissões por Role (RBAC). 4. Telas & Componentes UI: Desenvolva o layout principal responsivo (Sidebar, Navbar com seletor de perfil, Breadcrumbs) e as páginas cruciais (Dashboard, CRM de Membros, Gestão de Células, Lançamentos Financeiros e Portal do Membro).
A system prompt was added to support web rendering
Response not available