package com.BikkadIT.BankApp.
model;
public class Account {
private int accNo;
private String accName;
private String accAddr;
private String accPan;
private double accBal;
public int getAccNo() {
return accNo;
}
public void setAccNo(int accNo) {
this.accNo = accNo;
}
public String getAccName() {
return accName;
}
public void setAccName(String accName) {
this.accName = accName;
}
public String getAccAddr() {
return accAddr;
}
public void setAccAddr(String accAddr) {
this.accAddr = accAddr;
}
public String getAccPan() {
return accPan;
}
public void setAccPan(String accPan) {
this.accPan = accPan;
}
public double getAccBal() {
return accBal;
}
public void setAccBal(double accBal) {
this.accBal = accBal;
}
@Override
public String toString() {
return "Account [accNo=" + accNo + ", accName=" + accName + ",
accAddr=" + accAddr + ", accPan=" + accPan
+ ", accBal=" + accBal + "]";
}
package com.BikkadIT.BankApp.controller;
import java.util.Scanner;
import com.BikkadIT.BankApp.service.BankServiceImpl;
public class BankController {
public static void main(String[] args) {
BankServiceImpl bankServiceImpl = new BankServiceImpl();
boolean b = true;
while (b) {
System.out.println("Press 1 for account Creation");
System.out.println("Press 2 for view Acc");
System.out.println("Press 3 for withdraw money");
System.out.println("Press 4 for deposit money ");
System.out.println("Press 5 for update Acc");
System.out.println("Press 6 for EXIT");
Scanner sc = new Scanner(System.in);
int ch = sc.nextInt();
switch (ch) {
case 1:
bankServiceImpl.createAcc();
break;
case 2:
bankServiceImpl.viewAcc();
break;
case 3:
bankServiceImpl.withdraw();
break;
case 4:
bankServiceImpl.deposit();
break;
case 5:
bankServiceImpl.updateAcc();
break;
case 6:
b = false;
break;
default:
System.out.println("Invalid Choice");
}
}
System.out.println("Thank you for using bank services");
}
}
package com.BikkadIT.BankApp.service;
public interface Bank {
public abstract void createAcc();
void viewAcc();
void withdraw();
void deposit();
void updateAcc();
}
package com.BikkadIT.BankApp.service;
import java.util.Scanner;
import com.BikkadIT.BankApp.model.Account;
public class BankServiceImpl implements Bank {
Account acc = new Account();
Scanner sc = new Scanner(System.in);
@Override
public void createAcc() {
System.out.println("Enter Your Account Number");
int userAcc = sc.nextInt();
acc.setAccNo(userAcc);
System.out.println("Enter Your Name");
String userName = sc.next();
acc.setAccName(userName);
System.out.println("Enter Your Address");
String userAddr = sc.next();
acc.setAccAddr(userAddr);
System.out.println("Enter Your Pan No");
String userPan = sc.next();
acc.setAccPan(userPan);
System.out.println("Enter Initial Balance");
double userBal = sc.nextDouble();
acc.setAccBal(userBal);
System.out.println("Account Created Successfully");
}
@Override
public void viewAcc() {
System.out.println("Account Details by to String method");
System.out.println(acc.toString());
System.out.println("Account Details By Getter");
System.out.println(acc.getAccNo());
System.out.println(acc.getAccName());
System.out.println(acc.getAccAddr());
System.out.println(acc.getAccPan());
System.out.println(acc.getAccBal());
}
@Override
public void withdraw() {
System.out.println("Enter accountNo to withdraw money");
int userAcc = sc.nextInt();
if (userAcc == acc.getAccNo()) {
System.out.println("Enter Amount that you want to withdraw");
double userAmount = sc.nextDouble();
if (userAmount <= acc.getAccBal()) {
double remBal = acc.getAccBal() - userAmount;
acc.setAccBal(remBal);
System.out.println("Withdraw SUccessful.Remaining Bal is ="
+ acc.getAccBal());
} else {
System.out.println("InSufficient Fund");
}
} else {
System.out.println("Wrong account details.Please enter correct
account Details");
}
@Override
public void deposit() {
System.out.println("Enter accountNo to Deposit money");
int userAcc = sc.nextInt();
if (userAcc == acc.getAccNo()) {
System.out.println("Enter Amount that you want to Deposit");
double userAmount = sc.nextDouble();
double creditBal = acc.getAccBal() + userAmount;
acc.setAccBal(creditBal);
System.out.println("Deposit SUccessful.Avl Bal is =" +
acc.getAccBal());
} else
{
System.out.println("Wrong account details.Please enter correct
account Details");
}
@Override
public void updateAcc() {
boolean b = true;
while (b) {
System.out.println("Press 1 for update Name");
System.out.println("Press 2 for update Address");
System.out.println("Press 3 for update Pan NO");
System.out.println("Press 4 for EXIT");
int ch = sc.nextInt();
switch (ch) {
case 1:
System.out.println("Enter name that you want to update");
String userUpdatedName = sc.next();
acc.setAccName(userUpdatedName);
System.out.println("Name Updated Successfully Updated name
is =" + acc.getAccName());
break;
case 2:
System.out.println("Enter address that you want ot
update");
String userUpdatedAddr = sc.next();
acc.setAccAddr(userUpdatedAddr);
System.out.println("Address Updated Successfully Updated
Address is =" + acc.getAccAddr());
break;
case 3:
System.out.println("Enter Panno that you want ot update");
String userUpdatedPan = sc.next();
acc.setAccPan(userUpdatedPan);
System.out.println("PanNo Updated Successfully Updated Pan
is =" + acc.getAccPan());
break;
case 4:
b = false;
break;
default:
System.out.println("Invalid input");
}
}
}