Skip to main content

Campos

Relacionamentos

Regras de Negócio

  • Representa um par fixo de origem e destino, ambos referenciando o catálogo global de Point.
  • Nome e coordenadas de origem/destino vivem em Point — não são duplicados em Route.
  • cooperativeId identifica a cooperativa responsável pela criação da rota.
  • transportOperatorId identifica o permissionário de origem quando ele propõe a rota; caso contrário, permanece nulo.
  • Quando preenchido, o permissionário deve pertencer à cooperativa informada.
  • A rota nasce com status = PENDING_APPROVAL.
  • A rota só deve sair de PENDING_APPROVAL por meio de RouteApproval.
  • MOB/BKO aprova ou rejeita a rota.
  • O permissionário de origem não recebe autorização operacional automática. Ele opera uma rota aprovada somente quando existe TransportOperatorRoute ativo.
  • O veículo e o motorista são atribuídos por viagem (Trip), não por rota.
  • driverId não fica na rota. A autorização do motorista é validada por DriverTransportOperator na Trip.
  • Rotas ACTIVE podem ser usadas em Trips e venda.
  • Rotas INACTIVE não devem ser usadas em novas Trips.

Enums

RouteStatus

Example