Crear conductor
POST/drivers/
Propósito
Crea un nuevo conductor asociado a la empresa del usuario autenticado.
Objetivo
Permitir que los gestores de flotas añadan nuevos conductores a su empresa para asignarlos a eCMRs y gestionar entregas.
Casos de uso
- Dar de alta un nuevo conductor en la empresa.
- Registrar un conductor con sus datos personales y vehículo por defecto.
Flujo de creación
flowchart TD
A[Recibir POST /drivers/] --> B{¿Email proporcionado?}
B -->|No| C[400 FORM_DATA_NOT_VALID]
B -->|Sí| D{¿Email ya registrado?}
D -->|Sí| E[406 USER_ALREADY_EXIST]
D -->|No| F[Validar datos con validateData]
F -->|Error| G[400 Error de validación]
F -->|OK| H[Crear usuario con contraseña auto-generada]
H --> I[Guardar imagen si se envió]
I --> J[Guardar conductor en BD]
J --> K[Enviar email con credenciales]
K --> L[Añadir a cia.truckers]
L --> M[200 OK - Conductor creado]
Detalles técnicos
- Valida unicidad del
emailen la colecciónCompanyUser. - Los datos se validan con
TruckerUser.validateData(). - Se genera una contraseña aleatoria con
tools.generatePass(). - El usuario se crea con
status: true(activo inmediatamente). - Se envía un email con las credenciales al nuevo conductor
(
mail.createNewTrucker). - El ID del conductor se añade al array
cia.truckers. - El idioma del email se hereda del usuario que crea el conductor.
Campos obligatorios: al menos email. El resto depende de
validateData() (name, lastname).
Autenticación
Requiere JWT Bearer token o API Key.
Request
Responses
- 200
- 400
- 401
- 404
- 406
- 500
Conductor creado exitosamente. Se envía email con credenciales al nuevo conductor
Response Headers
Datos del formulario inválidos o faltantes
Response Headers
Token JWT o API Key ausente, expirado o inválido
Response Headers
No se encontró el usuario o la empresa del token
Response Headers
Ya existe un usuario registrado con ese email
Response Headers
Error inesperado al crear el conductor