Entrega Sprint 1 - Grupo5-TIP/documentacion GitHub Wiki

ENTREGA SPRINT 1

Alcance y funcionalidades

La entrega del sprint 1, se basa fundamentalmente en los casos de uso del cajero (persona que se encarga de realizar las ordenes del restaurant / bar). Se trata de definir para el mismo, un flujo que facilite la operatoria y haga agil su trabajo diario. Se diseña la visualización de mesas del salón. El mismo contiene mesas que pueden ser seleccionables mediante un click para ingresar a ellas de esta manera. Al ingresar se visualiza la orden, que puede ser nueva o ya contener items precargados tanto por el cliente como por el cajero mismo. Dentro de esta orden se pueden agregar productos y visualizar el impacto de precios en la misma.

Los casos de uso del cajero son:

Casos de uso


  • Poder ver el plano de las mesas disponibles.

El cajero va a disponer de una ventana para visualizar las mesas de forma sencilla, de esta forma podrá orientarse fácilmente para poder realizar la carga de sus ordenes.


  • Poder agregar productos a las ordenes nuevas o precargadas.

El cajero podrá cargar dentro de las mesas productos. Estos productos podrán ser cargados sobre una orden ya existente o una orden nueva.


Diagrama de arquitectura

  • El siguiente diagrama de arquitectura se encuentra basado en el caso de uso de poder ver el plano de las mesas.

Frontend:

  • Vista Tables.jsx : Se encarga de visualizar el plano de las mesas desde el frontend.
  • Componente Table : Visualiza cada mesa individualmente mostrando el id el estado.
  • Servicio TableService: Realiza la conexión mediante axios, hacia el backend para traer las mesas del sistema.

Backend:

  • OrderTableController: Se encarga de exponer los métodos http para poder recuperar todas las mesas.
  • OrderTableService: Realiza la parte lógica del pedido de las mesas. Es decir, se encarga de poder recuperar todas las mesas, guardar una nueva orden, ordenar los items de una mesa sin repetidos.
  • OrderTableRepository: Realiza la conexión con la base de datos y genera los objetos necesarios para devolver las mesas.
  • OrderTable: Es la representación a nivel modelo de una mesa, la cual tiene como valores un estado, una posición en expresada en coordenadas xy, y un tamaño.

Diagrama de clases UML: