Skip to content

Own Delivery Handoff

luizkim edited this page Aug 26, 2026 · 1 revision

Own Delivery Handoff (ON DELIVERY)

Documentação técnica do gate client-side de handoff para entrega própria com cobrança na entrega (APP_TYPE=DELIVERY).

Issue: ControleOnline/app-community#610
Programa / flowchart: Flowchart 1 — Venda / produção E2E (flowchartIds: [1])
Catálogo de fluxo: fluxo: logistica-entrega (Smoke Test Flows)

Objetivo

Garantir que a visão DELIVERY só materialize a fila ON DELIVERY e a cobrança na entrega quando as regras de negócio do flowchart 1 forem satisfeitas. Não cobre courier de marketplace (iFood / 99).

Regras de negócio (gate)

Implementação: src/react/utils/ownDeliveryHandoff.js (ui-logistic).

Regra Comportamento
Ready antes de ON DELIVERY Só abre fila / handoff quando o pedido de venda está ready.
Provider próprio Provider em delivery / own / internal / nossa (normalizado). Marketplace (ifood, food99, 99food) não entra.
Cobrança na entrega Só se a política de pagamento for uma de: on_delivery, pay_at_delivery, pay_at_exit_or_delivery, delivery, cobrar_na_entrega e houver invoice em aberto (ou lista vazia tratada como pendente).
Filtro de fila filterOwnDeliveryQueue aplica o mesmo gate sobre a lista de orders (usa saleOrdersById / mainOrder quando disponível).

Visão (APP_TYPE)

Visão Papel O que não deve assumir
DELIVERY Lista do entregador, handoff ON DELIVERY, cobrança residual na entrega Não opera mesa/comanda POS; não é courier marketplace; não substitui CHECKOUT/POS para políticas prepaid
POS / CHECKOUT Podem originar o pedido e a política de pagamento Não abrem a fila DELIVERY; handoff é do módulo logistic
MANAGER Configura menus/devices e políticas Não materializa a fila operacional do entregador

Fronteiras oficiais: MODOS_OPERACAO.md.

Smoke E2E

  • Spec: src/tests/browser/delivery/own-delivery-charge.spec.js
  • Unit: src/tests/react/utils/ownDeliveryHandoff.test.js
  • Passos de evidência (prints): ready → escolha delivery nossa → lista delivery → cobrança na entrega → closed
  • Meta exportada: OWN_DELIVERY_SMOKE_META (flowchartIds: [1], fluxo: logistica-entrega)

Fora de escopo

  • Courier marketplace externo (iFood / 99).
  • Alteração de flowcharts no admin.
  • Recebíveis / pagamentos a motoboy (ver docs/technical/Recebiveis-Motoboy-e-Pagamentos.md no repositório).

Links

Destino URL
Issue #610 https://github.com/ControleOnline/app-community/issues/610
Flowchart 1 (wiki app) https://github.com/ControleOnline/app-community/wiki/Flowchart-1-Venda-Producao-E2E-Smokes
Admin flowchart 1 https://admin.controleonline.com/admin/flowcharts/1
Smoke Test Flows https://github.com/ControleOnline/app-community/wiki/Smoke-Test-Flows
Home deste módulo Home

Clone this wiki locally