jueves, 17 de noviembre de 2016

Restaurante (Matriz)

Primera Capa

package Datos;
import logica.Mesas;
public class Restaurante {

 private Mesas [] mesa;
 public Mesas[] getMesa() {
  return mesa;
 }
 public void setMesa(Mesas[] m) {
  this.mesa = m;
 }

}
---------------------------------------------------------------------------------------------------------------------
Segunda Capa

package Datos;
public class Mesas {
  private String  pedido;
  private double valor;
  private String Estado;
  private double CuentaT;
 
  public double getCuentaT() {
  return CuentaT;
 }
 public void setCuentaT(double cuentaT) {
  CuentaT = cuentaT;
 }
 public Mesas(String p, String e, double v){
   pedido=p;
   valor=v;
   Estado=e;
  }
 public String getPedido() {
  return pedido;
 }
 public void setPedido(String pedido) {
  this.pedido = pedido;
 }

 public double getValor() {
  return valor;
 }
 public void setValor(double valor) {
  this.valor = valor;
 }
 public String getEstado() {
  return Estado;
 }
 public void setEstado(String estado) {
  Estado = estado;
 }
 
 
}
--------------------------------------------------------------------------------------------------------------------------
Tercera Capa


package logica;
import java.util.Scanner;
import java.util.Random;
import Datos.Restaurante;
public class Metodos {
 Scanner kai= new Scanner(System.in);
 Restaurante [][] restaurante= new Restaurante[2][5];
 Mesas [] m= new Mesas[11];
 Restaurante r= new Restaurante();
 public void MenúPrincipal(){
  boolean again=true;
  int mesaobt=0;
 
    while (again==true){
    System.out.println("¡Buenos días!, bienvenido al restaurante \"Delicias kai\"");
     System.out.println("¿qué desea hacer?");
     System.out.println("<1> Obtener una mesa");
      System.out.println("<2> Mostrar cuenta");
       System.out.println("<3> Mostrar recaudo total (Opción sólo para administradores) ");
       System.out.println("<4> Hasta luego.");
   
    
     int opc=kai.nextInt();
     switch(opc){ 
      case 1 :
       ObtenerMesa();
       mesaobt=1;
      
      
      break;
      case 2:
       if (mesaobt==1){
       Cuenta();
       
       }
       else{
       System.out.println("Su petición no puede ser ejecutada porque no ha obtenido una mesa todavía");
       }
      break;
      case 3:
       if(mesaobt==1){
    
       Total();
       }
       else {
        System.out.println("Lo siento, pero parece que aún no han habido clientes, trata más tarde de nuevo.");
       }
           
      break;
      case 4:
       System.out.println("Muchas gracias por su compra, espero nos veamos pronto de nuevo.");
       again=false;
      break;
      default:System.out.println("Lo siento, pero no hay realmente una opción así, por favor intenta otra");
    
     }
   }
   
 }
 public void Total(){
  double RT = 0;
  for (int i=0; i<=10;i++){
   RT= RT+ m[i].getCuentaT();
  }
  System.out.println("El día de hoy se han recaudado $"+RT);
 
 
 }
 public void Cuenta(){
  System.out.println("Ingrese el número de su mesa, por favor");
  int r=kai.nextInt();
  System.out.println("Mesa #"+r+" \nTiene una cuenta de $"+m[r].getCuentaT());
 }
   public void LlenarI(){
  
   String p, e;
   double v;
     
      for (int k=0;k<m.length;k++){
        p="Ninguno";
        e="Vacío";
        v=0;
        m[k]=new Mesas(p,e,v);
            }
          
    
   }
 
 
   public void ObtenerMesa(){
    Random rnd = new Random();
    boolean again=true;
    while (again==true){
     int random2 =(int)(rnd.nextDouble() * 10 + 1);
   
      System.out.println(random2);
     if(m[random2].getEstado().equals("Vacío")){
      m[random2].setEstado("Lleno");
      System.out.println("Su mesa es la  #"+ (random2));
      Menú (random2);
      again=false;
     }
     else{
      System.out.println("La mesa #"+random2+" está ocupada.");
     }
      
     
     
    }
   
   }
   public void Menú(int r){
    boolean again=true;
    double Cuenta=0;
    while(again==true){
     System.out.println("¿Qué desea comer?");
     System.out.println("<1> Pollo y bebida ($26.000)");
     System.out.println("<2> Pescado y bebida($41.000)");
     System.out.println("<3> Carne y bebida($39.000)");
     System.out.println("<4> Nada más");
     int opc1=kai.nextInt();
      switch(opc1){
      case 1:
       m[r].setPedido("Pollo y bebida");
       Cuenta=Cuenta+26000;
      break;
      case 2:
       m[r].setPedido("Pescado y bebida");
       Cuenta=Cuenta+41000;
      break;
      case 3:
       m[r].setPedido("Carne y bebida");
       Cuenta=Cuenta+39000;
      break;
      case 4:
       System.out.println("Está bien, espere su orden con calma.");
       again=false;
      break;
      }
    }
    m[r].setCuentaT(Cuenta);
   }
}

---------------------------------------------------------------------------------------------------------------------------
Cuarta Capa

package Visualizaciójn;
import java.util.Scanner;
import logica.Metodos;
public class RumRestaurante {
 static Scanner kai= new Scanner(System.in);
 public static void main(String[]args){
  Metodos m= new Metodos();
  m.LlenarI();
  m.MenúPrincipal();
 }
}


No hay comentarios.:

Publicar un comentario