Saltar al contenido principal

Actualizar conductor

PUT 

/drivers/:id

Propósito

Actualiza los datos de un conductor existente asociado a la empresa.

Objetivo

Permitir modificar los datos personales de un conductor (nombre, teléfono, email, dirección, vehículo por defecto, etc.).

Casos de uso

  • Corregir datos incorrectos de un conductor.
  • Actualizar el teléfono o email de un conductor.
  • Cambiar el vehículo por defecto del conductor.

Flujo de actualización

flowchart TD
A[Recibir PUT /drivers/:id] --> B{¿ID proporcionado?}
B -->|No| C[404 NOT_FOUND]
B -->|Sí| D{¿Conductor pertenece a la empresa?}
D -->|No| E[403 NOT_ALLOWED]
D -->|Sí| F{¿Se cambia el email?}
F -->|Sí| G{¿Nuevo email ya registrado?}
G -->|Sí| H[406 USER_ALREADY_EXIST]
G -->|No| I[Validar datos con validateData]
F -->|No| I
I -->|Error| J[400 Error de validación]
I -->|OK| K[Actualizar y guardar]
K --> L[200 OK - Conductor actualizado]

Detalles técnicos

  • Verifica que el conductor (id) pertenezca al array cia.truckers de la empresa autenticada. Si no, devuelve 403 NOT_ALLOWED.
  • Si se cambia el email, valida que el nuevo email no esté ya registrado en otra cuenta.
  • Los datos se validan con TruckerUser.validateData().
  • Actualiza los campos con TruckerUser.updateData().

Autenticación

Requiere JWT Bearer token o API Key.

Request

Responses

Conductor actualizado exitosamente

Response Headers