document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. public class Deposit extends Transaction
  2. {
  3.     private double amount;
  4.     private Keypad keypad;
  5.     private DepositSlot depositSlot;
  6.     private final static int CANCELED = 0;
  7.    
  8.     public Deposit(int userAccountNumber, Screen atmScreen, BankDatabase atmBankDatabase, Keypad atmKeypad, DepositSlot atmDepositSlot)
  9.     {
  10.         super (userAccountNumber, atmScreen, atmBankDatabase);
  11.         keypad = atmKeypad;
  12.         depositSlot = atmDepositSlot;
  13.     }
  14.    
  15.     @Override
  16.     public void execute()
  17.     {
  18.         BankDatabase bankDatabase = getBankDatabase();
  19.         Screen screen = getScreen();
  20.         amount = promptForDepositAmount();
  21.        
  22.         if (amount != CANCELED)
  23.         {
  24.             screen.displayMessage("\\nSilahkan masukan isi dari envelope deposito anda  ");
  25.             screen.displayRupiahAmount(amount);
  26.             screen.displayMessageLine(".");
  27.            
  28.             boolean envelopeReceived = depositSlot.isEnvelopeReceived();
  29.            
  30.             if (envelopeReceived)
  31.             {
  32.                 screen.displayMessageLine("\\nEnvelope anda telah " + "diterima.\\nNOTE: Uang yang didepositokan tidak akan " + "dapat digunakan sampai kita memverifikasi jumlah dari " + "uang anda.");
  33.                 bankDatabase.credit(getAccountNumber(), amount);
  34.             }
  35.             else
  36.             {
  37.                 screen.displayMessageLine("\\nAnda tidak memasukkan " + "envelope, sehingga ATM membatalkan transaksi anda.");
  38.             }
  39.         }
  40.     }
  41.    
  42.     private double promptForDepositAmount()
  43.     {
  44.         Screen screen = getScreen();
  45.         screen.displayMessage("\\nSilahkan masukan jumlah deposit anda dalam " + "RUPIAH (atau 0 untuk membatalkan): ");
  46.         int input = keypad.getInput();
  47.        
  48.         if (input == CANCELED)
  49.         return CANCELED;
  50.         else
  51.         {
  52.             return (double) input;
  53.         }
  54.     }
  55. }
');