Descripción General
Los endpoints de Gestión de Salones proporcionan las operaciones fundamentales para administrar los salones y áreas del sistema RestMaster. Estos endpoints manejan la información esencial de cada área del restaurante, incluyendo su configuración, tarifas, propinas y características específicas.
🎯 Características de la Gestión de Salones
- Identificación única: Cada salón tiene un ID único en el sistema
- Configuración flexible: Tarifas, recargos y propinas configurables
- Servicio especializado: Configuración de reparto y reposición
- Personalización visual: Imágenes y colores de fondo
- Artículos específicos: Productos de apertura por salón
- Validación de datos: Verificación de integridad de la información
Endpoints Disponibles
GET
/Master/Salons/GetSalons
Obtiene todos los salones disponibles en el sistema. Este endpoint devuelve una lista completa de todos los salones 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 salones devuelta exitosamente
[
{
"salon": 1.0,
"nombre": "Salón Principal",
"recargo": 0.0,
"tarifa": 0.0,
"imagen": [base64_encoded_image_data],
"colorFondo": 16777215,
"reparto": "N",
"propina": "S",
"porcentajePropina": 10.0,
"reposicion": "N",
"articulosApertura": "ART001,ART002"
}
]
500 Internal Server Error
Error interno del servidor
GET
/Master/Salons/GetSalon/{id}
Obtiene un salón específico por su ID. Este endpoint permite recuperar la información detallada de un salón en particular.
Parámetros de ruta:
- id (double, requerido): ID único del salón
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
Salón encontrado y devuelto
404 Not Found
Salón no encontrado
500 Internal Server Error
Error interno del servidor
POST
/Master/Salons/AddSalon
Crea un nuevo salón en el sistema. Este endpoint permite agregar una nueva área al restaurante.
Body (JSON):
{
"nombre": "Nuevo Salón",
"recargo": 5.0,
"tarifa": 0.0,
"imagen": [base64_encoded_image_data],
"colorFondo": 16777215,
"reparto": "N",
"propina": "S",
"porcentajePropina": 10.0,
"reposicion": "N",
"articulosApertura": "ART001"
}
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
Salón creado exitosamente
{
"salon": 2.0,
"nombre": "Nuevo Salón",
"recargo": 5.0,
"tarifa": 0.0,
"imagen": [base64_encoded_image_data],
"colorFondo": 16777215,
"reparto": "N",
"propina": "S",
"porcentajePropina": 10.0,
"reposicion": "N",
"articulosApertura": "ART001"
}
500 Internal Server Error
Error interno del servidor
PUT
/Master/Salons/UpdateSalon/{id}
Actualiza un salón existente en el sistema. Este endpoint permite modificar la información de un salón ya registrado.
Parámetros de ruta:
- id (double, requerido): ID del salón a actualizar
Body (JSON):
{
"nombre": "Salón Principal Actualizado",
"recargo": 2.5,
"tarifa": 0.0,
"imagen": [new_base64_encoded_image_data],
"colorFondo": 16711680,
"reparto": "S",
"propina": "S",
"porcentajePropina": 15.0,
"reposicion": "S",
"articulosApertura": "ART001,ART002,ART003"
}
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
Salón actualizado exitosamente
404 Not Found
Salón no encontrado
500 Internal Server Error
Error interno del servidor
DELETE
/Master/Salons/DeleteSalon/{id}
Elimina un salón del sistema. Este endpoint permite remover un área del restaurante.
Parámetros de ruta:
- id (double, requerido): ID del salón 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
Salón eliminado exitosamente
{
"message": "Salon deleted successfully",
"salon": {
"salon": 1.0,
"nombre": "Salón Principal",
"recargo": 0.0,
"tarifa": 0.0,
"imagen": [base64_encoded_image_data],
"colorFondo": 16777215,
"reparto": "N",
"propina": "S",
"porcentajePropina": 10.0,
"reposicion": "N",
"articulosApertura": "ART001,ART002"
}
}
404 Not Found
Salón no encontrado
500 Internal Server Error
Error interno del servidor
Servicio Utilizado
ISalonsService - Servicio para la gestión de salones
- GetSalons(): Obtiene todos los salones
- GetSalon(): Obtiene un salón por ID
- AddSalon(): Crea un nuevo salón
- UpdateSalon(): Actualiza un salón existente
- DeleteSalon(): Elimina un salón