Commit graph

229 commits

Author SHA1 Message Date
NANDO9322
7a06d4e691 feat(agenda): migração busca POI para Google Maps e correção do horário de término
Frontend:
- Migração da API de Geocoding do Mapbox para o Google Maps Places API (googleMapsService.ts) no formulário de eventos, garantindo a busca correta pelo nome de locais (estádios, teatros) e com autopreenchimento.
- Correção do fluxo de estado do 'horario_fim', propagando e persistindo o 'endTime' pelo DataContext, garantindo a população dos dados na edição do EventForm.
- Adição da visualização do horário final na listagem do Dashboard, no EventCard, painéis de EventDetails e atualização das props defaultEndTime no EventScheduler.

Backend:
- Atualização e migração dos arquivos gerados pelo sqlc (models.go, agenda.sql.go) para suportar operações no novo design do banco.
- Atualização síncrona dos artefatos Swagger de documentação de API (docs.go, swagger.json, swagger.yaml).
2026-02-27 18:48:07 -03:00
NANDO9322
d2c37d7b2c fix: ajuste banco 2026-02-25 12:00:07 -03:00
Andre F. Rodrigues
2c6891b7ed
Merge pull request #56 from rede5/melhoria-no-conflito-de-agendas-sobreposicao-de-tempo-e-adicao-de-horario-de-termino-11362854289
Implementação do recurso de **Horário de Término** para os Eventos e a reformulação do algoritmo de **Verificação de Conflitos na Escala de Equipe**
2026-02-25 11:43:50 -03:00
NANDO9322
20b60fcc27 feat(agenda): implementar sistema de conflito por tempo e horário de término
- db: criada migration para adicionar coluna `horario_fim` na tabela agenda
- backend: queries SQLC atualizadas para ler e gravar horario_fim
- backend: mapeamento no service.go modificado para incluir e retornar o horário
- backend: atualizada documentação das rotas (Swagger)
- frontend/ui: adicionado campo de input Horário de Término no EventForm
- frontend/ui: painéis do Dashboard e DailyLogistics renderizando o novo formato visual de exibição de horas do evento
- frontend/logic: atualizada validação de profissionais ocupados (busyProfessionalIds) para analisar colisão real com base no intervalo Início x Fim em vez do fechamento total do dia
- frontend/context: conserto no state global do DataContext para não perder a string do backend após edições via modal
2026-02-25 11:38:37 -03:00
Andre F. Rodrigues
8c6bb6dfa3
Merge pull request #55 from rede5/logistica-diaria-nova-funcionalidade-11351179265
Feat: Logística Diária, Cargo Pesquisador, Melhorias Financeiro e Correções na Agenda
2026-02-24 18:43:59 -03:00
NANDO9322
25aee29acd feat: Implementação Logística Diária, Novo Cargo Pesquisador, Exportação XLSX Financeiro e Correções no Painel 2026-02-24 18:42:22 -03:00
NANDO9322
034557a06b fix: ajuste role admins 2026-02-23 23:00:12 -03:00
Andre F. Rodrigues
cc7c7dccc4
Merge pull request #54 from rede5/ajustar-notificacao-whatsapp-por-regiao-11345353370
Ajustar notificacao whatsapp por regiao 11345353370
2026-02-23 22:18:17 -03:00
NANDO9322
b4b2f536f1 feat(notificacoes): envios de whatsapp dinamicos por regiao (SP e MG)
Implementa suporte a multiplas instancias da Evolution API via .env. O servico agora verifica a origiem do evento e roteia o disparo para garantir que cada franquia use seu proprio numero comercial.
2026-02-23 22:16:53 -03:00
NANDO9322
a8230769e6 feat(notificacoes): envios de whatsapp dinamicos por regiao (SP e MG)
Implementa suporte a multiplas instancias da Evolution API via .env. O servico agora verifica a origiem do evento e roteia o disparo para garantir que cada franquia use seu proprio numero comercial.
2026-02-23 20:33:36 -03:00
Andre F. Rodrigues
a516308017
Merge pull request #53 from rede5/cadastro-cliente-mg-indo-como-sp-11346545121
fix(auth): sobrescrever região do cliente pela região da franquia
2026-02-23 19:18:58 -03:00
NANDO9322
11fa5d6489 fix(auth): sobrescrever região do cliente pela região da franquia
Corrige o erro onde clientes de empresas MG ficavam vinculados ao estado de origem física (ex: SP) durante o registro via código. Agora, a região correta é obtida via GetEmpresaByIDGlobal e aplicada antes da inicialização das restrições de identidade.
2026-02-23 19:18:09 -03:00
Andre F. Rodrigues
dedff12559
Merge pull request #52 from rede5/bug-pagina-cadastro-cliente-11346137756
fix: resolvido ao atualizar a pagina de cadastro de cliente /cadastro…
2026-02-23 18:30:33 -03:00
NANDO9322
e34f915c08 fix: resolvido ao atualizar a pagina de cadastro de cliente /cadastro a lista toda de empresas aparece 2026-02-23 18:29:10 -03:00
Andre F. Rodrigues
0c59752758
Merge pull request #51 from rede5/persistencia-de-login-auth-refresh-11312080794
Persistência de Login (Auth Refresh)
2026-02-23 17:35:03 -03:00
NANDO9322
5b7f418b80 feat(auth): implementa lógica de interceptação para refresh token silencioso
- Aumenta duração do JWT de acesso (access_token) para 3 horas via Backend (`config.go` e `handler.go`).
- Adiciona envio das flags e cookies de resposta (`access_token`) corretamente no handler de Refresh.
- Cria interceptador `apiFetch` no Frontend via `apiService.ts` para repassar 401s e resolver retentativas de requests pausados automaticamente consumindo o `/auth/refresh`.
- Modifica a recarga de contexto para consumir a nova inteligência de fila persistente no `AuthContext.tsx`.
2026-02-23 17:31:52 -03:00
NANDO9322
1bdb446709 Merge branch 'dev' into hml 2026-02-20 10:28:42 -03:00
Andre F. Rodrigues
100ce88bf9
Merge pull request #50 from rede5/corrigir-scroll-lock-no-modal-de-usuario-11312074910
task: Corrigir Scroll Lock no Modal de Usuário
2026-02-20 10:27:42 -03:00
NANDO9322
53e6223dab fix:
- ajuste na barra de rolagem no modal de novo usuario
- ajuste no redirecionamento para rota de perfil em ambiente mobile
- ajuste no nome da funçao do profissional na descricao do perfil
2026-02-20 10:26:00 -03:00
Gabbriiel
94006d5d7c Merge branch 'main' into dev 2026-02-18 22:16:02 -03:00
Gabbriiel
5135d239dc docs: atualiza status do projeto com relatorio de bugs e bloqueios 2026-02-18 22:13:58 -03:00
NANDO9322
421ca81ee4 fix:(fot) ajuste bug no gasto de captaçao 2026-02-12 11:32:14 -03:00
NANDO9322
8703f9c8a8 fix:(extrato-profissional) ajusta nome do evento 2026-02-12 11:06:41 -03:00
NANDO9322
21a5b81132 fix:(cadastro) ajusta bug de cadastro cliente da regiao MG 2026-02-12 10:32:20 -03:00
NANDO9322
da3754068b feat:(finance) Implementado sistema de edicao em massa para gastos extras 2026-02-12 09:51:27 -03:00
NANDO9322
95a4e441c1 fix: correção de duplicidade de preços e melhorias na UX financeira
- Backend:
  - Ajustada query `GetStandardPrice` para filtrar por região e ordenar por data.
  - Corrigido `SetPrice` para usar o contexto de região, evitando duplicatas.
  - Script de limpeza executado para remover entradas duplicadas no banco.

- Frontend (Financeiro):
  - Reset completo do formulário ao abrir "Nova Transação" (limpa busca FOT e eventos).
  - Preenchimento automático da "Data Evento" ao selecionar um evento encontrado pela busca FOT.
  - Correção na lógica de busca de preço para usar nome da Função (`tabelaFree`).
2026-02-11 10:20:46 -03:00
NANDO9322
6382145442 feat(backend): implementa criação automática de transação financeira ao aceitar evento 2026-02-10 20:34:33 -03:00
NANDO9322
c9e34af619 feat:(agenda) implementado filtro e busca de fot no cadastro de evento 2026-02-10 19:24:28 -03:00
NANDO9322
f26d40dcff fix:(import) ajuste no import do financeiro 2026-02-10 19:08:49 -03:00
NANDO9322
c7777ecb34 fix:(finance) ajuste barra de rolagem horizontal 2026-02-10 18:38:59 -03:00
NANDO9322
003d51baff fix(finance): corrige erro critico
- sobrescrita de valores na edição e refresh da lista após salvar
 - mapeia fot_id corretamente e bloqueia sobrescrita de preço na inicialização da edição
2026-02-10 18:18:48 -03:00
NANDO9322
8730a8f5a3 fix: corrigido filtros por status (Pré-venda/Finalizada) no Dashboard. 2026-02-10 16:56:09 -03:00
NANDO9322
9906db8bc6 feat: destaca eventos de pré-venda e adiciona filtros de status da turma
- Destaque em azul para pré-venda na grid.
- Filtros por status (Pré-venda/Finalizada) no Dashboard.
- Badges de status nos detalhes do evento.
- Ajustes no backend para expor campo `pre_venda` da FOT.
2026-02-10 16:36:57 -03:00
NANDO9322
b49b0f31a6 (feat: implementa funcionalidade de finalizar/reabrir turmas (FOT) 2026-02-10 15:51:29 -03:00
NANDO9322
1ba9499074 feat: implementa função de coordenador de eventos
- Adiciona coluna `is_coordinator` na tabela `agenda_profissionais`
- Atualiza queries SQL e gera código com sqlc
- Implementa endpoint `PUT /api/agenda/:id/professionals/:profId/coordinator`
- Adiciona ícone de estrela no Dashboard para definir coordenadores
- Restringe acesso à aba de Logística apenas para coordenadores e admins
2026-02-09 22:33:21 -03:00
NANDO9322
050c164286 feat(finance): implementa exportação csv, ordenação e totalização
- Substitui importação por exportação de dados em CSV
- Adiciona ordenação alfabética e por data nas colunas da tabela
- Exibe somatório total dos registros filtrados na interface e no export
- Corrige escopo de variáveis no useEffect de filtros
2026-02-09 19:42:22 -03:00
NANDO9322
b445d69de2 feat(dashboard): oculta gestão de equipe e move qtd formandos para fotógrafos
- Move o campo "Qtd Formandos" para logo abaixo do endereço para melhor visualização
- Oculta a seção "Gestão de Equipe e Recursos" para usuários com perfil de Fotógrafo
2026-02-09 15:22:44 -03:00
NANDO9322
609332fbb5 fix:(logistica) ajusta bug de poder colocar no carro fotografo pendente 2026-02-09 15:13:09 -03:00
NANDO9322
1ef8d3f435 fix: ajusta fluxo de cadastro pela rota de /aprovacao-cadastros 2026-02-09 15:02:41 -03:00
NANDO9322
cd33c63d9d feat: suporte a endereço completo no cadastro de profissionais e correção do fluxo de registro 2026-02-09 13:05:54 -03:00
NANDO9322
44b73a080d fix: (cadastro-profissiona) ajuste de redirecionamento 2026-02-09 12:23:48 -03:00
NANDO9322
4ce07c1fc5 fix:(cadastro) ajusta redirecionamento ao cadatrar um cliente 2026-02-09 09:17:03 -03:00
NANDO9322
29662a1081 fix:(cadastro-fot) Forma no do foto em caixa alta 2026-02-09 01:07:16 -03:00
NANDO9322
9c6ee3afdb feat: habilita edição de perfil para clientes e corrige carga de dados
Backend:
- Adiciona endpoint `PUT /api/me` para permitir atualização de dados do usuário logado.
- Implementa query `UpdateCadastroCliente` e função de serviço [UpdateClientData]para persistir alterações de clientes.
- Atualiza handlers [Me], [Login] e [ListPending] para incluir e mapear corretamente campos de cliente (CPF, Endereço, Telefone).
- Corrige mapeamento do campo `phone` na struct de resposta do usuário.

Frontend:
- Habilita o formulário de edição em [Profile.tsx] para usuários do tipo 'CLIENTE' (Event Owner).
- Adiciona função [updateUserProfile] em [apiService.ts] para consumir o novo endpoint.
- Atualiza [AuthContext] para persistir campos do cliente (CPF, Endereço, etc.) durante a restauração de sessão ([restoreSession], corrigindo o bug de perfil vazio ao recarregar a página.
- Padroniza envio de dados no Registro e Aprovação para usar `snake_case` (ex: `cpf_cnpj`, `professional_type`).
- Atualiza tipos em [types.ts] para incluir campos de endereço e documentos.
2026-02-09 00:56:09 -03:00
NANDO9322
788e0dca70 feat: melhorias no dashboard e correções no perfil
- Implementa filtros de Empresa e Instituição no Dashboard.
- Adiciona barra de estatísticas de equipe (fotógrafos, cinegrafistas, recepcionistas) na modal de Gerenciar Equipe.
- Corrige bug de atualização da interface após editar evento (mapeamento snake_case).
- Adiciona máscaras de input (CPF/CNPJ, Telefone) na página de Perfil.
- Corrige ordenação e persistência da listagem de eventos por FOT.
- Corrige crash e corrupção de dados na página de Perfil.

fix: permite reenviar notificação de logística

- Remove bloqueio do botão de notificação de logística quando já enviada.
- Altera texto do botão para "Reenviar Notificação" quando aplicável.

feat: melhorias no dashboard, perfil e logística

- Implementa filtros de Empresa e Instituição no Dashboard.
- Adiciona barra de estatísticas de equipe na modal de Gerenciar Equipe.
- Desacopla notificação de logística da aprovação do evento (agora apenas manual).
- Permite reenviar notificação de logística e remove exibição redundante de data.
- Adiciona máscaras de input (CPF/CNPJ, Telefone) no Perfil.
- Corrige atualização da interface pós-edição de evento.
- Corrige crash, ordenação e persistência na listagem de eventos e perfil.
2026-02-08 12:54:41 -03:00
NANDO9322
1c20b570c0 fix:(ux) ajuste nos inputs 2026-02-07 00:02:47 -03:00
NANDO9322
2fd1e2ece7 fix(backend): corrige persistência da região na criação de FOT e ordenação
- Corrige bug onde a região não era salva no banco durante a criação de FOT (campo faltante no service).
- Adiciona fallback para garantir região "SP" caso o header x-regiao esteja vazio.
- Altera ordenação da listagem para updated_at DESC (editados aparecem no topo).
2026-02-06 23:37:59 -03:00
NANDO9322
3b7bd6a181 fix: ajuste handler 2026-02-06 22:07:33 -03:00
NANDO9322
c1c71643bb feat(profile): melhorias no fluxo de perfil e correções no backend
Frontend:
- Implementado fluxo de inicialização para novos perfis (modal "Complete seu Cadastro").
- Adicionada lógica para pré-preencher nome e email do usuário no cadastro.
- Adicionada renderização condicional: abas "Dados Bancários" e "Profissional" são ocultadas para clientes (EVENT_OWNER).
- Unificada a função de salvar (criação e edição) com tratativa correta de erros e feedback (Toast).
- Adicionado fallback para exibir o email do usuário caso o do perfil esteja vazio.

Backend:
- SQL: Ajustada query `GetProfissionalByUsuarioID` para buscar email da tabela de usuários (LEFT JOIN).
- Handler: Implementado fallback para usar `UsuarioEmail` na resposta se o `Email` do perfil for nulo.
- Service: Correção no salvamento (Create/Update) para tratar `funcao_profissional_id` com UUID vazio (Nil) como NULL, evitando erro de chave estrangeira (FK).

Fixes #profile-save-error, #role-visibility
2026-02-06 21:45:29 -03:00
NANDO9322
a4982e588e feat(profile): melhorias no fluxo de perfil e correções no backend
Frontend:
- Implementado fluxo de inicialização para novos perfis (modal "Complete seu Cadastro").
- Adicionada lógica para pré-preencher nome e email do usuário no cadastro.
- Adicionada renderização condicional: abas "Dados Bancários" e "Profissional" são ocultadas para clientes (EVENT_OWNER).
- Unificada a função de salvar (criação e edição) com tratativa correta de erros e feedback (Toast).
- Adicionado fallback para exibir o email do usuário caso o do perfil esteja vazio.

Backend:
- SQL: Ajustada query `GetProfissionalByUsuarioID` para buscar email da tabela de usuários (LEFT JOIN).
- Handler: Implementado fallback para usar `UsuarioEmail` na resposta se o `Email` do perfil for nulo.
- Service: Correção no salvamento (Create/Update) para tratar `funcao_profissional_id` com UUID vazio (Nil) como NULL, evitando erro de chave estrangeira (FK).

Fixes #profile-save-error, #role-visibility
2026-02-06 21:44:00 -03:00