mbah_bejo

DatabaseBank

Nov 24th, 2020
480
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /**
  2.  * Class ini menyimpan data-data akun bank yang telah dibuat
  3.  * Kamu bisa menambahkannya lagi. tiap akun dibuat berdasarkan
  4.  * Class Account. Tiap transaksi juga dicatat disini
  5.  *
  6.  * Author thomasdwi.a
  7.  * Version 20201124
  8.  */
  9. public class DatabaseBank {
  10.     private Account[] accounts;
  11.     Account account;
  12.  
  13.     /**
  14.      * contruct akun-akun yang akan di taruh di database bank jago
  15.      */
  16.     public DatabaseBank()
  17.     {
  18.         accounts = new Account[4];
  19.         accounts[ 0 ] = new Account( 12345, 54321, 10000000);
  20.         accounts[ 1 ] = new Account( 98765, 56789, 200000);
  21.         accounts[ 2 ] = new Account( 11111, 99999, 2500000);
  22.         accounts[ 3 ] = new Account( 69696, 96969, 10000);
  23.     }
  24.  
  25.     /**
  26.      * Method ini bertujuan untuk mencari akun yang di inginkan
  27.      * dari database yang disediakan
  28.      * @param akun yang dicari
  29.      * @return akun yang telah ditemukan,jika tidak ada maka return null
  30.      */
  31.     private Account getAkun(int akun)
  32.     {
  33.         // searching akun yang dicari
  34.         for ( Account account : accounts)
  35.         {
  36.             // jika ketemu this.account akan menyimpan
  37.             // akun yang telah ditemukan
  38.             if(akun == account.NomorAkun()){
  39.                 return account;
  40.             }
  41.         }
  42.         // akun tidak ditemukan
  43.         return null;
  44.     }
  45.  
  46.     /**
  47.      * method ini dipakai saat memasukkan id dan pin ke atm
  48.      * memeriksa id dan pin yang digunakan terdapat
  49.      * di atabase
  50.      *
  51.      * @param akun akun yang dimasukkan user
  52.      * @param userPIN pin yang dimasukkan user
  53.      * @return true jika akun dan pin benar, dan sebaliknya
  54.      */
  55.     public boolean cekAkun(int akun, int userPIN)
  56.     {
  57.         //mengecek akun yang diinput
  58.         Account akunUser = getAkun(akun);
  59.  
  60.         // jika akun tidak null, berikutnya check PIN-nya
  61.         //return true jika benar, dan sebaliknya
  62.         if(akunUser != null) return akunUser.cekPIN(userPIN);
  63.         else return false;
  64.     }
  65.  
  66.     /**
  67.      * method ini mengambil total saldo pada akun
  68.      * @return nilai saldo pada akun
  69.      */
  70.     public int Saldo(int akun)
  71.     {
  72.         return getAkun(akun).TotalSaldo();
  73.     }
  74.  
  75.  
  76.     /**
  77.      * method mencatat nomimal transaksi pada akun
  78.      * @param nominal transaksi yang terjadi
  79.      */
  80.     public void transaksi(int akun, int nominal)
  81.     {
  82.         getAkun(akun).TransaksiSaldo(nominal);
  83.     }
  84. }
RAW Paste Data