Skip to main content
RouteApproval registra a análise que permite uma rota sair de PENDING_APPROVAL e se tornar operacional. A rota nasce pendente de aprovação e só muda para ativa após aprovação.

Campos

CampoTipoDescrição
routeApprovalIdUUIDIdentificador único
routeIdUUIDRota analisada
requestedByUUIDUsuário que solicitou ou criou a rota para análise
reviewedByUUID?Usuário que aprovou ou rejeitou a rota
statusRouteApprovalStatusStatus da análise
rejectionReasonString?Motivo da rejeição, quando aplicável
requestedAtDateTimeData de solicitação de análise
reviewedAtDateTime?Data da aprovação ou rejeição
createdByUUID?Usuário que criou o registro, quando aplicável
createdAtDateTimeData de criação
updatedByUUID?Usuário que fez a última atualização, quando aplicável
updatedAtDateTimeData da última atualização

Relacionamentos

  • Relaciona-se com Route.
  • Relaciona-se com User como solicitante e revisor.

Regras de Negócio

  • Uma rota nova nasce como Route.status = PENDING_APPROVAL.
  • Aprovar a análise muda a rota para ACTIVE.
  • Rejeitar a análise mantém a rota fora de uso operacional.
  • rejectionReason é obrigatório quando status = REJECTED.
  • A permission de aprovação é tratada no domínio de Authorization.
  • O histórico de análises deve ser preservado.

Enums

RouteApprovalStatus

ValorDescrição
PENDINGAnálise pendente
APPROVEDRota aprovada
REJECTEDRota rejeitada

Example

{
  "routeApprovalId": "01980b71-7c84-7a8f-9018-16f4f2eaa06d",
  "routeId": "0197a80c-4204-7b77-9005-48cc23677587",
  "requestedBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "reviewedBy": "0197a806-7a50-7d8d-b2ea-07748f4e38f7",
  "status": "APPROVED",
  "rejectionReason": null,
  "requestedAt": "2026-07-03T15:10:00.000Z",
  "reviewedAt": "2026-07-03T15:30:00.000Z",
  "createdBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "createdAt": "2026-07-03T15:10:00.000Z",
  "updatedBy": "0197a806-7a50-7d8d-b2ea-07748f4e38f7",
  "updatedAt": "2026-07-03T15:30:00.000Z"
}