- Melhora Importação: ignora linhas vazias/inválidas automaticamente.
- Filtros Server-Side: busca em todas as páginas (FOT, Nome, etc.).
- Colunas Novas: adiciona Curso, Instituição, Ano e Empresa na tabela.
- UI/UX: Corrige ordenação (vazios no fim) e adiciona scrollbar no topo.
Frontend:
- Implementa leitura e processamento de arquivos Excel (.xlsx) para Profissionais.
- Adiciona validação e truncamento automático de campos (CPF, UF, Whatsapp) para evitar erros.
- Cria lógica de mapeamento automático de Funções (ex: Fotógrafo, Cinegrafista).
- Adiciona card "Total Geral" na dashboard de Equipe (/equipe).
Backend:
- Cria endpoint e serviço de importação para cadastro em massa.
- Implementa tratamento de erros robusto e prevenção de panics (nil pointers).
- Ajusta queries de inserção e atualização (Upsert) no banco de dados.
Geral:
- Funcionalidade de importação estabilizada e validada.
- Implementa fluxo de edicao inteligente e otimizacoes
- Implementa deteccao de CPF existente no Admin (TeamPage) com redirecionamento automatico para Edicao.
- Isola formulario em ProfessionalModal para performance.
- Adiciona pre-checagem de CPF na API publica (retornando apenas dados seguros).
- Otimiza renderizacao da lista de equipe.
- Backend: Implementada lógica de importação de Agenda (Upsert) em `internal/agenda`.
- Backend: Criadas queries SQL para busca de FOT e Tipos de Evento.
- Frontend: Adicionada aba de Importação de Agenda em `ImportData.tsx`.
- Frontend: Implementado Parser de Excel para Agenda com tratamento de datas.
- UX: Adicionada Barra de Rolagem Superior Sincronizada na Tabela de Eventos.
- UX: Implementado `LoadingScreen` global unificado (Auth + DataContext).
- Perf: Adicionada Paginação no `EventTable` para resolver travamentos com grandes listas.
- Security: Proteção de rotas de importação (RequireWriteAccess).
Backend:
- Implementa rota e serviço de importação em lote (`/api/import/fot`).
- Adiciona suporte a "Upsert" para atualizar registros existentes sem duplicar.
- Corrige e migra schema do banco: ajuste na precisão de valores monetários e correções de sintaxe.
Frontend:
- Cria página de Importação de Dados com visualização de log e tratamento de erros.
- Implementa melhorias de UX nas tabelas (Importação e Gestão de FOT):
- Contadores de total de registros.
- Funcionalidade "Drag-to-Scroll" (arrastar para rolar).
- Barra de rolagem superior sincronizada na tabela de gestão.
- Corrige bug de "tela branca" ao filtrar dados vazios na gestão.
- Implementa edição de Role na tela de Aprovação com suporte a funções virtuais (Cine/Recep).
- Atualiza apiService com updateUserRole.
- Corrige visibilidade do Dashboard para RESEARCHER (DataContext).
- Backend: ListPending retorna tipo_profissional original.
- adiciona aba 'Sistema' nas configurações para gestão de tabelas auxiliares (CRUD) e tabela de preços
- vincula formulário de perfil com dados do usuário logado (API /api/profissionais)
- oculta abas 'Notificações' e 'Aparência'
- corrige layout e bugs de estado na página de configurações
Backend:
- Migration 007: alterada coluna `fot` de INTEGER para VARCHAR(50).
- Ajustados serviços (finance, agenda) e handlers para processar FOT como string.
- Regenerados modelos e queries do banco de dados (sqlc).
Frontend:
- [FotForm](cci:1://file:///c:/Projetos/photum/frontend/components/FotForm.tsx:13:0-348:2): Permitido input de texto/alfanumérico (ex: "20000MG").
- [EventTable](cci:1://file:///c:/Projetos/photum/frontend/components/EventTable.tsx:29:0-684:2): Removido bloqueio do botão "Aprovar" para equipes incompletas.
- [Dashboard](cci:1://file:///c:/Projetos/photum/frontend/pages/Dashboard.tsx:31:0-1749:2): Corrigida duplicação do campo "Qtd Formandos".
- [Dashboard](cci:1://file:///c:/Projetos/photum/frontend/pages/Dashboard.tsx:31:0-1749:2): Filtros de "Gerenciar Equipe" agora usam funções dinâmicas (IDs) em vez de valores fixos.
- `Navbar`: Logo agora redireciona corretamente para `/painel`.
Corrige o problema do Swagger UI mostrando localhost:8080 em produção.
A URL relativa "doc.json" funciona em qualquer ambiente pois o browser
resolve automaticamente o caminho completo baseado na URL atual.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Adiciona role 'agenda_viewer' para profissionais visualizarem apenas suas agendas
- Implementa middleware de autorização baseado em roles
- Adiciona validação de permissões nos endpoints de agenda
- Melhora exibição de dados financeiros e logísticos
- Atualiza componentes frontend para melhor UX
- Adiciona documentação sobre o papel de visualização de agenda