From 3b4d796f7c970f10cf1eddb5ca03ddccbeb63070e45a47c113d16af42641b4ed Mon Sep 17 00:00:00 2001 From: victor Date: Tue, 30 Jun 2026 23:50:19 -0300 Subject: [PATCH] =?UTF-8?q?Atualiza=C3=A7=C3=A3o=20Read.me?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) diff --git a/README.md b/README.md index 4437c25..b5c0c9c 100644 --- a/README.md +++ b/README.md @@ -1136,3 +1136,75 @@ app/views/layouts/_navbar.html.erb # link "📈 Operações" +
+🆕 Atualização 30/06/2026 — Mapa, dashboard clicável, validação por veículo e UX da sidebar + +Rodada de melhorias no **Dashboard de Operações**, na tela de **Validação do motorista** +(consolidação) e no **layout do site inteiro**. + +### 🗺️ Mapa de Operações +- **Busca no mapa** — campo 🔍 que filtra os pontos por **NF, nome do paciente ou veículo**, + troca para a visão "Pontos", dá zoom nos resultados (busca client-side) e mostra contador / + "Nenhum resultado". +- **Mostra TODAS as entregas** — antes só `completed`; agora **sucesso + insucesso** (óbito e + demais pilares de falha), via `Entrega::STATUS_ATENDIDO`. Pino **laranja = sucesso**, **azul = + insucesso**; o popup mostra o status e o **motivo** (`observation`). A **foto da fachada** é + mantida para todos os casos. +- **Campo veículo** — coluna `vehicle` (de `Entrega`) adicionada à query, ao card e à busca. +- **Modo escuro mais detalhado e com mais contraste** — o tile escuro passou de CARTO `dark_all` + (minimalista) para **OpenStreetMap completo invertido** (`filter: invert(1) hue-rotate(180deg) + brightness(.95) contrast(1.05)` na classe `.tiles-escuro-contraste`): mesmo detalhe de ruas/nomes + do mapa claro, porém escuro e legível. Claro/Satélite ficam intactos. + +### 📊 Dashboard de Operações (painéis) +- **Gráficos clicáveis (cross-filter)** — além das tabelas, agora o **donut "Insucessos %"** + (clique em Completas/Falhas → filtra por `status`) e as barras **"Entregas por Dia"** (clique → + filtra por **dia** + **resultado** da barra) refiltram **todo** o dashboard. Novos filtros + `f_resultado` (coluna `status`) e `f_data` (por data de checkout, tratado à parte no serviço via + `@data`). Chips removíveis + "Limpar tudo", igual às tabelas. +- **Falha em azul** — a cor de insucesso mudou de vermelho `#ef4444` para **azul `#3b82f6`** nos + KPIs e gráficos (mais contraste no tema escuro). +- **Hover nos cards de KPI** — ao passar o mouse o card destaca, o número aumenta e aparece o + **% do total** (no card Total, o detalhamento ✅/●/⏳). +- **Respiro no scroll das tabelas** — `pr-2` nos contêineres roláveis (Motoristas / STS) para a + barra de scroll não colar no texto. + +### 🚚 Validação do motorista (consolidação) +- **Filtro de veículos multi-seleção** — antes "um carro de cada vez"; agora dá pra **somar 2+ + veículos**. A lista, a barra de progresso, o **valor total (R$)** e a **contagem por pilar** + passam a refletir só os veículos selecionados. Chip selecionado fica **laranja** (prioridade + sobre o verde de "fechado") para a seleção ficar sempre visível. +- **Lupa de busca na listagem de notas** — campo 🔍 sticky no topo da lista que filtra os cards + por **NF, local, endereço ou veículo**; "Selecionar todos" passa a marcar **apenas os visíveis** + no filtro. +- **Barra fixa mais compacta** — paddings/margens reduzidos (`p-3 mb-3`) para melhor aproveitamento + em **monitores pequenos**. +- **Ocultar/mostrar o resumo lateral** — botão 📊 que esconde o resumo e dá **largura total** à + lista (`lg:col-span-3 → lg:col-span-4`). + +### 🧭 Layout global (site inteiro) +- **Recolher/expandir a sidebar do menu principal** — botão flutuante de seta (desktop) que esconde + o menu e expande o conteúdo (`md:ml-64 → 0`). Estado **lembrado** entre páginas (`localStorage` + + classe `.sidebar-collapsed` no ``, aplicada antes de pintar → sem "piscar"). +- **Indicador discreto** — em repouso o botão é uma **alça fina laranja** sempre visível na borda; + ao chegar perto com o mouse (ou foco por teclado) ela **expande** no botão com a seta ◀/▶. + +### 📂 Arquivos +``` +app/services/analytics/operacao_metricas.rb # veículo, sucesso+insucesso, filtro por dia (@data) +app/controllers/operacoes_dashboard_controller.rb # CROSS f_resultado + filtro f_data +app/views/operacoes_dashboard/index.html.erb # busca/dark map, pinos, gráficos clicáveis, KPIs +app/views/operacoes_dashboard/_painel.html.erb # hover KPIs, cor azul, pr-2 no scroll +app/views/operacoes_dashboard/_mapa.html.erb # campo de busca no mapa +app/controllers/consolidacao_entregas_controller.rb # filtro multi-veículo + resumo por escopo +app/views/consolidacao_entregas/validar.html.erb # chips multi, lupa, barra compacta, toggle resumo +app/javascript/controllers/validacao_controller.js # veiculos[] , busca, toggleResumo +app/views/layouts/application.html.erb # CSS sidebar recolhível + script anti-flash +app/views/layouts/_navbar.html.erb # botão flutuante + alça indicadora +``` + +> **Sem migration** — segue lendo as tabelas existentes (`db_reem_simplerout_2026` read-only e +> `gade_entregas_*`). ⚠️ Em produção, **reiniciar o Puma** após o deploy (cache de classes/views). + +
+