Skip to main content
O Passenger representa a pessoa que viaja em uma passagem. Ele não é necessariamente o comprador (Customer) nem precisa ter conta (User) no DEVMOB. Esse modelo permite cenários como uma pessoa comprando passagens para familiares, funcionários ou terceiros. O comprador continua sendo o Customer do Order; o viajante de cada passagem fica em Passenger.

Campos

Relacionamentos

  • Relaciona-se com múltiplos Ticket

Regras de Negócio

  • Passenger identifica o viajante de uma passagem, não o comprador do pedido.
  • Um Customer pode comprar tickets para si ou para outros passageiros.
  • O par document + documentType é único.
  • Durante a criação de um pedido, o passageiro é resolvido por document + documentType.
  • Se já existir passageiro com o mesmo documento e tipo, o registro é reutilizado e name/birthDate podem ser atualizados com os dados mais recentes enviados no pedido.
  • O Ticket mantém um snapshot.passenger denormalizado para preservar os dados exibidos no momento da emissão.
  • Atualizações posteriores no Passenger não devem alterar o snapshot de tickets já emitidos.

Enums

DocumentType

Example