Deixa eu verificar a API diretamente para ver como está o salvamento das métricas:
A API está correta e usa Supabase. O problema provavelmente é que a tabela prospectador_metricas_diarias não tem a coluna sites_apresentados. Preciso verificar se a tabela existe e tem todas as colunas. Deixa eu ler os logs do console:
Os logs mostram que as chamadas GET estão funcionando - está buscando do Supabase corretamente. Mas não estou vendo as chamadas PATCH (quando você salva). O problema está no frontend - a função setMetrica ou definirContatosEmail não está sendo chamada corretamente.
Vou verificar como está a função definirContatosEmail na página:
O código parece correto. Vou verificar se há problema na exportação do contexto - preciso garantir que definirContatosEmail está sendo corretamente exportado e a função setMetrica está sendo incluída corretamente nas dependências:
Vou verificar a função setMetrica - provavelmente ela não está conseguindo encontrar o prospectador porque está usando closure antiga. Deixa eu corrigir isso:
O problema é que estamos chamando saveMetricas dentro do setProspectadores, o que pode ter problemas de timing. Vou mover o save para FORA da atualização de estado para garantir que seja chamado:
Agora testa novamente. Abre o console do navegador (F12), coloca um valor no campo de e-mail e vê se aparece:
[v0] setMetrica - Salvando no banco: {...}[v0] Iniciando saveMetricas: {...}[v0] Resposta saveMetricas: {...}Se os logs aparecerem e mostrar { success: true } na resposta, então está salvando. Se der erro, me mostra a mensagem que aparece no console.
Vejo que você está mostrando o card expandido com X1 e E-mail, e quando clica no + de Disparos não está salvando no banco de dados. Deixa eu verificar os logs e a API para encontrar o problema:
Interessante! Os logs mostram que está fazendo GET no Supabase para buscar dados, mas não tem nenhuma chamada PATCH (quando você clica no +). Isso significa que a função de incrementar não está chamando a API.
Deixa eu verificar a função incrementarContatosEmail no contexto:
A função incrementarContatosEmail usa updateMetrica. Vou verificar a função updateMetrica para ver se está chamando saveMetricas:
Achei o problema! Na função updateMetrica (que é usada pelo botão +), o saveMetricas está sendo chamado dentro do .map(). Isso pode causar problemas de closure onde o saveMetricas é undefined ou não é a versão atualizada.
Vou corrigir a função updateMetrica para garantir que o saveMetricas seja chamado corretamente:
Agora testa de novo! Clica no + do E-mail e abre o console do navegador (F12) para ver se aparece:
[v0] updateMetrica - Salvando no banco: {...}[v0] Iniciando saveMetricas: {...}[v0] Resposta saveMetricas: {...}Corrigi a função updateMetrica para encontrar o prospectador primeiro e depois chamar o saveMetricas via setTimeout, garantindo que a função seja executada corretamente fora do loop do map.