El módulo de mesas permite administrar el inventario de mesas del restaurante y controlar su estado en tiempo real. Las operaciones de creación y eliminación requieren el permisoDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/AbyssDevs/CUSCATLECO/llms.txt
Use this file to discover all available pages before exploring further.
gestionar_mesas, mientras que la consulta del listado requiere listar_mesas y el cambio de estado requiere actualizar_estado_mesa. Todos los endpoints requieren una sesión activa.
Los estados de mesa registran trazabilidad: cada cambio almacena el ID del usuario que lo realizó y la fecha y hora de actualización.
POST /api/mesas
Crea una nueva mesa en el sistema. El número de mesa debe ser único. Permiso requerido:gestionar_mesas
Cuerpo de la solicitud
Número identificador de la mesa. Debe ser único en el restaurante.
Capacidad máxima de personas. Debe ser mayor que 0.
Estado inicial de la mesa. Si se omite, se asigna
Disponible por defecto. Valores válidos: Disponible, Ocupada, Reservada, Limpieza, Mantenimiento.Descripción de la ubicación física de la mesa. Ejemplos:
Zona Interior, Terraza, Salón VIP.Respuesta exitosa — 201
Mensaje de confirmación:
"Mesa creada exitosamente".ID asignado a la nueva mesa.
Ejemplo
cURL
Respuesta 201
Errores
| Código | Descripción |
|---|---|
400 | Faltan campos requeridos, capacidad inválida, o el número de mesa ya existe. |
401 | Sesión no activa. |
403 | Sin permiso gestionar_mesas. |
POST /api/mesas/bulk
Crea múltiples mesas en una sola solicitud. Todas las mesas se crean con estadoDisponible. El límite máximo es de 50 mesas por solicitud.
Permiso requerido: gestionar_mesas
Cuerpo de la solicitud
Array de objetos de mesa. Máximo 50 elementos.
Respuesta exitosa — 201
Mensaje con la cantidad de mesas creadas. Ejemplo:
"5 mesas creadas".ID del primer registro insertado.
Ejemplo
cURL
Respuesta 201
Errores
| Código | Descripción |
|---|---|
400 | El array está vacío, supera el límite de 50, contiene números duplicados, o alguna mesa ya existe. |
401 | Sesión no activa. |
403 | Sin permiso gestionar_mesas. |
GET /api/mesas
Devuelve el listado completo de mesas del restaurante ordenadas por número de mesa de forma descendente. Permiso requerido:listar_mesas
Respuesta exitosa — 200
Retorna un array de objetos mesa.Identificador único de la mesa.
Número visible de la mesa en el restaurante.
Número máximo de personas.
Zona o área del restaurante donde se encuentra.
Estado actual de la mesa. Valores posibles:
Disponible, Ocupada, Reservada, Limpieza, Mantenimiento.Nombre del último usuario que modificó la mesa. Puede ser
null si nunca fue actualizada.Ejemplo
cURL
Respuesta 200
DELETE /api/mesas/:id
Elimina permanentemente una mesa del sistema. Esta operación no se puede deshacer. Permiso requerido:gestionar_mesas
Parámetros de ruta
ID de la mesa a eliminar.
Respuesta exitosa — 200
Mensaje de confirmación:
"Mesa eliminada exitosamente".Ejemplo
cURL
Respuesta 200
Errores
| Código | Descripción |
|---|---|
401 | Sesión no activa. |
403 | Sin permiso gestionar_mesas. |
404 | No existe una mesa con el ID indicado. |
PATCH /api/mesas/:id/estado
Actualiza el estado de una mesa específica. Los cambios quedan registrados en auditoría con el usuario que los realizó. Permiso requerido:actualizar_estado_mesa
Parámetros de ruta
ID de la mesa cuyo estado se desea cambiar.
Cuerpo de la solicitud
Nuevo estado de la mesa. Valores válidos:
Disponible, Ocupada, Reservada, Limpieza, Mantenimiento.Respuesta exitosa — 200
Mensaje de confirmación:
"Estado actualizado correctamente".Ejemplo
cURL
Respuesta 200
Errores
| Código | Descripción |
|---|---|
400 | El campo mesa_estado está ausente o el valor no es válido. |
401 | Sesión no activa. |
403 | Sin permiso actualizar_estado_mesa. |
404 | No existe una mesa con el ID indicado. |