Advertisement
JagadeeshUndavalli

ATM interface

Dec 8th, 2022 (edited)
308
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.61 KB | None | 0 0
  1. import java.util.*;
  2.  
  3. class Login{
  4.     static ArrayList<String> userLogin(){
  5.         Scanner in=new Scanner(System.in);
  6.         ArrayList<String> lst = new ArrayList<>();
  7.         System.out.println("Enter User ID :");
  8.         String userName=in.nextLine();
  9.         System.out.println("Enter User PIN :");
  10.         String userPIN=in.nextLine();
  11.         System.out.println("Enter your Account number :");
  12.         Atm.accno=in.nextLine();
  13.         System.out.println("====================================REGISTRATION SUCCESSFUL==========================================");
  14.         lst.add(userName);
  15.         lst.add(userPIN);
  16.         // in.close();
  17.         return lst;
  18.     }
  19. }
  20.  
  21. class Debit{
  22.     static void debitAmount(){
  23.         Scanner in=new Scanner(System.in);
  24.         System.out.println("Enter amount to withdraw :");
  25.         int withdrawAmount=in.nextInt();
  26.         if(withdrawAmount<=Atm.balance){
  27.             Atm.balance=Atm.balance-withdrawAmount;
  28.             // Atm.transactions.add(Integer.toString(withdrawAmount));
  29.             Atm.transactions.add("Withdrawn -"+withdrawAmount);
  30.             System.out.println("Amount Rs"+withdrawAmount+"/- withdrawn successfully");
  31.         }
  32.         else{
  33.             System.out.println("insufficient balance to withdraw the cash");
  34.         }
  35.         System.out.println("=========================================================================================");
  36.         // in.close();
  37.     }
  38. }
  39.  
  40. class Credit{
  41.     static void creditAmount(){
  42.         Scanner in=new Scanner(System.in);
  43.         System.out.print("Enter amount to deposit :");
  44.         int depositAmount=in.nextInt();
  45.         Atm.updatebalance(depositAmount);
  46.         // Atm.transactions.add(Integer.toString(depositAmount));
  47.         Atm.transactions.add("Deposited -"+depositAmount);
  48.         System.out.println("Amount Rs."+depositAmount+"/- deposit successful!");
  49.         System.out.println("=========================================================================================");
  50.         // in.close();
  51.     }
  52. }
  53.  
  54. class Transfer{
  55.     static void transferAmount(){
  56.         Scanner in=new Scanner(System.in);
  57.         System.out.println("Enter the receiving body:");
  58.         String receiver = in.nextLine();
  59.         System.out.println("Enter the account number of the receiving body");
  60.         int receiverAccNum =in.nextInt();
  61.         System.out.println("Enter the amount to be transferred :");
  62.         int transferAmount=in.nextInt();
  63.         if(transferAmount<=Atm.balance){
  64.             Atm.balance=Atm.balance-transferAmount;
  65.             // Atm.transactions.add(Integer.toString(transferAmount));
  66.             Atm.transactions.add("Transferred -"+transferAmount);
  67.             System.out.println("Amount Rs."+transferAmount+"/- transferred successfully");
  68.         }
  69.         else{
  70.             System.out.println("insufficient balance to transfer the cash");
  71.         }
  72.         System.out.println("=========================================================================================");
  73.         // in.close();
  74.     }
  75.  
  76. }
  77.  
  78. class Balance{
  79.     static void balanceEnquiry(){
  80.         System.out.println("The available balance is : ");
  81.         Atm.showbalance();
  82.         System.out.println("=========================================================================================");
  83.     }
  84. }
  85.  
  86. class History{
  87.     static void transactionHistory(ArrayList<String> userData){
  88.         System.out.println("Transaction History :");
  89.         int k=1;
  90.         System.out.println("User Name : "+userData.get(0));
  91.         if(Atm.transactions.size()!=0){
  92.         for(String i : Atm.transactions){
  93.             System.out.println("ID."+(k++)+" "+i);
  94.         }
  95.         }else{
  96.             System.out.println("There are no transactions");
  97.         }
  98.         System.out.println("=========================================================================================");
  99.     }
  100. }
  101.  
  102. public class Atm {
  103.     public static String name;
  104.     public static int balance=0;
  105.     public static String accno;
  106.     public static ArrayList<String> transactions=new ArrayList<>();
  107.  
  108.     static void updatebalance(int depositAmount){
  109.         balance=balance+depositAmount;
  110.     }
  111.     static void showbalance(){
  112.         System.out.println(balance);
  113.     }
  114.  
  115.     static void dashboard(ArrayList<String> arr){
  116.         Scanner in=new Scanner(System.in);
  117.         System.out.println("Choose one of the following options: ");
  118.         System.out.println("1. Deposit");
  119.         System.out.println("2. Withdraw");
  120.         System.out.println("3. Transfer");
  121.         System.out.println("4. Check balance");
  122.         System.out.println("5. Transaction History");
  123.         System.out.println("6. Exit");
  124.         System.out.print("Option -> ");
  125.         int option=in.nextInt();
  126.         switch (option) {
  127.             case 1:
  128.                 Credit.creditAmount();
  129.                 break;
  130.             case 2:
  131.                 Debit.debitAmount();
  132.                 break;
  133.             case 3:
  134.                 Transfer.transferAmount();
  135.                 break;
  136.             case 4:
  137.                 Balance.balanceEnquiry();
  138.                 break;
  139.             case 5:
  140.                 History.transactionHistory(arr);
  141.                 break;
  142.             case 6:
  143.                 in.close();
  144.                 System.exit(0);
  145.         }
  146.         dashboard(arr);
  147.     }
  148.  
  149.     public static void main(String[] args) {
  150.         System.out.printf("%n==================================== WELCOME TO ATM INTERFACE ====================================%n");
  151.         ArrayList<String> user = new ArrayList<>();
  152.         user = Login.userLogin();
  153.         Atm.dashboard(user);
  154.     }
  155. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement