Campos
Relacionamentos
- Relaciona-se com User (1:1)
- Relaciona-se com múltiplos DriverTransportOperator
- Relaciona-se com múltiplos Trip
- Relaciona-se com múltiplos TripSchedule
- Relaciona-se com múltiplos TripReview (avaliações recebidas do motorista)
- Relaciona-se com múltiplos CashSettlement originados por vendas em dinheiro nas suas Trips.
Regras de Negócio
- O
Driverrepresenta apenas o perfil operacional do motorista: User + dados de habilitação. - Cada
Userpode ter no máximo umDriver(relação 1:1). - O par
document+documentTypedeve ser único entre motoristas. - Documento e data de nascimento são usados para validação cadastral e compliance operacional do motorista.
- A habilitação vale para todos os vínculos operacionais do motorista.
- O vínculo com permissionário vive em DriverTransportOperator.
- A licença/habilitação deve ser de categoria
DouE, obrigatórias para transporte de passageiros. - A validade da licença/habilitação é representada por
licenseExpiresAt. - Status operacional do vínculo não vive aqui; ele é por permissionário, em DriverTransportOperator.status.
driverIdnão fica em Route. Ele fica na Trip, porque motorista é escala/execução, não característica fixa da rota.