-
Notifications
You must be signed in to change notification settings - Fork 0
Hito 2: APP CLI
La pantalla principal muestra la cafetería en la que se encuentra el usuario y donde va a realizar los cambios. La cafetería la obtendremos como un atributo. Las opciones que ofrece esta vista son:
Crear Pedido: Esta opción crea un pedido y accederá a la siguiente pantalla de Pedido en Proceso. Los parámetros necesarios para acceder a esta son la cafetería y el id del pedido.
Consultar la caja del día: Accederá a la pantalla de Caja del Día, obteniendo esta como parámetro la cafetería y una fecha.
Salir: Esta opción terminará la ejecución de la aplicación.
Esta función recibirá por parámetro una cafetería y un pedido. Mostrará el id del pedido en curso y dará 4 opciones.
La primera corresponde a añadir un producto al pedido, pasando la cafetería como parámetro a la función que muestre por pantalla los distintos tipos de productos.
La segunda permite eliminar un producto del pedido y al igual que la opción anterior, usará el pedido como parámetro para la función que mostrará los productos que se encuentran en el pedido.
En esta tercera se le ofrece al usuario la posibilidad de finalizar el pedido actual. Accederá a la pantalla de finalización del pedido, que recibirá también el pedido por parámetro además de la cafetería.
Y por último da la opción de volver hacia atrás. Llamará a la función de Pantalla Principal con la cafetería que recibió antes.
Mostrará por pantalla los distintos tipos existentes de producto que tiene una cafetería concreta. Nos dará la opción de acceder a cualquier tipo y ver en una pantalla a continuación los productos correspondientes a este tipo. Otra opción es la de volver hacia atrás, es decir, a la pantalla de Pedido en Proceso.
En esta pantalla, se muestran los productos del tipo elegido anteriormente y que recibiremos por parámetro de la pantalla anterior. El usuario podrá escoger un producto para añadirlo al pedido, si no tendrá una opción para volver hacia la pantalla anterior, que corresponde a la pantalla del tipo de producto.
Recibirá el pedido por parámetro y mostrará por pantalla todos los productos que contiene este. Le dará la opción al usuario de eliminar uno de estos o volver a la pantalla anterior con la cafetería que también deberá recibir.
En esta pantalla mostraremos el pedido que estamos modificando usando su id y daremos dos opciones. Una será Pagar y finalizar el pedido, en la que cambiaremos el status de este a finalizado, y la otra es volver a la pantalla anterior, es decir, a la pantalla del Pedido en Proceso. Como parámetro recibiremos la cafetería y el pedido.
Esta función recibirá por parámetro una cafetería y una fecha y mostrará por pantalla el número de pedidos de ese día y el dinero total ganado con todos los pedidos hechos.
Para este hito, pasamos de almacenar la información correspondiente a los distintos objetos con los que trabajamos de memoria a distintos ficheros individuales para estos. Guardaremos y cargaremos, en principio, las distintas cafeterías, los pedidos y los productos, con sus atributos correspondientes.
El formato de estos será el siguiente: tipo del objeto + identificador del mismo + .txt.
La decisión de hacer realizar el sistema de persistencia mediante ficheros de esta forma viene precedida por la necesidad de acceder a ellos en momentos concretos de la ejecución del sistema. De forma que, si en algún momento necesitamos acceder a alguno de los objetos, podamos hacerlo sin tener que sobrecargar la memoria del sistema y además, nos da la oportunidad de que, una vez modificado un objeto concreto, podamos guardar inmediatamente el cambio y de esta forma, otra persona que acceda al sistema tendrá todos los datos actualizados cuando los necesite.