Glosario - puj-course/FIS_2630_1204_G2 GitHub Wiki

Glosario

Términos del dominio y del código. Varios conceptos tienen dos nombres por razones históricas; esta página indica cuál es cuál.

Términos con dos nombres

Término Equivalente Nota
Plato Producto La base los llama productos. Parte del código dice plato. Son lo mismo.
Insumo Ingrediente La tabla es ingredientes. plato_insumo y DisponibilidadService dicen insumo.
Mesa libre Mesa disponible El catálogo usa DISPONIBLE; parte del código acepta también LIBRE.

Al escribir código nuevo, usar el nombre de la tabla: producto, ingrediente, disponible.

Dominio del restaurante

Comanda. El pedido tal como lo ve la cocina: qué platos preparar y en qué orden. Es la misma información de un pedido, presentada para quien cocina.

Precuenta. El detalle de lo consumido que se le muestra al comensal antes de cobrar. No es todavía un pago.

Zona. Área del restaurante donde están las mesas: salón principal, terraza, barra. Cada mesa pertenece a una.

Adicional. Lo que se suma a un plato de un pedido sin ser un plato aparte: extra de queso, porción de salsa, cambio de acompañamiento. Se cobra sobre el precio del plato.

Regla de descuento. Condición que reduce el total a cobrar, expresada como porcentaje o como monto fijo. La aplica el cajero.

Propina. Monto voluntario que se suma al total. Se guarda por separado del subtotal y de los impuestos, para poder reportarla aparte.

Lote. Entrega concreta de un insumo, con su propia cantidad y su fecha de vencimiento.

Stock mínimo. Cantidad por debajo de la cual un insumo debe reponerse.

Estados

Estados de un pedido. PENDIENTE, ASIGNADO_MESA, EN_PREPARACION, COMPLETADO, ENTREGADO, CANCELADO.

Estados de una mesa. DISPONIBLE, OCUPADA, RESERVADA, MANTENIMIENTO.

Estados de un producto. DISPONIBLE cuando sus insumos alcanzan, AGOTADO cuando no, INACTIVO cuando el administrador lo sacó del menú. Un producto inactivo no vuelve solo aunque haya insumos.

Términos del código

Repositorio. Clase que contiene las consultas SQL de una tabla. Es el único punto que habla con la base.

Servicio. Clase que contiene una regla de negocio. Usa repositorios, no SQL directo.

DTO. Objeto que transporta datos entre capas sin corresponder a una tabla. Por ejemplo CuentaPago, que agrupa lo necesario para cobrar.

Entidad. Clase que representa una fila de una tabla.

Migración. Archivo SQL que modifica una base ya creada. Numerado en secuencia e idempotente: correrlo dos veces no debe fallar ni duplicar datos.

DDL. Archivo que define una tabla desde cero. Se usa al crear la base; sobre una base existente se usan migraciones.

Idempotente. Que correrlo dos veces deja el mismo resultado que correrlo una.