From e5b066666a99dd677eabf7aaa3b51ebce2d31d3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlio=20Raphael?= Date: Tue, 21 Jul 2026 15:55:25 -0300 Subject: [PATCH] refactor: ajuste para exibir motivos cancelamento --- pages/v2/openapi-corridas.json | 5 +++-- pages/v2/openapi-entregas.json | 6 ++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/pages/v2/openapi-corridas.json b/pages/v2/openapi-corridas.json index a5ea2ec..7bc368d 100644 --- a/pages/v2/openapi-corridas.json +++ b/pages/v2/openapi-corridas.json @@ -3588,7 +3588,7 @@ "/corridas/{id}/cancelar": { "post": { "summary": "Cancelar corrida", - "description": "Cancela uma corrida existente pelo motivo informado.", + "description": "Cancela uma corrida existente pelo motivo informado.\n\nA corrida **não pode** estar em um status final: `C` (Cancelada), `F` (Finalizada) ou `N` (Não atendida). Nesses casos o cancelamento é rejeitado.", "parameters": [ { "name": "id", @@ -3612,7 +3612,8 @@ "properties": { "motivo_id": { "type": "integer", - "description": "Motivo de cancelamento." + "description": "ID do motivo do cancelamento:\n- `1`: Tempo de espera\n- `2`: Mudança de planos\n- `3`: Acidente/veículo quebrado\n- `4`: Difícil acesso\n- `5`: Passageiro não entrou\n- `6`: Outros\n- `7`: Endereço errado\n- `8`: Corrida em andamento há mais de 24 horas\n- `9`: Falha no sistema\n- `10`: Outros casos\n- `11`: Rejeitada\n- `12`: Motorista não está vindo\n- `13`: Transação rejeitada\n- `16`: Despachado na plataforma parceira\n- `17`: Cancelado na plataforma parceira\n- `18`: Não foi possível realizar o pagamento\n- `19`: Pagamento não realizado", + "enum": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 16, 17, 18, 19] } } }, diff --git a/pages/v2/openapi-entregas.json b/pages/v2/openapi-entregas.json index 51670a4..27575b1 100644 --- a/pages/v2/openapi-entregas.json +++ b/pages/v2/openapi-entregas.json @@ -4163,7 +4163,7 @@ "/entregas/{id}/cancelar": { "post": { "summary": "Cancelar entrega", - "description": "Cancela a solicitação de entrega, modificando seu status para `C`. A solicitação não pode ter sido finalizada, cancelada ou não atendida anteriormente.", + "description": "Cancela a solicitação de entrega, modificando seu status para `C`. A solicitação não pode ter sido finalizada, cancelada ou não atendida anteriormente (status `F`, `C` ou `N`).\n\n**O motivo aceito depende do status atual da entrega e de quem cancela.**\n\n**Cancelamento pela empresa:**\n\n| Status atual | Motivo aceito |\n|---|---|\n| `D` Distribuindo, `T` Redistribuindo, `P` Pendente, `G` Aguardando aceite (em despacho) | Somente `10` (Outros casos) |\n| `A` Aceita, `E` Em andamento, `S` Em espera (com condutor) | Somente motivos de empresa: `12` (Motorista não está vindo) |\n\nEnviar um motivo fora do permitido para o status atual retorna erro `102` (motivo inválido para a empresa). Um `motivo_id` inexistente retorna erro `26` (motivo de cancelamento não encontrado).\n\n**Cancelamento pela central:** quando a entrega é cancelada pela central, o motivo é definido automaticamente conforme o status, não sendo necessário informar `motivo_id`:\n\n| Status atual | Motivo aplicado |\n|---|---|\n| `L` Aguardando liberação | `11` (Rejeitada) |\n| `D` Distribuindo, `T` Redistribuindo, `G` Aguardando aceite, `P` Pendente, `A` Aceita, `S` Em espera, `R` Aguardando pagamento | `10` (Outros casos) |", "parameters": [ { "name": "id", @@ -4183,7 +4183,9 @@ "type": "object", "properties": { "motivo_id": { - "type": "integer" + "type": "integer", + "description": "ID do motivo do cancelamento. O motivo permitido varia conforme o status atual da entrega (ver descrição do endpoint):\n- `10`: Outros casos (único aceito enquanto a entrega está em despacho)\n- `12`: Motorista não está vindo (motivo de empresa)", + "enum": [10, 12] } } }