Aplikasi Bilingkantin (java)




Berikut ini souce kode langsung nih cekidot
TampilTabel.java

Code:
import javax.swing.*;
import java.awt.*;
import java.sql.*;
import java.*;
import java.io.*;
import java.awt.event.*;

public class TampilTabelBiling extends JFrame {

    void KoneksiDatabase()
    {
        try
        {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            Connection con = DriverManager.getConnection("jdbc:odbc:DbAccess;uid='admin';pw='admin'");
            JOptionPane.showMessageDialog(null,"Koneksi Berhasil !!!","Report Koneksi",JOptionPane.INFORMATION_MESSAGE);
            con.close();
        }
        catch(Exception e)
        {
            System.err.println("Exception : "+e.getMessage());
        }
    }
    void komponen()
    {
        getContentPane().setBackground(Color.cyan);
        try
{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection con = DriverManager.getConnection("jdbc:odbc:DbAccess;uid='admin';pw='admin'");
    Statement statement = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY​);
    String sql = "select * from BilKafe";
    ResultSet rs = statement.executeQuery(sql);

    rs.last();


    int n = rs.getRow();
    String[] headers = {"No","No Meja","Makanan","Minuman","Rokok","Hrg Makan","Hrg Minum","Hrg Rokok","Jlh Makan","Jlh Minum","Jlh Rokok","Sub Total"};
    Object[][] data = new Object[n][12];
    int p=0;
    rs.beforeFirst();
    while(rs.next())
    {
        data[p][0] = rs.getString(1);
        data[p][1] = rs.getString(2);
        data[p][2] = rs.getString(3);
        data[p][3] = rs.getString(4);
        data[p][4] = rs.getString(5);
        data[p][5] = rs.getString(6);
        data[p][6] = rs.getString(7);
        data[p][7] = rs.getString(8);
        data[p][8] = rs.getString(9);
        data[p][9] = rs.getString(10);
        data[p][10] = rs.getString(11);
        data[p][11] = rs.getString(12);
        p++;
    }
    statement.close();
    con.close();
    JTable tableview = new JTable(data,headers);
    JScrollPane tabel = new JScrollPane(tableview);
    tabel.setPreferredSize(new Dimension(500,80));
    getContentPane().add(BorderLayout.CENTER,tabel);
    pack();
   

    setSize(900,200);
    setLocation(150,300);
    setTitle("Data Biling AMIK");
    setVisible(true);
    setAlwaysOnTop(true);
}
    catch (Exception DBException)
    {
        System.err.println("Error : " +DBException);
    }

   
    }
   
   
    public static void main(String args[])
    {
        TampilTabelBiling frame = new TampilTabelBiling();
        frame.komponen();
    }
   
}

Biling.java

Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.sql.*;
import java.text.*;
import java.util.*;

class UASBilingKantin extends JFrame {
   
    JLabel lblNomeja= new JLabel("No Meja");
    JLabel lblMenu= new JLabel("Menu Pilihan Anda");
    JLabel lblMakanan= new JLabel("Makanan");
    JLabel lblMinuman= new JLabel("Minuman");
    JLabel lblRokok= new JLabel("Rokok");
    JLabel lblHrgMakan= new JLabel("Harga");
    JLabel lblHrgMinum= new JLabel("Harga");
    JLabel lblHrgRokok= new JLabel("Harga");
    JLabel lblSubTTL= new JLabel("Sub Total");
    JLabel lblJumMkn = new JLabel("Jumlah");
    JLabel lblJumMin = new JLabel("Jumlah");
    JLabel lblJumRokok = new JLabel("Jumlah");
    JLabel lblHead = new JLabel("Kantin AMIK TI08-04");
        GregorianCalendar calendar = new GregorianCalendar();
        DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.SHORT,Locale.US);
    JLabel lblTime = new JLabel(" "+ dateFormat.format(calendar.getTime()) + "  ");
    JLabel lblInfo = new JLabel("Ade Supriono \n TI08 - 04");
   
    JTextField txtHrgMakan= new JTextField(100);
    JTextField txtHrgMinum= new JTextField(100);
    JTextField txtHrgRokok= new JTextField(100);
    JTextField txtSubTTL= new JTextField(100);
    JTextField txtJumMkn = new JTextField(40);
    JTextField txtJumMin = new JTextField(40);
    JTextField txtJumRokok = new JTextField(40);
   
    String[] Meja= {"Meja", "01", "02", "03", "04"    };
    JComboBox cbMeja = new JComboBox(Meja);
    String[] Makan= {"Pilihan", "Nasgor", "Migor", "Mie Aceh", "Bakso"    };
    JComboBox cbMakan= new JComboBox(Makan);
    String[] Minum= {"Pilihan", "Teh Botol", "Bandrek", "JUS", "TST"    };
    JComboBox cbMinum= new JComboBox(Minum);
    String[] Rokok={"Pilihan", "X-Mild", "Sampoerna", "Dji Sam Soe", "Ten Mild"    };
    JComboBox cbRokok= new JComboBox(Rokok);
   
    JButton btnHitSubTTL= new JButton("Hitung");
    JButton btnBaru= new JButton("Baru");
    JButton btnSimpan= new JButton("Simpan");
    JButton btnBatal= new JButton("Batal");
    JButton btnKeluar= new JButton("Keluar");
    JButton btnTampil= new JButton("Tampil");
   
    UASBilingKantin(){
        setTitle("Biling Kantin TI08-04");
        setSize(600,550);
        setLocation(300,100);
        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
//        setAlwaysOnTop(true);
        setForeground(new java.awt.Color(0, 0, 204));
        setResizable(false);
       
    }
   
    void Tampil(){
        getContentPane().setLayout(null);
        getContentPane().setBackground(Color.cyan);
        getContentPane().add(lblNomeja);
        lblNomeja.setBounds(30,130,80,20);
        getContentPane().add(lblMenu);
        lblMenu.setFont(new Font("",Font.BOLD,16));
        lblMenu.setBounds(220,160,200,20);
        getContentPane().add(lblMakanan);
        lblMakanan.setBounds(30,220,100,20);
        getContentPane().add(lblMinuman);
        lblMinuman.setBounds(30,250,100,20);
        getContentPane().add(lblRokok);
        lblRokok.setBounds(30,280,100,20);
        getContentPane().add(lblSubTTL);
        lblSubTTL.setBounds(200,320,100,20);
        getContentPane().add(lblHrgMakan);
        lblHrgMakan.setBounds(250,220,50,20);
        getContentPane().add(lblHrgMinum);
        lblHrgMinum.setBounds(250,250,50,20);
        getContentPane().add(lblHrgRokok);
        lblHrgRokok.setBounds(250,280,50,20);
        getContentPane().add(lblJumMkn);
        lblJumMkn.setBounds(410,220,50,20);
        getContentPane().add(lblJumMin);
        lblJumMin.setBounds(410,250,50,20);
        getContentPane().add(lblJumRokok);
        lblJumRokok.setBounds(410,280,50,20);
        getContentPane().add(lblHead);
        lblHead.setBounds(150,50,300,50);
        lblHead.setFont(new Font("", Font.BOLD,24));
        getContentPane().add(lblTime);
        lblTime.setForeground(Color.red);
        lblTime.setFont(new Font("Verdana",Font.BOLD,14));
        lblTime.setBounds(400,10,400,30);
        getContentPane().add(lblInfo);
        lblInfo.setBounds(370,470,250,40);
        lblInfo.setFont(new Font("",Font.BOLD,15));
       
        getContentPane().add(txtHrgMakan);
        txtHrgMakan.setBounds(300,220,100,20);
        getContentPane().add(txtHrgMinum);
        txtHrgMinum.setBounds(300,250,100,20);
        getContentPane().add(txtHrgRokok);
        txtHrgRokok.setBounds(300,280,100,20);
        getContentPane().add(txtSubTTL);
        txtSubTTL.setBounds(300,320,100,20);
        getContentPane().add(txtJumMkn);
        txtJumMkn.setBounds(460,220,50,20);
        getContentPane().add(txtJumMin);
        txtJumMin.setBounds(460,250,50,20);
        getContentPane().add(txtJumRokok);
        txtJumRokok.setBounds(460,280,50,20);
       
        getContentPane().add(cbMeja);
        cbMeja.setBounds(90,130,70,20);
        getContentPane().add(cbMakan);
        cbMakan.setBounds(140,220,100,20);
        getContentPane().add(cbMinum);
        cbMinum.setBounds(140,250,100,20);
        getContentPane().add(cbRokok);
        cbRokok.setBounds(140,280,100,20);
       
        getContentPane().add(btnHitSubTTL);
        btnHitSubTTL.setBounds(410,320,80,20);
        getContentPane().add(btnBaru);
        btnBaru.setBounds(50,380,100,20);
        getContentPane().add(btnSimpan);
        btnSimpan.setBounds(170,380,100,20);
        getContentPane().add(btnBatal);
        btnBatal.setBounds(100,410,100,20);
        getContentPane().add(btnKeluar);
        btnKeluar.setBounds(240,410,100,20);
        getContentPane().add(btnTampil);
        btnTampil.setBounds(290,380,100,20);

        setVisible(true);
    }
   
void perintah()     {
    cbMakan.addItemListener(new ItemListener(){
    public void itemStateChanged(ItemEvent ie){
        String str=(String)cbMakan.getSelectedItem();
        int item=cbMakan.getSelectedIndex();
        int hrg;
        String strhrg;
        if(item==1){
            hrg=9000;
            strhrg= Integer.toString(hrg);
                txtHrgMakan.setText(strhrg);
        }else if(item==2){
            hrg=7000;
            strhrg= Integer.toString(hrg);
                txtHrgMakan.setText(strhrg);

        }else if(item==3){
            hrg=8000;
            strhrg= Integer.toString(hrg);
                txtHrgMakan.setText(strhrg);

        }else if(item==4){
            hrg=6000;
            strhrg= Integer.toString(hrg);
                txtHrgMakan.setText(strhrg);

        }
       
    }
});       

cbMinum.addItemListener(new ItemListener(){
    public void itemStateChanged(ItemEvent ie){
        String str=(String)cbMinum.getSelectedItem();
        int item=cbMinum.getSelectedIndex();
        int hrg;
        String strhrg;
        if(item==1){
            hrg=3000;
            strhrg= Integer.toString(hrg);
                txtHrgMinum.setText(strhrg);
        }else if(item==2){
            hrg=4000;
            strhrg= Integer.toString(hrg);
                txtHrgMinum.setText(strhrg);

        }else if(item==3){
            hrg=6000;
            strhrg= Integer.toString(hrg);
                txtHrgMinum.setText(strhrg);

        }else if(item==4){
            hrg=5000;
            strhrg= Integer.toString(hrg);
                txtHrgMinum.setText(strhrg);

        }
       
    }
});   

cbRokok.addItemListener(new ItemListener(){
    public void itemStateChanged(ItemEvent ie){
        String str=(String)cbRokok.getSelectedItem();
        int item=cbRokok.getSelectedIndex();
        int hrg;
        String strhrg;
        if(item==1){
            hrg=8000;
            strhrg= Integer.toString(hrg);
                txtHrgRokok.setText(strhrg);
        }else if(item==2){
            hrg=11000;
            strhrg= Integer.toString(hrg);
                txtHrgRokok.setText(strhrg);

        }else if(item==3){
            hrg=10000;
            strhrg= Integer.toString(hrg);
                txtHrgRokok.setText(strhrg);

        }else if(item==4){
            hrg=8000;
            strhrg= Integer.toString(hrg);
                txtHrgRokok.setText(strhrg);

        }
       
    }
});

btnTampil.addActionListener(new java.awt.event.ActionListener(){
public void actionPerformed(ActionEvent e){
   
            TampilTabelBiling tampil = new TampilTabelBiling();
            tampil.komponen();

   
    }
});

btnHitSubTTL.addActionListener(new java.awt.event.ActionListener(){
    public void actionPerformed(ActionEvent event){
       
        try{
                    String mknString, minumString, rokokString, hslString, strJumRokok, strJumMkn, strJumMinum;
                     int item=cbRokok.getSelectedIndex();   
                    mknString = txtHrgMakan.getText();
                    minumString= txtHrgMinum.getText();
                    rokokString = txtHrgRokok.getText();
                    strJumMinum = txtJumMin.getText();
                    strJumMkn = txtJumMkn.getText();
                    strJumRokok = txtJumRokok.getText();
                    int jummkn = Integer.parseInt(strJumMkn);
                    int jumminum = Integer.parseInt(strJumMinum);
                    int jumrokok = Integer.parseInt(strJumRokok);
                    int mkn = Integer.parseInt(mknString);
                    int minum = Integer.parseInt(minumString);
                    int rokok = Integer.parseInt(rokokString);
                    int  hasil = (mkn * jummkn) + (minum * jumminum) + (rokok * jumrokok);
                    hslString = Integer.toString(hasil);
                    txtSubTTL.setText(hslString);
        }
        catch(Exception e)
{
                JOptionPane.showMessageDialog(null,
                "Masih Ada Data yang Belum di Isi","Konfirmasi",JOptionPane.INFORMATION_MESSAGE);
}

    }
});

btnKeluar.addActionListener(new java.awt.event.ActionListener(){
    public void actionPerformed(ActionEvent e){
        System.exit(0);
    }   
});
btnBatal.addActionListener(new java.awt.event.ActionListener(){
    public void actionPerformed(ActionEvent e){
    txtHrgMakan.setText("");
    txtHrgMinum.setText("");
    txtHrgRokok.setText("");
    txtJumMkn.setText("");
    txtJumMin.setText("");
    txtJumRokok.setText("");
    txtSubTTL.setText("");
       
       
    }   
});
btnBaru.addActionListener(new java.awt.event.ActionListener(){
    public void actionPerformed(ActionEvent e){
   
    txtHrgMakan.setText("");
    txtHrgMinum.setText("");
    txtHrgRokok.setText("");
    txtJumMkn.setText("");
    txtJumMin.setText("");
    txtJumRokok.setText("");
    txtSubTTL.setText("");
    }   
});

btnSimpan.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent event){
        try{
       
        String NMeja, NMakan, NMinum, nmRokok, strhrgMkn, strhrgMinum, strhrgRokok, strjlhMkn, strjlhMinum, strjlhRokok, strTotal;
        NMeja=(String)
            cbMeja.getSelectedItem();
        NMakan=(String)
            cbMakan.getSelectedItem();
        NMinum=(String)
            cbMinum.getSelectedItem();
        nmRokok=(String)
            cbRokok.getSelectedItem();
        strhrgMkn= txtHrgMakan.getText();
        strhrgMinum= txtHrgMinum.getText();
        strhrgRokok= txtHrgRokok.getText();
        strjlhMkn= txtJumMkn.getText();
        strjlhMinum= txtJumMin.getText();
        strjlhRokok= txtJumRokok.getText();
        strTotal= txtSubTTL.getText();
       
        int hrgMkn=Integer.parseInt(strhrgMkn);
        int hrgMinum=Integer.parseInt(strhrgMinum);
        int hrgRokok=Integer.parseInt(strhrgRokok);
        int jlhMkn=Integer.parseInt(strjlhMkn);
        int jlhMinum=Integer.parseInt(strjlhMinum);
        int jlhRokok=Integer.parseInt(strjlhRokok);
        int Total=Integer.parseInt(strTotal);
   
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:DbAccess;uid='admin';pw='admin'");
            Statement statement = con.createStatement();
            String sql="insert into BilKafe(NoMeja,Makanan,Minuman,Rokok,Hrg_Mkn,Hrg_minum,Hrg_Rokok,JlhMkn,JlhMinum​,JlhRokok,SubTotal)values('"+NMeja+"','"+NMakan+"','"+NMinum+"','"+nmRokok+"','"+hrgMkn+"','"+hrgMinum+"','"+hrgRokok+"','"+jlhMkn+"','"+jlhMinum+"','"+jlhRokok+"','"+Total+"')";
    statement.executeUpdate(sql);
    statement.close();
    con.close();
   
                JOptionPane.showMessageDialog(null,
                "Data Sudah di Simpan","Konfirmasi",JOptionPane.INFORMATION_MESSAGE);
    txtHrgMakan.setText("");
    txtHrgMinum.setText("");
    txtHrgRokok.setText("");
    txtJumMkn.setText("");
    txtJumMin.setText("");
    txtJumRokok.setText("");
    txtJumMkn.requestFocus();
        }
        catch(Exception e)
{
                JOptionPane.showMessageDialog(null,
                "Masih Ada Data yang Belum di Isi","Konfirmasi",JOptionPane.INFORMATION_MESSAGE);
}

    }
});


}


        public static void main(String args[]){
        UASBilingKantin ap=new UASBilingKantin();
        ap.Tampil();
        ap.perintah();
    }
}


Mudah"an Bermanfaat buat tmn