Each PRD documents real UI/API processes, service methods, states and gaps. Co-authored-by: Cursor <cursoragent@cursor.com>
2.4 KiB
2.4 KiB
PRD — Despacho / Gestor de Rotas (CityFoods parity)
| Campo | Valor |
|---|---|
| Produto | Pizza Digital |
| Versão app auditada | v0.5.0 |
| Ambiente | https://pizza.itecnologys.com · VM125 · loja pizza-digital-piloto |
| Spec de origem | docs/SPEC-DESPACHO-CITYFOODS-PARITY.md |
| Módulo | Rotas, motoboys, mapa |
| Rotas UI | /despacho /motoboy /ops |
| APIs | /api/routes/* /api/drivers/* /api/ops/* /api/zones/* |
| Data | 2026-11-09 |
| Estilo | PRD operacional detalhado (visão de desenvolvedor) |
| Audiência | Dev / QA / Product |
Como ler: cada seção descreve o processo real (o que o sistema faz hoje), com passos de usuário, chamadas de API, regras de negócio e estados. Status: ✅ construído · ⚠️ parcial · ⏳ especificado / não entregue · 🐛 gap observado.
1. Objetivo implementado
Sair de “lista de prontos + SAIR” para fluxo: Montar rota → Despachar → mapa → status motoboy → fechar.
2. Processo — montar e despachar rota
- Pedidos
readyno board - Operador em
/despachoseleciona pedidos POST /api/routes/preview(ordem sugerida)POST /api/routescriaDispatchBatch+DispatchStopPATCH /api/routes/:id/driverassocia motoboy (Driver)POST /api/routes/:id/dispatchsai para rua- Mapa acompanha;
POST /api/routes/:id/pingatualiza lat/lng - Por stop:
POST /api/routes/:id/stops/:orderId/status(a_caminho/entregue) POST /api/routes/:id/closefecha batch
3. Processo — motoboy
- UI
/motoboy GET /api/routes/driver/:driverId/GET /api/routes/active- Atualiza status das paradas
4. Cadastros apoio
- Drivers CRUD
/api/drivers - Zonas
/api/zones· UI/admin/zonas - Ops funnel/ranking/priority
/api/ops/*
5. Aceite
- ✅ Routes API + Despacho/Motoboy pages
- ⚠️ Paridade mapa full-bleed (ver PRD vídeo)
- ⏳ ORS tour produção robusto
6. Camada de serviço (RoutesService)
Arquivo: apps/api/src/routes/routes.service.ts (~548 linhas)
| Método | Processo |
|---|---|
preview |
Ordena stops candidatos (sem persistir) |
buildStops / create |
Cria batch+stops |
assignDriver |
Liga Driver |
dispatch |
Status em rota |
ping |
GPS |
setStopStatus |
a_caminho / entregue / falha |
close |
Fecha batch |
listActive / activeForDriver / get |
Leituras UI |