Está en la página 1de 5

package trabajofinal;

import java.util.ArrayList;
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
import javax.swing.JScrollPane;

public class TrabajoFinal {


public static String opci, opci01, opci02, opci03, opci04;
public static ArrayList<String> menu = new ArrayList();
public static ArrayList<String> orden = new ArrayList();
public static ArrayList<Integer> cant = new ArrayList();
public static ArrayList<Integer> cantticket = new ArrayList();
public static ArrayList<Integer> canttotal = new ArrayList();
public static ArrayList<Integer> ticket = new ArrayList();

public static ArrayList<Double> precio = new ArrayList();


public static ArrayList<Double> costo = new ArrayList();

public static JTextArea carta = new JTextArea(10,20);


public static JScrollPane scroll00= new JScrollPane(carta);

public static JTextArea ganancias = new JTextArea(10,20);


public static JScrollPane scroll01= new JScrollPane(ganancias);
public static int n=0;

public static void main(String[] args) {


carta();
boolean inter=true;//interruptor que usaremos para salir de la interfaz
do{
interfaz();
switch(opci){
case "1":
verCarta();
break;
case "2":
pedirOrden();
break;
case "3":
verOrden();
break;
case "4":
enviarPedido();
break;
case "5":
admin();
break;
case "6":
inter=false;
break;
}
}while(inter);

public static void interfaz(){


opci=JOptionPane.showInputDialog("Bienvenido a la cevicheria El Morropano"+
"\nIngrese la opción que desea realizar: "+
"\n1.Ver Carta"+
"\n2.Pedir orden"+
"\n3.Ver orden"+
"\n4.Enviar orden"+
"\n5.Ingresar como administrador"+
"\n6.Salir");

}
public static void carta(){
//Se agregan los platos y sus respectivos precios a la carta
menu.add("Encebollado completo");
precio.add(2.00);
menu.add("Encebollado medio");
precio.add(1.50);
menu.add("Ceviche peruano");
precio.add(4.50);
menu.add("Cevich calamar");
precio.add(5.00);
menu.add("Ceviche concha");
precio.add(5.00);
menu.add("Agua Mineral ");
precio.add(1.00);
menu.add("Cerveza helada");
precio.add(1.75);
menu.add("Stella helada ");
precio.add(2.25);
for(int i=0; i<8; i++){//Se agregan los productos y los precios a un
JTextArea para poder mostrarse a los usuarios
carta.append(""+menu.get(i)+": " );
carta.append("\tS/."+precio.get(i)+"\n");
cant.add(50);
canttotal.add(0);
}
}
public static void verCarta(){
JOptionPane.showMessageDialog(null,carta);
}
public static void pedirOrden(){
String nombre;
int x;
if(cantticket.size()>0){
opci02=JOptionPane.showInputDialog("Tiene una orden activa ¿Desea
eliminarla y crear una nueva?"+
"\n1.Sí"+
"\n2.No");
if(opci02.equals("1")){
for(int i=0; i<8;i++){
cant.set(i,cant.get(i)+cantticket.get(i));
}
orden.remove(n-1);
cantticket.clear();
costo.remove(n-1);
ticket.remove(n-1);
n--;

JOptionPane.showMessageDialog(null,"El pedido se eliminó, vuelva a


registrarlo");

}
else{
if(opci02.equals("2")){
JOptionPane.showMessageDialog(null,"Se continuará con el
pedido");

}
else{
JOptionPane.showMessageDialog(null,"Opcion ingresada no
válida");
}
}
}
else{
n++;
ticket.add(n);
costo.add(0.0);
JOptionPane.showMessageDialog(null, "Su ticket es el N°"+n);
orden.add(n-1,"Su ticket es el N°"+n+", ");
nombre=JOptionPane.showInputDialog("Ingrese su nombre");
orden.set(n-1,orden.get(n-1)+nombre+"\n\nPEDIDO:");
int i=0;
while(i<8){
opci01=JOptionPane.showInputDialog("¿Desea solicitar: "+menu.get(i)
+"?"+
"\nPrecio: S/."+precio.get(i)+
"\n1.Sí"+
"\n2.No");
if(opci01.equals("1")){
x=Integer.parseInt(JOptionPane.showInputDialog("Ingrese la cantidad
que desea solicitar"+
"\nQuedan: "+(cant.get(i)-canttotal.get(i))));
if(x<=cant.get(i)){
canttotal.set(i,canttotal.get(i)+x);
cantticket.add(i,x);
orden.set(n-1,orden.get(n-1)+"\n"+menu.get(i)+": "+x);
costo.set(n-1,costo.get(n-1)+x*precio.get(i));
i++;
}
else{
JOptionPane.showMessageDialog(null,"Cantidad ingresada no
válida");
}
}
else{
if(opci01.equals("2")){
cantticket.add(i,0);
i++;
}
else{
JOptionPane.showMessageDialog(null,"Opción ingresada no
válida");
}
}
}
orden.set(n-1,orden.get(n-1)+"\n\nCosto: S/."+costo.get(n-1));
}
}
public static void verOrden(){
if(cantticket.size()>0){
JOptionPane.showMessageDialog(null,orden.get(n-1));
}
else{
JOptionPane.showMessageDialog(null,"No hay pedidos resgistrados");
}
}
public static void enviarPedido(){
opci03=JOptionPane.showInputDialog("¿Desea enviar el pedido?"+
"\n1.Sí"+
"\n2.No");
if(opci03.equals("1")){
cantticket.clear();
JOptionPane.showMessageDialog(null,"Se envío el pedido, registre
uno nuevo");

}
else{
if(opci03.equals("2")){
JOptionPane.showMessageDialog(null,"Se continuará con el pedido");
}
else{
JOptionPane.showMessageDialog(null,"Opción ingresada no válida");

}
}

}
public static void admin(){
String password;
password=JOptionPane.showInputDialog("Ingrese la contraseña: ");
if(password.equals("admin")){
JOptionPane.showMessageDialog(null, "Se ingresó como administrador");
interfazAdmin();
switch(opci04){
case "1":
ganancias();
break;
case "2":
busqueda();
break;
}
}
else{
JOptionPane.showMessageDialog(null, "Contraseña Incorrecta");

}
public static void interfazAdmin(){
opci04=JOptionPane.showInputDialog("Seleccione la opción que desea
realizar: "+
"\n1.Mostrar Ganancias"+
"\n2.Búsqueda de tickets");
}
public static void ganancias(){
double gtotal=0;
for(int i=0; i<orden.size();i++){
ganancias.append("Ticket N°"+(i+1)+": "+"S/."+costo.get(i)+"\n");
gtotal=gtotal+costo.get(i);
}
ganancias.append("Ganancia total: S/."+gtotal);
JOptionPane.showMessageDialog(null,ganancias);

}
public static void busqueda(){
int busq, j, a=0;
busq=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el número de
ticket que desea buscar: "));
j=ticket.indexOf(busq);
if(j!=-1){
a=1;
}
else{
a=0;
}

if(a==0){
JOptionPane.showMessageDialog(null, "El ticket ingresado no existe");
}
else{
JOptionPane.showMessageDialog(null,orden.get(j));

}
}

También podría gustarte