Un restaurante posee una serie de insumos necesarios para la elaboración de los platos que ofrece en carta, por lo que es de vital importancia conocer cuando llegan a la existencia mínima permitida cada uno de sus 50 insumos, para lo cual se ejecutan los siguientes procesos:
a. El encargado del almacén posee un listado con código, nombre, cantidad en existencia y stock mínimo
b. El encargado de la cocina elabora solicitudes de insumos constantemente, en las cuales especifica: código y cantidad requerida.
c. El encargado del almacén, al recibir la orden, envía la cantidad requerida y periódicamente, emite un listado con los códigos de los insumos que llegaron al stock mínimo.
SOLUCIÓN
package proyectolistarestaurant;
/**
*
* @author Usuario
*/
public class Encargado_almacen {
private String codigo;
private String nombre;
private double cantidad_existencia;
private int stock_minimo = 50;
public Encargado_almacen(String codigo, String nombre, double cantidad_existencia) {
this.codigo = codigo;
this.nombre = nombre;
this.cantidad_existencia = cantidad_existencia;
}
public boolean recivirSolicitudes(String codi, int can) {
boolean exito = true;
if (can < cantidad_existencia) {
cantidad_existencia = cantidad_existencia - can;
exito = true;
} else {
exito = false;
}
return exito;
}
public String getCodigo() {
return codigo;
}
//correlo
public void setCodigo(String codigo) {
this.codigo = codigo;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public double getCantidad_existencia() {
return cantidad_existencia;
}
public void setCantidad_existencia(double cantidad_existencia) {
this.cantidad_existencia = cantidad_existencia;
}
public int getStock_minimo() {
return stock_minimo;
}
public void setStock_minimo(int stock_minimo) {
this.stock_minimo = stock_minimo;
}
@Override
public String toString() {
return "Encargado_almacen{" + "codigo=" + codigo + ", nombre=" + nombre + ", cantidad_existencia=" + cantidad_existencia + ", stock_minimo=" + stock_minimo + '}';
}
}
.......................................................................................................................................................
package proyectolistarestaurant;
/**
*
* @author Usuario
*/
public class Encargado_cocina {
private String codigo;
private int cantidad_requerida;
public Encargado_cocina(String codigo, int cantidad_requerida) {
this.codigo = codigo;
this.cantidad_requerida = cantidad_requerida;
}
public String getCodigo() {
return codigo;
}
public void setCodigo(String codigo) {
this.codigo = codigo;
}
public int getCantidad_requerida() {
return cantidad_requerida;
}
public void setCantidad_requerida(int cantidad_requerida) {
this.cantidad_requerida = cantidad_requerida;
}
@Override
public String toString() {
return "Encargado_cocina{" + "codigo=" + codigo + ", cantidad_requerida=" + cantidad_requerida + '}';
}
}
......................................................................MAIN........................................................................
package proyectolistarestaurant;
import java.util.ArrayList;
import java.util.Scanner;
public class ProyectoListaRestaurant {
static Scanner entrada = new Scanner(System.in);
ArrayList<Encargado_almacen> ListaAlmacen;
ArrayList<Encargado_cocina> listaCocina;//aunque este no se necita
// aca no se crea otro mas con encargado de cocina
Encargado_almacen almacen;
Encargado_cocina cocina;
public static void main(String[] args) {
ProyectoListaRestaurant proyecto = new ProyectoListaRestaurant();
proyecto.ListaAlmacen = new ArrayList();
int op;
do {
System.out.println(" menu");
System.out.println(" [1] Agregar Al almacen ");
System.out.println(" [2] enviar pedido ");
System.out.println(" [3] Amostarr codigo stock ");
System.out.println("[4]Salir");
System.out.println("ingrese opcion[1-4]");
op = entrada.nextInt();
switch (op) {
case 1:
proyecto.agregarAlmacen();
break;
case 2:
proyecto.Cocina();
break;
case 3:
proyecto.mostrarInsumosStock();
break;
}
} while (op != 4);
}
public void agregarAlmacen() {
String codigo, nombre;
int cantidad;
System.out.println("Almacen");
System.out.println("Codigo:::");
codigo = entrada.next();
System.out.println("Nombre::");
nombre = entrada.next();
System.out.println("Cantidad Existente");
cantidad = entrada.nextInt();
almacen = new Encargado_almacen(codigo, nombre, cantidad);
ListaAlmacen.add(almacen);
}
public void Cocina() {
int cantidad;
String codigo;
System.out.println("Cocina");
System.out.println("Codigo del producto");
codigo = entrada.next();
System.out.println("cantidad Requerida");
cantidad = entrada.nextInt();
if (almacen.recivirSolicitudes(codigo, cantidad)) {
System.out.println("Pedido Exisitoso");
} else {
System.out.println("No disponible");
}
}
public void mostrarInsumosStock(){
if(almacen.getStock_minimo()>5){
for (int i = 0; i < ListaAlmacen.size(); i++) {
System.out.println(ListaAlmacen.get(i));
}
System.out.println("Se requiquere avastecer el estock");
}else{
System.out.println("...");
}
}
}