Commit graph

21 commits

Author SHA1 Message Date
NANDO9322
21987d221e feat(ux): melhorias de navegação, formulário e fluxo de eventos
Backend:
- Adiciona campo `contacts` (JSONB) na tabela `agendas` e atualiza lógica de criação.

Frontend:
- Adiciona campos dinâmicos de contato no formulário de Novo Evento.
- Otimiza busca do Mapbox priorizando a região selecionada (SP/MG).
- Implementa "Deep Linking" no Dashboard (abrir detalhes do evento direto via URL).
- Corrige "flicker" (piscada da lista) ao carregar detalhes via link permitindo carregamento suave.
- Adiciona botão "Aprovar" e fluxo de aprovação na visualização de detalhes.
- Corrige fluxo de edição (salvar retorna para detalhes sem recarregar a página).
- Corrige navegação dos botões "Voltar" em Detalhes e Logística para retornarem corretamente à lista/painel.
- Melhora layout do cabeçalho de detalhes (remove ID vazio e unifica títulos duplicados).
- Ajusta clique no Logo para forçar reset da navegação para o Painel.
2026-02-06 13:32:11 -03:00
NANDO9322
f8bb2e66dd feat: suporte completo multi-região (SP/MG) e melhorias na validação de importação
Detalhes das alterações:

[Banco de Dados]
- Ajuste nas constraints UNIQUE das tabelas de catálogo (cursos, empresas, tipos_eventos, etc.) para incluir a coluna `regiao`, permitindo dados duplicados entre regiões mas únicos por região.
- Correção crítica na constraint da tabela `precos_tipos_eventos` para evitar conflitos de UPSERT (ON CONFLICT) durante a inicialização.
- Implementação de lógica de Seed para a região 'MG':
  - Clonagem automática de catálogos base de 'SP' para 'MG' (Tipos de Evento, Serviços, etc.).
  - Inserção de tabela de preços específica para 'MG' via script de migração.

[Backend - Go]
- Atualização geral dos Handlers e Services para filtrar dados baseados no cabeçalho `x-regiao`.
- Ajuste no Middleware de autenticação para processar e repassar o contexto da região.
- Correção de queries SQL (geradas pelo sqlc) para suportar os novos filtros regionais.

[Frontend - React]
- Implementação do envio global do cabeçalho `x-regiao` nas requisições da API.
- Correção no componente [PriceTableEditor](cci:1://file:///c:/Projetos/photum/frontend/components/System/PriceTableEditor.tsx:26:0-217:2) para carregar e salvar preços respeitando a região selecionada (fix de "Preços zerados" em MG).
- Refatoração profunda na tela de Importação ([ImportData.tsx](cci:7://file:///c:/Projetos/photum/frontend/pages/ImportData.tsx:0:0-0:0)):
  - Adição de feedback visual detalhado para registros ignorados.
  - Categorização explícita de erros: "CPF Inválido", "Região Incompatível", "Linha Vazia/Separador".
  - Correção na lógica de contagem para considerar linhas vazias explicitamente no relatório final, garantindo que o total bata com o Excel.

[Geral]
- Correção de diversos erros de lint e tipagem TSX.
- Padronização de logs de erro no backend para facilitar debug.
2026-02-05 16:18:40 -03:00
NANDO9322
d471b4fc0d - Adiciona filtro de role RESEARCHER na tela de Aprovaçã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.
2026-01-31 14:20:51 -03:00
NANDO9322
c71095b5f3 feat: Refatoração da página de Perfil com novo layout Sidebar e correções de Header e Backend 2026-01-31 11:54:26 -03:00
NANDO9322
765496065a feat: suporte a FOT alfanumérico e correções de UI
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`.
2026-01-29 22:15:14 -03:00
JoaoVitorMS0
93d603da6c feat: implementa visualização de agenda para profissionais e melhorias no sistema
- 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
2026-01-19 17:06:27 -03:00
NANDO9322
cd196a0275 feat(auth): adiciona tipo profissional ao schema e corrige avatar
- Adiciona coluna `tipo_profissional` à tabela `usuarios`
- Atualiza handlers e services do Backend Go para persistir o tipo
- Atualiza registro no Frontend para enviar o nome da função (ex: "Cinegrafista")
- Corrige uploads S3 para compatibilidade com Civo (PathStyle)
- Script para definir política pública de leitura no bucket S3
- Adiciona fallback para imagens de avatar na Navbar
2025-12-22 12:37:42 -03:00
João Vitor
888ae9eb62 feat: Adicionar sistema de código de acesso, upload de foto de perfil e melhorias de UI
- Adicionar modal de verificação de código de acesso na página inicial para cadastro

- Adicionar modal de seleção profissional/cliente após verificação do código

- Criar página AccessCodeManagement para CEO/SUPERADMIN gerar e gerenciar códigos de acesso

- Adicionar upload de foto de perfil no formulário de cadastro de profissional

- Adicionar upload de foto de perfil no modal de edição de perfil

- Remover botão 'Entrar/Cadastrar' do header nas rotas de login e cadastro

- Separar campos Conta e PIX no cadastro de profissional (apenas PIX obrigatório)

- Adicionar campo de descrição de equipamentos no cadastro de profissional

- Remover edição manual de 'Gastos Captação' (campo calculado)

- Converter página de códigos de acesso para formato de tabela estilo Excel

- Restaurar fallback de login do usuário demo quando o backend estiver indisponível

- Padronizar espaçamentos e fontes do header nas páginas administrativas

- Adicionar novo item de menu 'Códigos de Acesso' para CEO/SUPERADMIN
2025-12-18 15:12:20 -03:00
NANDO9322
7128541b44 fix: corrige criação duplicada de eventos, parse de data e filtro de FOT 2025-12-16 20:41:28 -03:00
NANDO9322
78c284c28a feat: Implementado a API de backend inicial e a interface de usuário de frontend para autenticação, gerenciamento de usuários e cadastro profissional.
implementação de listagem de usuários admin, padronização de roles e melhorias nos cadastros
Backend:
- Adicionados endpoints administrativos [ListUsers](cci:1://file:///c:/Projetos/photum/backend/internal/auth/service.go:268:0-270:1) e [GetUser](cci:1://file:///c:/Projetos/photum/backend/internal/auth/handler.go:475:0-514:1).
- Padronizadas as constantes de [UserRole](cci:1://file:///c:/Projetos/photum/backend/internal/auth/service.go:202:0-216:1) (`SUPERADMIN`, `BUSINESS_OWNER`, etc.) para alinhar com o frontend.
- Atualizada a função [EnsureDemoUsers](cci:1://file:///c:/Projetos/photum/backend/internal/auth/service.go:230:0-266:1) para migrar usuários existentes para as novas roles.
- Documentação Swagger regenerada.
Frontend:
- Adicionado busca automática de CEP no formulário de Cadastro Profissional (AwesomeAPI).
- Adicionado texto de ajuda e ordenação (priorizando "Não Cadastrado") no select de Empresas.
2025-12-15 11:17:34 -03:00
João Vitor
7fc96d77d2 feat: add photographer finance page and UI improvements
- Add photographer finance page at /meus-pagamentos with payment history table
- Remove university management page and related routes
- Update Finance and UserApproval pages with consistent spacing and typography
- Fix Dashboard background color to match other pages (bg-gray-50)
- Standardize navbar logo sizing across all pages
- Change institution field in course form from dropdown to text input
- Add year and semester fields for university graduation dates
- Improve header spacing on all pages to pt-20 sm:pt-24 md:pt-28 lg:pt-32
- Apply font-serif styling consistently across page headers
2025-12-12 16:26:12 -03:00
João Vitor
3178207353 feat: Sistema completo de Gestão FOT e melhorias no dashboard
- Sistema FOT (Formatura Operations Tracking):
  * Tela de Gestão FOT (/cursos) com tabela Excel-style
  * Modal CourseForm com 10 campos (FOT, Empresa, Instituição, etc)
  * Validação de FOT (5 dígitos numéricos)
  * Edição de turmas ao clicar na linha
  * Integração com API backend (empresas, níveis educacionais, universidades)

- Dashboard renovado (/painel):
  * Tabela com 8 colunas (FOT, Data, Curso, Instituição, Ano, Empresa, Tipo, Status)
  * Filtros avançados: FOT (busca numérica), Data, Tipo de Evento
  * Removidos filtros de Estado e Cidade
  * Página de detalhes com tabela vertical (12 informações)
  * Botão Aprovar redireciona para modal de equipe

- Sistema de Aprovação Dupla (/aprovacao):
  * 2 tabelas separadas por abas (Usuários Normais e Profissionais)
  * Coluna Universidade renomeada para Empresa
  * Coluna Função nos profissionais
  * Workflow de aprovação com atribuição de equipe

- Cadastro Profissional (/cadastro-profissional):
  * Formulário específico para fotógrafos
  * Dropdown de Função Profissional da API
  * Tratamento de erro quando backend offline

- Modal de Criar Evento:
  * Tipo de Evento como primeiro campo
  * Nome do Evento (Opcional) como segundo campo

- Componentes novos:
  * EventTable.tsx - Tabela de eventos com ordenação
  * EventFiltersBar.tsx - Filtros avançados (3 filtros)
  * CourseForm.tsx - Formulário FOT completo
  * ProfessionalForm.tsx - Cadastro profissional

- API Service:
  * Integração com backend Go
  * Endpoints: /api/empresas, /api/funcoes, /api/niveis-educacionais, /api/universidades, /graduation-years

- Documentação:
  * README.md principal atualizado
  * frontend/README.md atualizado
  * Documentação completa de componentes e features
2025-12-11 16:02:39 -03:00
yagostn
5f7aaf9b63 feat: melhorias de UI e novas funcionalidades
- Tradução de rotas para português (entrar, cadastro, configuracoes, etc)
- Ajuste de responsividade na página Financeiro (mobile)
- Correção navegação Configurações para usuário CEO/Business Owner
- Modal de gerenciamento de equipe com lista de profissionais
- Exibição de fotógrafos, cinegrafistas e recepcionistas disponíveis por data
- Ajuste de layout da logo nas telas de login e cadastro
- Correção de z-index do header
- Melhoria de espaçamento e padding em cards
2025-12-10 16:53:16 -03:00
yagostn
f89e1386f7 feat: tela de gerenciar equipe 2025-12-08 11:24:59 -03:00
yagostn
b99807beb3 feat: atualizacao de rotas 2025-12-08 10:31:40 -03:00
João Vitor
de5ceea1f3 feat: reestruturar página de equipe com sistema de profissionais multi-função
- Renomear 'Equipe & Fotógrafos' para 'Equipe' no título e navbar
- Adicionar suporte para 3 tipos de profissionais: Fotógrafo, Cinegrafista, Recepcionista
- Implementar cards estatísticos separados por função profissional
- Adicionar filtros por função (Fotógrafos, Cinegrafistas, Recepcionistas)
- Adicionar filtros por status (Disponível, Em Evento, Inativo)
- Transformar cards em tabela responsiva com colunas: Nome, Função Profissional, Disponibilidade
- Expandir interface Professional com campos completos do Excel:
  * Endereço completo (rua, número, complemento, bairro, cidade, UF)
  * Dados bancários (banco, agência, conta/pix, tipo cartão, titular)
  * Recursos (carro disponível, possui estúdio, quantidade)
  * Sistema de avaliações detalhado (6 critérios + média)
  * Valores (tabela free, extra no cachê)
  * Observações
- Redesenhar modal 'Adicionar Profissional' com formulário extenso organizado em seções
- Atualizar modal de detalhes com todas as novas informações
- Adicionar ícones específicos por função (Camera, Video, UserCheck)
- Remover fotos da tabela mantendo apenas informações essenciais
2025-12-08 03:12:45 -03:00
João Vitor
3096f07102 feat: adicionar sistema completo de gestão de cursos e turmas
- Adicionada interface Course em types.ts
- Criado CourseForm para cadastro/edição de turmas
- Implementada página CourseManagement com tabelas Excel-like
- Adicionadas funções CRUD de cursos no DataContext
- Integrado dropdown de cursos no EventForm baseado na instituição
- Adicionada rota 'courses' no App.tsx
- Link 'Gestão de Cursos' inserido no menu principal após 'Equipe & Fotógrafos'
- Removido 'Configurações' do menu principal (mantido apenas no dropdown do avatar)
- Implementado comportamento de toggle para seleção de universidades
- Sistema restrito a SUPERADMIN e BUSINESS_OWNER
2025-12-08 02:53:00 -03:00
yagostn
f73095e3d4 feat: mudancas de layout 2025-12-05 10:43:48 -03:00
yagostn
4e9b743928 feat: atuializacao de layout 2025-12-04 10:36:33 -03:00
Yago santana
a3655d2068 feat: melhoria de layout e ajuste de calendario 2025-12-04 00:58:49 -03:00
João Vitor
3f6923fa7a feat: Modelo One Repo 2025-12-03 09:44:21 -03:00
Renamed from components/Navbar.tsx (Browse further)