ricky_181011400731_uas

 

UAS PEMROGAMAN


APLIKASI MEMBER FITNESS



NAMA : RICKY NUR OKTAVIANTO

NIM : 1810111400731

 

 

Mengembangkan program UTS sebelumnya, dengan menambahkan 2 tabel didalam databasenya dan action untuk mengelola tabel tersebut. Total tabel jadi ada 3.

 

Pertama, copy project uts sebelumnya





 

Rename dengan nama ricky_181011400731_uas, lalu klik copy

 







 

Jadinya akan seperti ini





 

Kedua, tambahkan table data_pembayaran pada database mysql

 



 

Ikuti langkah dibawah



 

Lalu klik simpan

 

Sekarang masuk ke netbeans , lalu edit desain seperti dibawah ini



 



 

Edit variable table payment



 

Edit variable healt info



 

Edit nama variable textfield id payment



 

 

Edit nama variable textfield total bayar



 

 

Edit nama variable textfield total bayar



 

Edit nama variable jbutton simpan payment



 

Edit nama variable jbutton hapus payment

 

 



 





Sampai disini saya berubah pikiran, ingin menghapus search payment button karna tidak terlalu penting. Maka hasil desain nya seperti ini



Edit nama variable jbutton edit payment

 



 

Edit nama variable textfield id healt

 



Edit nama variable textfield riwayat penyakit



 

Edit nama variable textfield informasi alergi



Edit nama variable jbutton simpan healt



Edit nama variable jbutton hapus healt



Edit nama variable jbutton edit healt 




 

Sekarang, masuk ke database db_fitness , tambahkan table data_healt dengan 3 kolom



 

Lalu ikuti langkah dibawah , lalu klik simpan



 

Maaf, ada sedikit kesalahan, pada label ID di pembarayan, ganti menjadi no invoice Menjadi seperti ini



 

 

Tambahkan private void untuk payment plan

Copy code berikut

private void payment(){

        ricky_paymentplan.addItem("lunas");

        ricky_paymentplan.addItem("1 bulan");

        ricky_paymentplan.addItem("3 bulan");

        ricky_paymentplan.addItem("6 bulan");

        ricky_paymentplan.setSelectedIndex(-1);

}

 

 



 

sekarang buat tombol simpan payment berfungsi

try{

            stat.executeUpdate("insert into data_pembayaran values ("

            +"'"+ricky_idpayment.getText()+"',"

            +"'"+ricky_bayar.getText()+"',"

            +"'"+ricky_paymentplan.getSelectedItem()+"')");

            kosongkan();

            JOptionPane.showMessageDialog(null, "Berhasil Menyimpan Data");

            } catch (Exception e){

                    JOptionPane.showMessageDialog(null, "Perintah SALAH ! "+e);

        }

 



 

Tambahkan konstruktor paymentplan();



Sekarang run file, isidata pembayaran dan cek database



Cek database



Berhasil

 

 

 

 

 

 

 

 

Sekarang , buat tombol hapus payment berfungsi

 

Masukan kode berikut ke tombol hapus payment

int ok=JOptionPane.showConfirmDialog(null,"Anda yakin ingin menghapus record data ini ?",

"Konfirmasi",JOptionPane.YES_NO_CANCEL_OPTION);

if (ok==0)

{

try

{

String sql="delete from data_pembayaran where no_invoice='"+ricky_idpayment.getText()+"'";

PreparedStatement st=con.prepareStatement(sql);

st.executeUpdate();

JOptionPane.showMessageDialog(null, "Data Berhasil dihapus");

}

catch (Exception e)

{

JOptionPane.showMessageDialog(null, "Penghapusan data gagal");

}

}

 



 

Sekarang run file dan test hapus data invoce 21





Cek database



 

Berhasil

 

Sekarang kita buat data pembayaran muncul di table payment info.

tambahkan public tabel1();

lalu Copy kode berikut

private void tabel1(){

    DefaultTableModel t= new DefaultTableModel();

    t.addColumn("No_Invoice");

    t.addColumn("bayar");

    t.addColumn("payment plan");

    ricky_tabelpayment.setModel(t); try{ res=stat.executeQuery("select * from data_pembayaran");

    while (res.next()) {

    t.addRow(new Object[]{ res.getString("no_invoice"),

    res.getString("bayar"),

    res.getString("payment_plan"),

});

}

}catch (Exception e) {

JOptionPane.showMessageDialog(rootPane, e);

}

}

 



 

Sekarang run file



 

Berhasil, data sudah muncul di table payment info

 

 

Sekarang , memindahkan data daritabel payment info ke text field data pembayaran

Klik kanan pada table payment, ikuti langkah dibawah



 

Lalu masukan kode berikut

int i = ricky_tabelpayment.getSelectedRow();

if(i==-1){

return;

}

String code = (String)ricky_tabelpayment.getValueAt(i,0);

String code1 = (String)ricky_tabelpayment.getValueAt(i,1);

String code2 = (String)ricky_tabelpayment.getValueAt(i,2);

ricky_idpayment.setText(code);

     ricky_bayar.setText(code1);

     ricky_paymentplan.setSelectedItem(code2);

 



 

Sekarang, run file



 

Berhasil, ketika data di klik, muncul di textfield

 

Sekarang buat tombol edit payment berfungsi

Copykan kode berikut ke  tombol edit payment

int ok=JOptionPane.showConfirmDialog(null,"Apakah Yakin Untuk Update Record ini???","Confirmation",JOptionPane.YES_NO_OPTION);

try

{

String sql="update data_pembayaran set no_invoice=?,bayar=?,payment_plan=? where no_invoice='"+ricky_idpayment.getText()+"'";

PreparedStatement st=con.prepareStatement(sql);

if(ok==0)

{

try

{

st.setString(1,ricky_idpayment.getText());

st.setString(2,ricky_bayar.getText());

st.setString(3, (String) ricky_paymentplan.getSelectedItem());

st.executeUpdate();

JOptionPane.showMessageDialog(null,"Update Data Sukses");

}catch (Exception e)

{

JOptionPane.showMessageDialog(null, "Update Data Gagal");

}

}

}catch (Exception e){}



Sekarang run file, klik invoice 12 dan edit bayar menjadi 100000



 

Cek database



 

Berhasil

 

Sekarang, buat public tabel2();

Lalu tambahklan private void tabel2. Copy code berikut

 

private void tabel2(){

    DefaultTableModel t= new DefaultTableModel();

    t.addColumn("ID");

    t.addColumn("riwayat penyakit");

    t.addColumn("informasi alergi");

    ricky_tabelhealt.setModel(t); try{ res=stat.executeQuery("select * from data_healt");

    while (res.next()) {

    t.addRow(new Object[]{ res.getString("ID"),

    res.getString("riwayat_penyakit"),

    res.getString("informasi_alergi"),

});

}

}catch (Exception e) {

JOptionPane.showMessageDialog(rootPane, e);

}

}

 

 



 

Sekarang run file dan tambahkan data



Cek database

 



 

Berhasil

 

Sekarang buat tombol hapus healt berfungsi

Masukan kode berikut ke tombol hapus healt

int ok=JOptionPane.showConfirmDialog(null,"Anda yakin ingin menghapus record data ini ?",

"Konfirmasi",JOptionPane.YES_NO_CANCEL_OPTION);

if (ok==0)

{

try

{

String sql="delete from data_healt where ID='"+ricky_idhealt.getText()+"'";

PreparedStatement st=con.prepareStatement(sql);

st.executeUpdate();

JOptionPane.showMessageDialog(null, "Data Berhasil dihapus");

}

catch (Exception e)

{

JOptionPane.showMessageDialog(null, "Penghapusan data gagal");

}

}

    }



Sekarang run file dan isi id 12 lalu klik hapus healt



 

Cek database



Berhasil, id 12 terhapus

 

Sekarang memindahkan data dari table ke text field dengan event mouse click

Ikuti langkah dibawah



 

Lalu masukan kode berikut

int i = ricky_tabelpayment.getSelectedRow();

if(i==-1){

return;

}

String code = (String)ricky_tabelpayment.getValueAt(i,0);

String code1 = (String)ricky_tabelpayment.getValueAt(i,1);

String code2 = (String)ricky_tabelpayment.getValueAt(i,2);

ricky_idpayment.setText(code);

     ricky_bayar.setText(code1);

     ricky_paymentplan.setSelectedItem(code2);

 

sekarang run file, dan klik datanya



Berhasil

 

Sekarang membuat tombol edit healt berfungsi

 

Masukan kode berikut ke tombol edit healt

int ok=JOptionPane.showConfirmDialog(null,"Apakah Yakin Untuk Update Record ini???","Confirmation",JOptionPane.YES_NO_OPTION);

try

{

String sql="update data_healt set ID=?,riwayat_penyakit=?,informasi_alergi=? where ID='"+ricky_idhealt.getText()+"'";

PreparedStatement st=con.prepareStatement(sql);

if(ok==0)

{

try

{

st.setString(1,ricky_idhealt.getText());

st.setString(2,ricky_riwayathealth.getText());

st.setString(3, (String) ricky_alergihealt.getText());

st.executeUpdate();

JOptionPane.showMessageDialog(null,"Update Data Sukses");

}catch (Exception e)

{

JOptionPane.showMessageDialog(null, "Update Data Gagal");

}

}

}catch (Exception e){}

    }

 

Run file dan edit id 12 , ganti folio menjadi campak rubella



 

Cek database



 

Berhasil

 

Sekarang

 

Buat tombol refresh berfungsi untuk semua table

Tambahkan kode berikut

{

    DefaultTableModel t= new DefaultTableModel();

    t.addColumn("No Invoice");

    t.addColumn("bayar");

    t.addColumn("payment plan");

    ricky_tabelpayment.setModel(t); try{ res=stat.executeQuery("select * from data_pembayaran");

while (res.next()) {

    t.addRow(new Object[]{ res.getString("no_invoice"),

    res.getString("bayar"),

    res.getString("payment_plan"),

});

}

}catch (Exception e) {

JOptionPane.showMessageDialog(rootPane, e);

}

}

       

       

       

         {

    DefaultTableModel t= new DefaultTableModel();

    t.addColumn("ID");

    t.addColumn("riwayat penyakit");

    t.addColumn("informasi alergi");

    ricky_tabelhealt.setModel(t); try{ res=stat.executeQuery("select * from data_healt");

while (res.next()) {

    t.addRow(new Object[]{ res.getString("ID"),

    res.getString("riwayat_penyakit"),

    res.getString("informasi_alergi"),

});

}

}catch (Exception e) {

JOptionPane.showMessageDialog(rootPane, e);

}

}

 

Sekarang buat tombol clear berfungsi di semua table

 

Masukan kode berikut kedalam tombol clear

ricky_id.setText("");

     ricky_nama.setText("");

     ricky_identitas.setText("");

     ricky_kontak.setText("");

     ricky_alamat.setText("");

     ricky_email.setText("");

     ricky_jk.setSelectedIndex(-1);

     ricky_tinggi.setText("");

     ricky_berat.setText("");

     ricky_kategori.setSelectedIndex(-1);

     ricky_idpayment.setText("");

     ricky_riwayathealth.setText("");

     ricky_alergihealt.setText("");

      ricky_idhealt.setText("");

     ricky_bayar.setText("");

     ricky_paymentplan.setSelectedIndex(-1);

     ricky_id.requestFocus();

 



 

Run file nya, klik data di semua table tsb

 



Lalu klik clear data

Berhasil

 

 

Sekian, wassalamualaikum wr.w

Komentar