package com.etc;
import java.io.IOException;
public class BankUi {
private Bank bank;
// 相当于,写银行界面的时候,就确定是哪个银行的界面
public BankUi(String bankName) {
bank = new Bank(bankName);
}
// ----------得到输入-------------
public String input() {
byte[] buf = new byte[50];
try {
System.in.read(buf);
} catch (IOException e) {
e.printStackTrace();
}
return new String(buf).trim();
}
// -----------主要流程---------------
public void process() {
while (true) {
System.out.println("欢迎使用" + bank.getBankName() + "的系统");
System.out.println("----------请选择:1.管理员登录,2.用户登录,3.退出-----------");
String op = input();
if ("1".equals(op)) {
// --------------------------管理员登录-----------------------------------
System.out.println("-----------管理员登录-------------");
System.out.println("请输入管理员名");
String adminName = input();
System.out.println("请输入管理员密码");
String adminPassword = input();
Admin a = bank.findAdminByLogin(new Admin(adminName, adminPassword));
if (a != null) {
System.out.println("管理员" + a.getAdminName() + "登录成功");
while (true) {
System.out.println("请选择操作:1.查看用户信息 2.修改用户信息 3.增加用户 4.删除用户 5.返回上一级");
String op1 = input();
// -----------查看用户信息---------------
if ("1".equals(op1)) {
bank.showCustomerByAdmin();
// ----------修改用户信息---------------
} else if ("2".equals(op1)) {
System.out.println("请输入要修改的用户名");
String oldUserName = input();
System.out.println("请输入要修改的用户的密码");
String oldUserPassword = input();
Customer b = bank.findCusByLogin(new Customer(oldUserName, oldUserPassword));
if (b == null) {
System.out.println("该用户不存在");
} else {
System.out.println("输入新的用户名");
String newUserName1 = input();
System.out.println("再次输入新的用户名");
String newUserName2 = input();
System.out.println("输入新的密码");
String newUserPassword1 = input();
System.out.println("再次输入新的密码");
String newUserPassword2 = input();
System.out.println("请输入新的余额");
String temp = input();
int newMoney = Integer.parseInt(temp);
System.out.println("请输入新的联系方式");
String newTel = input();
if (!newUserName1.equals(newUserName2) || !newUserPassword1.equals(newUserPassword2)) {
System.out.println("两次输入的用户名或密码不同,请重输");
} else {
boolean f = bank.modifyCustomerByAdmin(new Customer(oldUserName, oldUserPassword),
new Customer(newUserName2, newUserPassword2, newMoney, newTel));
if (f) {
System.out.println("修改成功");
}
}
}
// -------------添加用户--------------------
} else if ("3".equals(op1)) {
System.out.println("请输入用户名");
String userName = input();
System.out.println("请输入用户密码");
String userPassword = input();
System.out.println("请输入余额");
String temp = input();
int money = Integer.parseInt(temp);
System.out.println("请输入联系方式");
String tel = input();
int d = bank.addCustomerByAdmin(new Customer(userName, userPassword, money, tel));
if (d == 1) {
System.out.println("添加成功");
} else if (d == -1) {
System.out.println("该用户已存在,添加失败");
} else if (d == 0) {
System.out.println("添加失败");
}
// ------------删除用户------------------
} else if ("4".equals(op1)) {
System.out.println("请输入要删除的用户名");
String userName = input();
int e = bank.deleteNameByAdmin(new Customer(userName));
if (e == 1) {
System.out.println("删除成功");
} else if (e == -1) {
System.out.println("该用户还有余额,删除失败");
} else if (e == 0) {
System.out.println("该用户不存在,删除失败");
}
// -----------返回上一级-----------------
} else if ("5".equals(op1)) {
System.out.println("返回上一级");
break;
}
}
} else {
System.out.println("登录失败");
}
// --------------------------用户登录-----------------------------------
} else if ("2".equals(op)) {
System.out.println("-----------用户登录-------------");
System.out.println("请输入用户名");
String userName = input();
System.out.println("请输入密码");
String userPassword = input();
Customer c = bank.findCusByLogin(new Customer(userName, userPassword));
if (c != null) {
System.out.println("用户" + c.getUserName() + "登录成功");
while (true) {
System.out.println("请选择操作:1.存钱 2.取钱 3.修改密码 4.显示余额 5.返回上一级");
String op2 = input();
// ----------------存钱-------------------
if ("1".equals(op2)) {
System.out.println("请输入要存的金额");
String temp = input();
int money = Integer.parseInt(temp);
bank.inMoneyByCus(new Customer(userName, userPassword, money));
System.out.println("您现在卡上有金额"+c.getMoney());
// ----------------取钱-----------------------
} else if ("2".equals(op2)) {
System.out.println("请输入要取的金额");
String temp = input();
int money = Integer.parseInt(temp);
bank.outMoneyByCus(new Customer(userName, userPassword, money));
System.out.println("您现在卡上有金额"+c.getMoney());
// -----------用户自己修改密码的方法-----------------
} else if ("3".equals(op2)) {
System.out.println("请输入新的密码");
String newUserPassword1 = input();
System.out.println("请再次输入新的密码");
String newUserPassword2 = input();
if (!newUserPassword1.equals(newUserPassword2)) {
System.out.println("两次密码不同,请重输");
} else {
c.setUserPassword(newUserPassword2);
boolean b = bank.modifyCustomer(c);
if (b) {
System.out.println("密码修改成功");
}
}
// -----------返回上一级-----------------
} else if ("4".equals(op2)) {
System.out.println("当前账户余额为:" + c.getMoney() + "元");
} else if ("5".equals(op2)) {
System.out.println("返回上一级");
break;
} else {
System.out.println("输入错误,请重新输入选项");
}
}
} else {
System.out.println("登录失败");
}
} else if ("3".equals(op)) {
break;
} else {
System.out.println("输入错误,请重新输入选项");
}
}
}
// -----------set&&get方法----------------
public Bank getBank() {
return bank;
}
public void setBank(Bank bank) {
this.bank = bank;
}
}
java开发面向对象(银行小项目)
5星 · 超过95%的资源 需积分: 50 28 浏览量
2018-08-16
02:02:08
上传
评论 6
收藏 15KB ZIP 举报
qq_33174600
- 粉丝: 3
- 资源: 2