Descripción General
Los endpoints de Artículos Principales proporcionan las operaciones fundamentales para gestionar los artículos base del sistema RestMaster. Estos endpoints manejan la información esencial de cada producto, incluyendo su identificación, nombre, precio, familia y estado.
🎯 Características de los Artículos Principales
- Identificación única: Cada artículo tiene un ID único en el sistema
- Información básica: Nombre, descripción, precio y categorización
- Estado activo/inactivo: Control de disponibilidad del artículo
- Relación con familias: Organización jerárquica de productos
- Validación de datos: Verificación de integridad de la información
Endpoints Disponibles
GET
/Master/Articulos/GetArticulos
Obtiene todos los artículos disponibles en el sistema. Este endpoint devuelve una lista completa de todos los artículos registrados en la base de datos.
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 artículos devuelta exitosamente
{
"articuloId": "ART001",
"nombre": "Hamburguesa Clásica",
"precio": 12.50,
"familiaId": "FAM001",
"activo": true,
"descripcion": "Hamburguesa con carne, lechuga, tomate y queso"
}
500 Internal Server Error
Error interno del servidor
GET
/Master/Articulos/GetArticulo/{id}
Obtiene un artículo específico por su ID. Este endpoint permite recuperar la información detallada de un artículo en particular.
Parámetros de ruta:
- id (string, requerido): ID único del artículo
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
Artículo encontrado y devuelto
404 Not Found
Artículo no encontrado
500 Internal Server Error
Error interno del servidor
POST
/Master/Articulos/AddArticulo
Crea un nuevo artículo en el sistema. Este endpoint permite agregar un nuevo producto al catálogo del restaurante.
Body (JSON):
{
"nombre": "Nuevo Producto",
"precio": 15.99,
"familiaId": "FAM002",
"descripcion": "Descripción del nuevo producto",
"activo": true
}
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
Artículo creado exitosamente
{
"articuloId": "ART002",
"nombre": "Nuevo Producto",
"precio": 15.99,
"familiaId": "FAM002",
"descripcion": "Descripción del nuevo producto",
"activo": true,
"fechaCreacion": "2024-01-15T10:30:00Z"
}
500 Internal Server Error
Error interno del servidor
PUT
/Master/Articulos/UpdateArticulo/{id}
Actualiza un artículo existente en el sistema. Este endpoint permite modificar la información de un artículo ya registrado.
Parámetros de ruta:
- id (string, requerido): ID del artículo a actualizar
Body (JSON):
{
"nombre": "Hamburguesa Clásica Actualizada",
"precio": 13.50,
"familiaId": "FAM001",
"descripcion": "Hamburguesa mejorada con ingredientes premium",
"activo": true
}
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
Artículo actualizado exitosamente
404 Not Found
Artículo no encontrado
500 Internal Server Error
Error interno del servidor
DELETE
/Master/Articulos/DeleteArticulo/{id}
Elimina un artículo del sistema. Este endpoint permite remover un producto del catálogo del restaurante.
Parámetros de ruta:
- id (string, requerido): ID del artículo 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
Artículo eliminado exitosamente
{
"message": "Articulo deleted successfully",
"articulo": {
"articuloId": "ART001",
"nombre": "Hamburguesa Clásica",
"precio": 12.50,
"familiaId": "FAM001",
"activo": false
}
}
404 Not Found
Artículo no encontrado
500 Internal Server Error
Error interno del servidor
Servicio Utilizado
IArticulosService - Servicio principal para la gestión de artículos
- GetAllArticulos(): Obtiene todos los artículos
- GetArticuloById(): Obtiene un artículo por ID
- AddArticulo(): Crea un nuevo artículo
- UpdateArticulo(): Actualiza un artículo existente
- DeleteArticulo(): Elimina un artículo