package com.company;
import java.lang.annotation.ElementType;
import java.net.SocketTimeoutException;
import java.util.Scanner;
/*
* 账户菜单类
* */
public class AccountMenu {
private Scanner input=new Scanner(System.in);
protected Account account;
protected AccountMenu(){
}
protected AccountMenu(Account account){
this.account=account;
}
//显示账户主菜单
public void showMainMenu(){
System.out.println("*****************************");
System.out.println("1.存款\t2.取款\t3.查询余额\t4.转账\t5.贷款\t6.还款\t7.修改密码\t8.注销"
);
System.out.println("*************************");
System.out.println("请选择:");
int chice=input.nextInt();
switch (chice){
case 1:
//存款
deposit();
break;
case 2:
//取款
withdraw();
break;
case 3:
//查询余额
queryBalance();
break;
case 4:
//转账
transfer();
break;
case 5:
//贷款
requestLoan();
break;
case 6:
//还贷
payLoan();
break;
case 7:
//修改密码
modifyPassword();
break;
case 8:
//注销
logout();
break;
}
}
//存款
private void deposit(){
System.out.println("**********************");
System.out.println("请输入存款金额");
int money=input.nextInt();
account.deposit(money);
System.out.println("存款成功");
showMainMenu();//返回账户主菜单
}
//注销
private void logout(){
System.out.println("注销成功");
new Start().showSystemMenu();
}
//取款
private void withdraw(){
System.out.println("********************");
System.out.println("请输入取款金额");
int money=input.nextInt();
if (account.withdraw(money)){
System.out.println("提示:取款成功");
}else{
System.out.println("提示:取款失败");
}
showMainMenu();//返回主菜单
}
//查询余额
private void queryBalance(){
System.out.println("********************");
System.out.println("您的余额"+account.getBalance()+"元");
showMainMenu();
}
//转账
private void transfer(){
System.out.println("*************");
System.out.println("请输入要转入的目标账户号");
int id=input.nextInt();
System.out.println("请输入转账金额");
int money=input.nextInt();
Account destAccount =Bank.findById(id);
if (destAccount==null){
System.out.println("提示:目标账户不存在");
}else {
if (account.getBalance()<money){
System.out.println("提示:您的账户余额不足,余额为:"+account.getBalance());
}else {
account.setBalance(account.getBalance()-money);
destAccount.setBalance(destAccount.getBalance()+money);
System.out.println("提示:转账成功,您的余额为"+account.getBalance());
}
}
showMainMenu();
}
private void requestLoan(){
System.out.println("***************************");
//判断是否为可贷款账户
if (!(account instanceof Loanable)){
System.out.println("提示:此卡不可贷款");
}else {
System.out.println("请输入贷款的金额");
int money=input.nextInt();
Loanable loan= ((Loanable) account);
if (loan.requestLoan(money)){
System.out.println("提示:贷款成功,您当前的贷款总额为:"+loan.getLoan());
}else{
System.out.println("提示:贷款失败");
}
showMainMenu();
}
}
//还贷
private void payLoan(){
System.out.println("***********************8");
//判断是否为可贷款账户
if ((account instanceof Loanable)){
System.out.println("请输入还款的金额");
int money=input.nextInt();
Loanable loan=(Loanable)account;
if (loan.payLoan(money)){
System.out.println("提示:还贷成功,您当前的余额为"+account.getBalance()+"贷款总额"+loan.getLoan());
}else {
System.out.println("提示:还贷失败");
}
}else {
System.out.println("提示:此账户非贷款银行卡");
}
showMainMenu();
}
//修改密码
private void modifyPassword(){
System.out.println("********************");
System.out.println("请输入原密码");
String oldPassword=input.next();
System.out.println("请输入新密码");
String newPassword=input.next();
System.out.println("请再次输入新密码");
String rePassword=input.next();
//判断原密码是否正确
if (!oldPassword.equals(account.getPassword())){
System.out.println("提示:原密码错误");
}else {
//判断两次输入的新密码是否一致
if (!rePassword.equals(newPassword)){
System.out.println("提示:两次输入的密码不一致");
}else {
account.setPassword(newPassword);
System.out.println("修改成功,请重新登录");
new Start().showSystemMenu();//返回系统主菜单
}
}
showMainMenu();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
**********银行管理系统
共26个文件
class:9个
java:9个
xml:5个
需积分: 0 0 下载量 189 浏览量
2021-03-13
10:56:55
上传
评论
收藏 23KB ZIP 举报
温馨提示
银行管理系统
资源推荐
资源详情
资源评论
收起资源包目录
bank.zip (26个子文件)
bank
src
com
company
LoanSavingAccount.java 684B
Loanable.java 237B
LoanCreditAccount.java 665B
CreditAccount.java 489B
AccountMenu.java 6KB
Start.java 4KB
Account.java 1KB
Bank.java 1KB
SavingAccount.java 306B
out
production
bank
META-INF
bank.kotlin_module 16B
com
company
Account.class 2KB
Loanable.class 180B
AccountMenu.class 5KB
Start.class 4KB
CreditAccount.class 702B
Bank.class 1KB
SavingAccount.class 506B
LoanCreditAccount.class 763B
LoanSavingAccount.class 763B
.idea
project-template.xml 91B
description.html 97B
workspace.xml 21KB
misc.xml 411B
modules.xml 255B
encodings.xml 164B
bank.iml 437B
共 26 条
- 1
资源评论
Vk(小韩)
- 粉丝: 5
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功