import javax.swing.*;
import java.util.Scanner;
public class FABS {
public static void main(String[] args) {
cPembeli pembeli = null;
cPesanan pesanan = null;
cMenu m[] = new cMenu[7];
m[0] = new cMenu("1", "Americano");
m[1] = new cMenu("2", "Cappucino");
m[2] = new cMenu("3", "Ice Espresso");
m[3] = new cMenu("4", "Caramel Macciato");
m[4] = new cMenu("5", "Morning Bun");
m[5] = new cMenu("6", "Cheese Danish");
m[6] = new cMenu("7", "Butter Croissant");
int jmn = 7;
String pilih;
JFrame jf = new JFrame("Welcome to FABS Coffee");
jf.setSize(600, 400);
do {
pilih = JOptionPane.showInputDialog(jf, "\n::Selamat datang di Fab's Coffee::" +
"\nSilahkan pilih menu program yang tersedia" +
"\nMENU PROGRAM" +
"\n1. Pembeli" +
"\n2. Lihat Menu" +
"\n3. Pesanan" +
"\n4. Keluar");
int pilihMenu = Integer.parseInt(pilih);
switch (pilihMenu) {
case 1:
String pilihMenuPembeli;
do {
pilihMenuPembeli = JOptionPane.showInputDialog(jf, "::Sub Menu Pembeli::" +
"\n1. Tambah Data" +
"\n2. Ubah Data" +
"\n3. Lihat Data" +
"\n4. Hapus Data" +
"\n5. Keluar Sub Menu Pembeli");
int pilihPembeli = Integer.parseInt(pilihMenuPembeli);
switch (pilihPembeli) {
case 1:
if (pembeli != null) {
JOptionPane.showMessageDialog(jf,"::Data pembeli sudah terisi");
break;
}
String nm = JOptionPane.showInputDialog(jf, "Nama Pembeli");
String tlp = JOptionPane.showInputDialog(jf, "Nomor Telpon");
pembeli = new cPembeli(nm, tlp);
JOptionPane.showMessageDialog(jf,"::Penambahan Sukses...");
break;
case 2:
if (pembeli != null) {
nm = JOptionPane.showInputDialog(jf,"Ubah Nama Pembeli" +
"\nNama Lama : " + pembeli.getNama() + "\nNama Baru = ");
pembeli.setNama(nm);
tlp = JOptionPane.showInputDialog(jf, "Nomor Telepon Lama : " + pembeli.getTelepon() + "\nNomor Telepon Baru = ");
pembeli.setTelepon(tlp);
JOptionPane.showMessageDialog(jf,"::Update Sukses");
} else JOptionPane.showMessageDialog(jf,"::Pembeli Masih Kosong!");
break;
case 3:
if (pembeli != null) {
JOptionPane.showMessageDialog(jf, "Data Pembeli" +
"\nNama = " + pembeli.getNama() + "\nTelepon = " + pembeli.getTelepon());
} else JOptionPane.showMessageDialog(jf,"::Data Pembeli Kosong!");
break;
case 4:
nm = JOptionPane.showInputDialog(jf,"Hapus Data Pembeli" +
"\nMasukkan Nama");
if (pembeli != null && pembeli.getNama().equalsIgnoreCase(nm)) {
String hapus = JOptionPane.showInputDialog(jf, "Apakah Anda yakin ingin menghapus?" +
"\n1. Ya" +
"\n2. Batal");
int delete = Integer.parseInt(hapus);
if (delete == 1) {
pembeli = null;
JOptionPane.showMessageDialog(jf,"::Data pembeli dihapus");
} else {
JOptionPane.showMessageDialog(jf,"::Hapus data dibatalkan");
}
}
break;
}
} while (pilihMenuPembeli != "5");
break;
case 2 :
cCoffee cfe1 = new cCoffee("1","Americano");
cCoffee cfe2 = new cCoffee("2","Cappucino");
cCoffee cfe3 = new cCoffee("3","Ice Espresso");
cCoffee cfe4 = new cCoffee("4","Caramel Macciato");
cPastry pst1 = new cPastry("5","Morning Bun");
cPastry pst2 = new cPastry("6","Cheese Danish");
cPastry pst3 = new cPastry("7","Butter Croissant");
JOptionPane.showMessageDialog(jf, "::Menu FABS Coffee" +
"\nSemua jenis coffee dan pastry seharga Rp 25.000,-" +
"\nCOFFEE" +
"\n" +cfe1.getKode()+" "+cfe1.getNama() +
"\n" +cfe2.getKode()+" "+cfe2.getNama()+
"\n" +cfe3.getKode()+" "+cfe3.getNama()+
"\n" +cfe4.getKode()+" "+cfe4.getNama()+
"\n\nPASTRY" +
"\n" +pst1.getKode()+" "+pst1.getNama()+
"\n" +pst2.getKode()+" "+pst2.getNama()+
"\n" +pst3.getKode()+" "+pst3.getNama());
break;
case 3:
String pilihMenuPesanan;
do {
pilihMenuPesanan = JOptionPane.showInputDialog(jf, "Sub Menu Pesanan" +
"\n1. Buat Pesanan" +
"\n2. Tambah Pesanan" +
"\n3. Hapus Pesanan" +
"\n4. Lihat Pesanan" +
"\n5. Keluar Sub Menu Pesanan");
int pilihPesanan = Integer.parseInt(pilihMenuPesanan);
switch (pilihPesanan) {
case 1:
String nm = JOptionPane.showInputDialog(jf, "Masukkan Nama Pembeli");
if (pembeli != null && pembeli.getNama().equalsIgnoreCase(nm)) {
String kd = JOptionPane.showInputDialog(jf," Masukkan Kode Transaksi");
String jml = JOptionPane.showInputDialog(jf, " Jumlah Menu");
int j = Integer.parseInt(jml);
pesanan = new cPesanan(pembeli, j);
System.out.println(" Pembuatan sukses...");
}
break;
case 2:
String mn = JOptionPane.showInputDialog(jf, "Menu FABS Coffee" +
"\nSemua jenis coffee dan pastry seharga Rp 25.000,-" +
"\nMasukkan Kode Menu");
// validasi kode coffee ke array coffee di MAIN
boolean ada = false;
for (int i = 0; i < jmn; i++) {
if (m[i].getKode().equalsIgnoreCase(mn)) {
ada = true;
if (pesanan != null)
pesanan.addMenu(m[i]);
else JOptionPane.showMessageDialog(jf," Pesanan belum ada!");
break;
}
}
if (ada == false) {
JOptionPane.showMessageDialog(jf,"Menu tidak ada!");
}
break;
case 3:
if (pesanan != null) {
mn = JOptionPane.showInputDialog(jf," Masukkan Kode");
pesanan.deleteMenu(mn);
} else JOptionPane.showMessageDialog(jf, " Pesanan masih kosong!");
break;
case 4:
if (pesanan != null) {
int total = pesanan.getJumlah() * 25000;
int bayar = 0;
if (total >= 100000) {
bayar = (int) (total - (0.15 * total));
} else if (total >= 50000) {
bayar = (int) (total - (0.10 * total));
} else bayar = total;
JOptionPane.showMessageDialog(jf," "+pesanan.ToString()+
"\nTotal Harga: " + total +
"\nTotal Bayar: " + bayar);
} else JOptionPane.showMessageDialog(jf, " Pesanan masih kosong!");
break;
}
break;
} while (pilihMenuPesanan != "5");
} while (pilihMenu != 5);
} while (pilih != "4");
JOptionPane.showMessageDialog(jf, "Terima kasih" +
"\n- FABS Coffee");
}
}
Comments