Sabtu, 22 April 2017

Kasir Restoran Lama Saji

Assalamu'alaikum wr.wb.

Nama saya Irfan Andessa, saya adalah mahasiswa dari STMIK Eresha. Disini saya membuat program sederhana dengan java swing atau dengan kata lain sudah GUI (Graphic User Interface). Saya membuat program kasir yang tergolong sederhana.

langsung saja kita bahas :

Saya menggunakan 2 tipe variabel yaitu Integer dan String. lalu saya menggunakan beberapa method yaitu :

menu() untuk menyimpan source code makanan ,minuman dan hidangan penutup
Ok() untuk menyimpan source code JButton yang akan menampilkan harga tiap pilihan dan total harga
jenis() untuk menyimpan source code jenis pembayaran. ada 2 jenis pembayaran yaitu tunai dan debit
pajak() untuk menghitung pajak 10% dari total bayar
check() untuk memberikan choice apakah hendak di cetak atau tidak
cetak() untuk menampilkan pilihan menu ,total harga ,jenis pembayaran dan jumlah pajak pada JTextArea
clear() untuk menghapus semua text dan pilihan pada tampilan output

ini adalah informasi untuk text dan variabel nya :

Nama Text Variabel
jLabel Kasir Makanan Lama Saji jLabel1
jLabel Food : jLabel2
jLabel Drink : jLabel3
jLabel Dessert : jLabel4
jLabel Rp jLabel5
jLabel Rp jLabel6
jLabel Rp jLabel7
jLabel Rp jLabel8
jLabel Rp jLabel9
jLabel Rp jLabel10
jLabel Rp jLabel11
jLabel Rp jLabel12
jLabel Sub Total : Rp. jLabel13
jLabel Total Bayar : Rp. jLabel14
jLabel Jenis Pembayaran : jLabel15
jLabel X jLabel16
jLabel X jLabel17
jLabel X jLabel18
jLabel = jLabel19
jLabel = jLabel20
jLabel = jLabel21
jLabel *) Debit mendapat potongan Rp. 2500 jLabel22
jLabel Cetak : jLabel23
jComboBox Pilih food
Bubur
Nasi Goreng
Nasi+Ayam Bakar
Nasi+Lele Goreng
Nasi+Bebek Goreng
None
jComboBox Pilih drink
Aqua
Sprite
Teh Manis
Mizone
Nutrisari
Black Coffee
None
jComboBox Pilih dessert
Ice Cream
Parfait Choco
Es Kelapa
Sop Buah
None
jTextField harga_food
jTextField harga_drink
jTextField harga_dessert
jTextField jumlah1
jTextField jumlah2
jTextField jumlah3
jTextField harga_food2
jTextField harga_drink2
jTextField harga_dessert2
jTextField subTotal
jTextField total
jTextField hasilPpn
jRadioButton Tunai cash
jRadioButton Debit debit
jCheckBox PPN 10% ppn
jCheckBox Tidak cetakCheck
jTextArea textCetak
jButton OK jButton1
jButton Cetak jButton2
jButton Clear jButton3
jButton Exit jButton4

Karena kita menggunakan jRadioButton ,maka jangan lupa masukkan jButtonGroup dengan nama variabel nya "Group" ,lalu masukkan rumus kode di Menu Properties->Post-Creation Code seperti ini : Nama_GroupButton.add(Nama_RadioButton);
maka dalam kasus program yang saya buat menjadi : -Group.add(cash);
                                                                                      -Group.add(debit);

Sebelum masuk ke Source Code nya ,ini adalah screenshot 2 tipe variabel yang saya pakai beserta nama nama variabel nya :



Ini Source Code nya :

void menu() {
        if(food.getSelectedItem()=="-Pilih-"){
            harga_food.setText("");
            harga_food2.setText("");
            jumlah1.setText("");
            food.requestFocus();
        }
        else{
            if (food.getSelectedItem()=="Bubur"){
                harga_food.setText("8000");
            }
            else if (food.getSelectedItem()=="Nasi Goreng"){
                harga_food.setText("10000");
            }
            else if (food.getSelectedItem()=="Nasi+Ayam Bakar") {
                harga_food.setText("15000");
            }
            else if (food.getSelectedItem()=="Nasi+Lele Goreng") {
                harga_food.setText("13000");
            }
            else if (food.getSelectedItem()=="Nasi+Bebek Goreng") {
                harga_food.setText("14000");
            }
            else if (food.getSelectedItem()=="None") {
                harga_food.setText("0");
                jumlah1.setText("0");
                harga_food2.setText("0");
        }
        }
        if(dessert.getSelectedItem()=="-Pilih-"){
            harga_dessert.setText("");
            harga_dessert2.setText("");
            jumlah3.setText("");
            dessert.requestFocus();
        }
        else{
            if (dessert.getSelectedItem()=="Ice Cream"){
                harga_dessert.setText("5000");
            }
            else if (dessert.getSelectedItem()=="Parfait Choco"){
                harga_dessert.setText("7000");
            }
            else if (dessert.getSelectedItem()=="Sop Buah") {
                harga_dessert.setText("10000");
            }
            else if (dessert.getSelectedItem()=="Es Kelapa") {
                harga_dessert.setText("5000");
            }
            else if (dessert.getSelectedItem()=="None") {
                harga_dessert.setText("0");
                jumlah3.setText("0");
                harga_dessert2.setText("0");
        }
        }
        if(drink.getSelectedItem()=="-Pilih-"){
            harga_drink.setText("");
            harga_drink2.setText("");
            jumlah2.setText("");
            drink.requestFocus();
        }
        else{
            if (drink.getSelectedItem()=="Mizone"){
                harga_drink.setText("5000");
            }
            else if (drink.getSelectedItem()=="Aqua"){
                harga_drink.setText("4000");
            }
            else if (drink.getSelectedItem()=="Sprite") {
                harga_drink.setText("6000");
            }
            else if (drink.getSelectedItem()=="Teh Manis") {
                harga_drink.setText("3000");
            }
            else if (drink.getSelectedItem()=="Nutrisari") {
                harga_drink.setText("3000");
            }
            else if (drink.getSelectedItem()=="Black Coffee"){
                harga_drink.setText("4000");
            }
            else if (drink.getSelectedItem()=="None") {
                harga_drink.setText("0");
                jumlah2.setText("0");
                harga_drink2.setText("0");
        }
        }
    }
 
    void Ok(){
        a = Integer.parseInt(harga_food.getText());
        b = Integer.parseInt(jumlah1.getText());
        hasilnya = a*b;
        harga_food2.setText(""+hasilnya);
     
        c = Integer.parseInt(harga_drink.getText());
        d = Integer.parseInt(jumlah2.getText());
        hasilnya2 = c*d;
        harga_drink2.setText(""+hasilnya2);
     
        e = Integer.parseInt(harga_dessert.getText());
        f = Integer.parseInt(jumlah3.getText());
        hasilnya3 = e*f;
        harga_dessert2.setText(""+hasilnya3);
     
        g = Integer.parseInt(harga_food2.getText());
        h = Integer.parseInt(harga_drink2.getText());
        i = Integer.parseInt(harga_dessert2.getText());
        hasilnya4 = g+h+i;
        subTotal.setText(""+hasilnya4);
    }
 
    void jenis(){
        if (cash.isSelected()){
         
            j=Integer.parseInt(harga_food2.getText());
            k=Integer.parseInt(harga_drink2.getText());
            l=Integer.parseInt(harga_dessert2.getText());
            m=j+k+l;
            subTotal.setText(""+m);
        }
        if (debit.isSelected()){
                 
            n=Integer.parseInt(subTotal.getText());
            o=n-2500;
            subTotal.setText(""+o);
        }
    }
 
    void pajak(){
     
     
        if (ppn.isSelected()){
            Harga=Integer.parseInt(subTotal.getText());
            Pajak=Harga/10;
            totbay=Harga+Pajak;
            hasilPpn.setText(""+Pajak);
            total.setText(""+totbay);
        }else{
            hasilPpn.setText(""+0);
            total.setText(subTotal.getText());
        }
    }
 
    void clear(){
        harga_food.setText("");
        jumlah1.setText("");
        jenis.setText("Jenis Pembayaran : ");
        harga_food2.setText("");
        harga_drink.setText("");
        jumlah2.setText("");
        harga_drink2.setText("");
        harga_dessert.setText("");
        jumlah3.setText("");
        harga_dessert2.setText("");
        subTotal.setText("");
        hasilPpn.setText("");
        total.setText("");
        food.setSelectedItem("-Pilih-");
        drink.setSelectedItem("-Pilih-");
        dessert.setSelectedItem("-Pilih-");
        ppn.setEnabled(true);
        ppn.setSelected(false);
        group.clearSelection();
        textCetak.setText("");
        cetakCheck.setText("Tidak");
        cetakCheck.setEnabled(true);
        cetakCheck.setSelected(false);
    }
 
    void cetak(){
     if (food.getSelectedItem()=="-Pilih-"){
         Makanan="";
     }else if(food.getSelectedItem()=="Bubur"){
         Makanan="Bubur";
     }else if(food.getSelectedItem()=="Nasi Goreng"){
         Makanan="Nasi Goreng";
     }else if(food.getSelectedItem()=="Nasi+Ayam Bakar"){
         Makanan="Nasi+Ayam Bakar";
     }else if(food.getSelectedItem()=="Nasi+Lele Goreng"){
         Makanan="Nasi+Lele Goreng";
     }else if(food.getSelectedItem()=="Nasi+Bebek Goreng"){
         Makanan="Nasi+Bebek Goreng";
     }else if(food.getSelectedItem()=="None"){
         Makanan="";
     }
     if (drink.getSelectedItem()=="-Pilih-"){
         Minuman="";
     }else if(drink.getSelectedItem()=="Mizone"){
         Minuman="Mizone";
     }else if(drink.getSelectedItem()=="Aqua"){
         Minuman="Aqua";
     }else if(drink.getSelectedItem()=="Nutrisari"){
         Minuman="Nutrisari";
     }else if(drink.getSelectedItem()=="Sprite"){
         Minuman="Sprite";
     }else if(drink.getSelectedItem()=="Teh Manis"){
         Minuman="Teh Manis";
     }else if(drink.getSelectedItem()=="Black Coffee"){
         Minuman="Black Coffee";
     }else if(drink.getSelectedItem()=="None"){
         Minuman="";
     }
     if (dessert.getSelectedItem()=="-Pilih-"){
         Penutup="";
     }else if(dessert.getSelectedItem()=="Ice Cream"){
         Penutup="Ice Cream";
    }else if(dessert.getSelectedItem()=="Parfait Choco"){
         Penutup="Parfait Choco";
    }else if(dessert.getSelectedItem()=="Sop Buah"){
         Penutup="Sop Buah";
    }else if(dessert.getSelectedItem()=="Es Kelapa"){
         Penutup="Es Kelapa";
    }else if(dessert.getSelectedItem()=="None"){
         Penutup="";
    }
     if (cash.isSelected()){
         Jenis_P="Tunai";
     }else if(debit.isSelected()){
         Jenis_P="Debit";
     }
     if(cetakCheck.isSelected()){
     textCetak.setText("Makanan yang anda pesan : "+jumlah1.getText()+" "+Makanan+"\nMinuman yang anda pesan : "+jumlah2.getText()+" "+Minuman+"\nHidangan penutup yang anda pesan : "+jumlah3.getText()+" "+Penutup+"\nJenis Pembayaran : "+Jenis_P+"\nTotal bayar anda : Rp. "+total.getText()+"\nDengan pajak sebesar : Rp. "+hasilPpn.getText());  
     }else{
         textCetak.setText("Terimakasih");
     }
     }
 
    void check(){
        if (cetakCheck.isSelected()){
            cetakCheck.setText("Ya");
        }else{
            cetakCheck.setText("Tidak");
        }
    }

Untuk penempatan method nya  :

jComboBox||food :

private void foodActionPerformed(java.awt.event.ActionEvent evt) {                                  
        // TODO add your handling code here:
        menu();
    }

jComboBox||drink :

private void drinkActionPerformed(java.awt.event.ActionEvent evt) {                                    
        // TODO add your handling code here:
        menu();
    }

jComboBox||dessert :

private void dessertActionPerformed(java.awt.event.ActionEvent evt) {                                      
        // TODO add your handling code here:
        menu();

    }

jButton||jButton1 :

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                      
        // TODO add your handling code here:
        Ok();

    }

jRadioButton||cash :

private void cashActionPerformed(java.awt.event.ActionEvent evt) {                                  
        // TODO add your handling code here:
        jenis();

    }

jRadioButton||debit :

private void debitActionPerformed(java.awt.event.ActionEvent evt) {                                    
        // TODO add your handling code here:
        jenis();

    }

jCheckBox||ppn :

private void ppnActionPerformed(java.awt.event.ActionEvent evt) {                                  
        // TODO add your handling code here:
        pajak();

    }

jCheckBox||cetakCheck :


private void cetakCheckActionPerformed(java.awt.event.ActionEvent evt) {                                        
        // TODO add your handling code here:
        check();
    }

jButton||jButton2 :

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                      
        // TODO add your handling code here:
        cetak();

    }

jButton||jButton3 :

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                      
        // TODO add your handling code here:
        clear();

    }

jButton||jButton4 :

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {                                      
        // TODO add your handling code here:
        this.dispose();

    }

ini Screenshot program nya :




Terimakasih dan semoga bermanfaat ^_^

Senin, 20 Maret 2017

Program Restoran Lama Saji

Assalamu'alaikum wr. wb.

Disini saya ingin mengenalkan program "Restoran Lama Saji" yang saya buat untuk memenuhi tugas di semester saya yang kedua di STMIK Eresha. Saya membuat program ini dengan software Netbeans 8.2.

Di program saya ini ,saya membuat 3 menu. yang pertama menu makanan ,yang kedua payment (pembayaran) dan ketiga itu exit atau dalam hal ini running program nya terhenti.

Pertama, kita perlu memilih menu makanan. Karena jika memilih payment ,maka akan kembali ke menu awal.
Kedua, pilih menu yang tersedia ,ada 5 pilihan yaitu :
-Nasi+Ayam Bakar+Teh Manis
-Nasi+Lele Goreng+Teh Manis
-Nasi Goreng
-Gado-Gado+Aqua
-Ice Cream
Ketiga,setelah memilih menu yang di inginkan lalu input jumlah menu yang di inginkan min. 1 dan maks. 10
Keempat,sesudah memesan ,maka tampilan akan kembali ke menu awal. karena menu payment(pembayaran) ada di menu awal
Kelima, setelah memilih menu payment(pembayaran) maka akan tampil menu makanan yang sudah di pilih dan jumlah yang telah di pesan
Keenam, masukkan jumlah uang yang harus di bayarkan dan usahakan lebih dari total pembayaran ,karena jika kurang maka akan mengulang terus menerus hingga uang pembayaran nya pas atau lebih
Ketujuh, jika sudah selesai. anda akan kembali ke menu awal ,jika ingin memesan kembali maka ikuti petunjuk Kedua sampai Ketujuh jika tidak maka pilih menu exit. 

Dibawah ini adalah tampilan flowchart Restoran Lama Saji :




Dan ini adalah source nya :

import java.util.*;
public class KasirLamaSaji {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        Scanner in = new Scanner(System.in);

String validasi="";
int choice=0;
int menu_choice=0;
int nasi_ayam=0, nasi_lele=0, nasgor=0, gadogado=0, icecream=0; //Sebagai flag
int qty_nasiayam=0, qty_nasilele=0, qty_nasgor=0, qty_gado=0, qty_ice=0; //Sebagai counter jumlah item
int subtotal=0; //Sebagai subtotal
int payment=0; //Sebagai pembayaran dari user
int change=0; //Sebagai kembalian
do{
do{
validasi="Y";
System.out.println("\n=== Restoran Lama Saji ===");
System.out.println("1. Menu Makanan");
System.out.println("2. Payment");
System.out.println("3. Exit");
System.out.print(">> Choice : ");
try{
choice = in.nextInt();
if(choice != 1 && choice != 2 && choice != 3)
{
validasi="N";
}
}
catch(Exception e)
{
validasi="N";
in.nextLine();
}
if(validasi=="N")
{
System.out.println("   >> Wrong input\n");
}
}while(validasi=="N");

switch(choice)
{
case 1 : //1. Menu
do{
validasi="Y";
System.out.println("#PAKET MENU#");
System.out.println("1. Nasi+Ayam Bakar+Teh Manis \t [ Rp 20.000 ]");
System.out.println("2. Nasi+Lele Goreng+Teh Manis \t [ Rp 19.000 ]");
System.out.println("3. Nasi Goreng \t\t\t [ Rp 12.000 ]");
                                System.out.println("4. Gado-Gado+Aqua\t\t [ Rp 15.000 ]");
                                System.out.println("5. Ice Cream     \t\t [ Rp 13.000 ]");
System.out.println("6. Back");
System.out.print(">> Choice : ");
try{
menu_choice = in.nextInt();
if(menu_choice != 1 && menu_choice != 2 && menu_choice != 3 && menu_choice != 4 && menu_choice !=5 && menu_choice !=6)
{
validasi="N";
}
}
catch(Exception e){
validasi="N";
in.nextLine();
}
}while(validasi=="N");

switch(menu_choice)
{
case 1: //nasi ayam
nasi_ayam = 1;
do{
validasi="Y";
System.out.print(">> Quantity [1 - 10] : ");
try{
qty_nasiayam = in.nextInt();

if(qty_nasiayam < 1 || qty_nasiayam > 10)
{
validasi="N";
}
}catch(Exception e)
{
validasi="N"; in.nextLine();
}
if(validasi=="N")
{
System.out.println("   >> Wrong input");
}
}while(validasi=="N");
System.out.println("== You've ordered "+qty_nasiayam+" Nasi+Ayam Bakar+Teh Manis ==");
System.out.println("== Please go to Payment menu to pay the bill ==");
break;

case 2: //nasi lele
nasi_lele = 1;
do{
validasi="Y";
System.out.print(">> Quantity [1 - 10] : ");
try{
qty_nasilele = in.nextInt();

if(qty_nasilele < 1 || qty_nasilele > 10)
{
validasi="N";
}
}catch(Exception e)
{
validasi="N"; in.nextLine();
}
if(validasi=="N")
{
System.out.println("   >> Wrong input");
}
}while(validasi=="N");
System.out.println("== You've ordered "+qty_nasilele+" Nasi+Lele Goreng+Teh Manis ==");
System.out.println("== Please go to Payment menu to pay the bill ==");
break;

case 3: //nasi goreng
                                    nasgor = 1;
do{
validasi="Y";
System.out.print(">> Quantity [1 - 10] : ");
try{
qty_nasgor = in.nextInt();

if(qty_nasgor < 1 || qty_nasgor > 10)
{
validasi="N";
}
}catch(Exception e)
{
validasi="N"; in.nextLine();
}
if(validasi=="N")
{
System.out.println("   >> Wrong input");
}
}while(validasi=="N");
System.out.println("== You've ordered "+qty_nasgor+" Nasi Goreng ==");
System.out.println("== Please go to Payment menu to pay the bill ==");
break;
                                                
                                                case 4: //gado-gado
gadogado = 1;
do{
validasi="Y";
System.out.print(">> Quantity [1 - 10] : ");
try{
qty_gado = in.nextInt();

if(qty_gado < 1 || qty_gado > 10)
{
validasi="N";
}
}catch(Exception e)
{
validasi="N"; in.nextLine();
}
if(validasi=="N")
{
System.out.println("   >> Wrong input");
}
}while(validasi=="N");
System.out.println("== You've ordered "+qty_gado+" Gado-Gado+Aqua ==");
System.out.println("== Please go to Payment menu to pay the bill ==");
break;

                                                case 5: //Ice Cream
icecream = 1;
do{
validasi="Y";
System.out.print(">> Quantity [1 - 10] : ");
try{
qty_ice = in.nextInt();

if(qty_ice < 1 || qty_ice > 10)
{
validasi="N";
}
}catch(Exception e)
{
validasi="N"; in.nextLine();
}
if(validasi=="N")
{
System.out.println("   >> Wrong input");
}
}while(validasi=="N");
System.out.println("== You've ordered "+qty_ice+" Ice Cream ==");
System.out.println("== Please go to Payment menu to pay the bill ==");
break;
                                                
case 6: //back
break;
}


break;
case 2 : //2. Payment
System.out.println("#PAYMENT#");

if(nasi_ayam==0 && nasi_lele ==0 && nasgor==0 && gadogado==0 && icecream==0)
{
System.out.println("== You didn't order anything yet ==");
System.out.println("== Please go to Menu Makanan to order ==");
break;
}
int total_nasiayam=0, total_nasilele=0, total_nasgor=0, total_gado=0, total_ice=0;

if(nasi_ayam == 1)
{
total_nasiayam = 20000 * qty_nasiayam;
}
if(nasi_lele == 1)
{
total_nasilele = 19000 * qty_nasilele;
}
if(nasgor == 1)
{
total_nasgor = 12000 * qty_nasgor;
}
                                if(gadogado == 1)
{
total_gado = 15000 * qty_gado;
}
                                if(icecream == 1)
{
total_ice = 13000 * qty_ice;
}
subtotal = total_nasiayam + total_nasilele + total_nasgor + total_gado +total_ice;
System.out.println("==  Your orders are :  ==");
System.out.println(qty_nasiayam + " Nasi+Ayam Bakar+Teh Manis \t @Rp20.000 \t : Rp."+total_nasiayam);
System.out.println(qty_nasilele + " Nasi+Lele Goreng+Teh Manis \t @Rp19.000 \t : Rp."+total_nasilele);
System.out.println(qty_nasgor + " Nasi Goreng \t\t\t @Rp12.000 \t : Rp."+total_nasgor);
                                System.out.println(qty_gado + " Gado-Gado+Aqua \t\t @Rp15.000 \t : Rp."+total_gado);
                                System.out.println(qty_ice + " Ice Cream       \t\t @Rp13.000 \t : Rp."+total_ice);
System.out.println("==  Subtotal : Rp."+subtotal+ " ==");

do{
validasi="Y";
System.out.print("\n\n\nYour payment : ");
try{
payment = in.nextInt();
if(payment < subtotal)
{
validasi="N";
System.out.println("   >> Not enough");
}
}
catch(Exception e)
{
validasi="N";
System.out.println("   >> Wrong input");
in.nextLine();
}
}while(validasi=="N");

if(payment == subtotal)
{
System.out.println("==  Payment success! ==");
System.out.println("==  Thanks for coming :) ==");

}
else if(payment > subtotal)
{
change = payment - subtotal;
System.out.println("== Your change : Rp."+change+" ==");
System.out.println("== Payment success! ==");
System.out.println("== Thanks for coming :) ==");
}
//Reseting fields
nasi_ayam=0;
nasi_lele=0;
nasgor=0;
                                gadogado=0;
break;
case 3 : //3. Exit
System.exit(0);
break;
}

}while(true);
}
}

Ini hasil Run nya : 





Terimakasih atas perhatian nya
Wassalamu'alaikum wr. wb