Descripción General
Los endpoints de Gestión de Repartidores proporcionan las operaciones fundamentales para administrar los repartidores del sistema RestMaster. Estos endpoints manejan la información básica de los repartidores que realizan entregas a domicilio, incluyendo su identificación y datos personales.
🎯 Características de la Gestión de Repartidores
- Identificación única: Cada repartidor tiene un ID único en el sistema
- Información básica: Nombre completo del repartidor
- Integración con facturas: Asociación con pedidos de reparto
- Servicio a domicilio: Gestión de entregas a clientes
- Validación de datos: Verificación de integridad de la información
Endpoints Disponibles
GET
/Master/Repartidores/GetRepartidores
Obtiene todos los repartidores registrados en el sistema. Este endpoint devuelve una lista completa de todos los repartidores disponibles para realizar entregas a domicilio.
Parámetros de consulta:
- initialCatalog (string, requerido): Nombre de la base de datos
- userID (string, opcional): ID de usuario de la base de datos
- password (string, opcional): Contraseña de la base de datos
200 OK
Lista de repartidores devuelta exitosamente
{
"repartidor": 1.0,
"nombre": "Juan Pérez"
}
500 Internal Server Error
Error interno del servidor
GET
/Master/Repartidores/GetRepartidor/{id}
Obtiene un repartidor específico por su ID. Este endpoint permite recuperar la información detallada de un repartidor en particular.
Parámetros de ruta:
- id (double, requerido): ID único del repartidor
Parámetros de consulta:
- initialCatalog (string, requerido): Nombre de la base de datos
- userID (string, opcional): ID de usuario de la base de datos
- password (string, opcional): Contraseña de la base de datos
200 OK
Repartidor encontrado y devuelto
404 Not Found
Repartidor no encontrado
500 Internal Server Error
Error interno del servidor
POST
/Master/Repartidores/AddRepartidor
Crea un nuevo repartidor en el sistema. Este endpoint permite agregar un nuevo repartidor al equipo de entrega a domicilio.
Body (JSON):
{
"repartidor": 0.0,
"nombre": "María García"
}
Parámetros de consulta:
- initialCatalog (string, requerido): Nombre de la base de datos
- userID (string, opcional): ID de usuario de la base de datos
- password (string, opcional): Contraseña de la base de datos
201 Created
Repartidor creado exitosamente
{
"repartidor": 2.0,
"nombre": "María García"
}
500 Internal Server Error
Error interno del servidor
PUT
/Master/Repartidores/UpdateRepartidor/{id}
Actualiza un repartidor existente en el sistema. Este endpoint permite modificar la información de un repartidor ya registrado.
Parámetros de ruta:
- id (double, requerido): ID del repartidor a actualizar
Body (JSON):
{
"repartidor": 1.0,
"nombre": "Juan Pérez Actualizado"
}
Parámetros de consulta:
- initialCatalog (string, requerido): Nombre de la base de datos
- userID (string, opcional): ID de usuario de la base de datos
- password (string, opcional): Contraseña de la base de datos
200 OK
Repartidor actualizado exitosamente
404 Not Found
Repartidor no encontrado
500 Internal Server Error
Error interno del servidor
DELETE
/Master/Repartidores/DeleteRepartidor/{id}
Elimina un repartidor del sistema. Este endpoint permite remover un repartidor del equipo de entrega.
Parámetros de ruta:
- id (double, requerido): ID del repartidor a eliminar
Parámetros de consulta:
- initialCatalog (string, requerido): Nombre de la base de datos
- userID (string, opcional): ID de usuario de la base de datos
- password (string, opcional): Contraseña de la base de datos
200 OK
Repartidor eliminado exitosamente
{
"repartidor": 1.0,
"nombre": "Juan Pérez"
}
404 Not Found
Repartidor no encontrado
500 Internal Server Error
Error interno del servidor
Servicio Utilizado
IRepartidoresService - Servicio principal para la gestión de repartidores
- GetRepartidores(): Obtiene todos los repartidores
- GetRepartidor(): Obtiene un repartidor por ID
- AddRepartidor(): Crea un nuevo repartidor
- UpdateRepartidor(): Actualiza un repartidor existente
- DeleteRepartidor(): Elimina un repartidor