From 022aac26169f38b375cca4a7f6d6e25402ff0f792de4e698ad3c6af6bbc8b174 Mon Sep 17 00:00:00 2001 From: victor Date: Thu, 25 Jun 2026 10:18:27 -0300 Subject: [PATCH] =?UTF-8?q?Atualiza=C3=A7=C3=A3o=20do=20Read.me?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 52 +++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 49 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 78def01..f09d793 100644 --- a/README.md +++ b/README.md @@ -751,7 +751,7 @@ docker-compose exec app bundle exec rails db:migrate --- -
+
🆕 Atualização 22/06/2026 — Pilar Extraordinária, Perfil Externo, Falhadas, Relatórios e Segurança QR ### 🆕 Funcionalidades @@ -784,11 +784,57 @@ docker-compose exec app bundle exec rails db:migrate ``` - `20260622000001_add_preco_extraordinaria_configuracao` — cria a config `preco_extraordinaria` (padrão `R$ 25,00`) em bancos já existentes (idempotente; não sobrescreve valor já definido). -### ⚠️ A confirmar -- Validar o valor real do status de falha gravado pelo SimpleRoute e ajustar `Entrega::STATUS_FALHA` se necessário (hoje `%w[failed]`): +### ✅ Confirmado (25/06/2026) +- O status de falha gravado pelo SimpleRoute é exatamente **`failed`** — `Entrega::STATUS_FALHA = %w[failed]` está correto e dispensa ajuste. ```bash docker-compose exec app bundle exec rails runner "puts Entrega.da_conta_gade.distinct.pluck(:status).inspect" ```
+--- + +
+🆕 Atualização 25/06/2026 — Consolidação inclui entregas de insucesso (motorista foi ao local) + +A consolidação só considerava entregas **concluídas com sucesso**. Como o motorista +**se desloca até o local mesmo nas entregas que falham (insucesso)**, essas precisam +**constar na consolidação** para serem classificadas e remuneradas conforme o caso. + +### 🆕 Funcionalidades +- **Novo conjunto elegível "atendidas"** — entregas em que o motorista foi ao local: + status **`completed` (sucesso) OU `failed` (insucesso)**, sempre com **checkout** registrado. + Substitui o antigo critério de só `.pagas` (`completed`) na consolidação. +- **Status visível em cada entrega** na tela de validação (Passo 2): selo **✓ Entregue** (verde) + ou **⚠️ Insucesso** (vermelho), com o card de insucesso destacado em **borda vermelha** — + facilita visualmente identificar o que classificar. +- **Insucesso entra para classificação manual**, não com valor automático: o admin escolhe o + pilar/valor (Normal, Retirada, Bônus, Desconto, Extraordinária) — o motorista foi ao local, + então a entrega aparece na lista, na contagem e na barra de progresso. + +### ⚙️ Como funciona (técnico) +- `Entrega::STATUS_ATENDIDO = (%w[completed] + STATUS_FALHA)` + scope **`atendidas`** + (`where(status: STATUS_ATENDIDO).com_checkout`). Novo helper de instância `Entrega#falhada?`. +- `Entrega.contar_pagas` → renomeado para **`Entrega.contar_atendidas`** (usa o scope `atendidas`). +- `Consolidacao#entregas_elegiveis_count` passa a contar **atendidas** — reflete no wizard, na + barra de progresso e no **gate de finalização** (`todas_entregas_classificadas?`): agora as + entregas de insucesso também precisam ser classificadas antes de finalizar. +- `ConsolidacaoEntregasController`: a lista do Passo 2 (`validar`) e o guard de elegibilidade + (`tracking_ids_elegiveis`) usam `Entrega.atendidas`. +- **Não afeta o lado financeiro:** dashboard, painel do motorista, job de 1h e `HistoricoEstimado` + continuam usando `.pagas` (só `completed`) — "atendidas" é exclusivo da elegibilidade da + consolidação. + +### 📂 Arquivos alterados +``` +app/models/entrega.rb # STATUS_ATENDIDO, scope :atendidas, contar_atendidas, falhada? +app/models/consolidacao.rb # entregas_elegiveis_count usa contar_atendidas +app/controllers/consolidacao_entregas_controller.rb # validar + tracking_ids_elegiveis usam :atendidas +app/views/consolidacao_entregas/validar.html.erb # selo de status por entrega + destaque do insucesso +``` + +> Sem migration — a mudança é apenas de leitura/regra de negócio sobre a tabela read-only +> `db_reem_simplerout_2026`. + +
+