/**
*
*/
package org.xinzhan.aj10061;
import java.util.Scanner;
/**
* @author Administrator
*
*/
public class Atm {
private Bank bank=new Bank();
/**
* 显示菜单
*/
private void show() {
System.out.println("1、开户\n" + "2、插卡\n" + "3、系统管理\n" + "4、退出");
}
private void show1() {
System.out.println("1、查看余额\n" + "2、存款\n" + "3、转账\n" + "4、返回主菜单");
}
private void show2() {
System.out.println("1、查看所有用户\n" + "2、冻结账户\n" + "3、恢复账户\n" + "4、退出系统");
}
public void start() {
show();
do{
System.out.println("请输入序号");
Scanner in = new Scanner(System.in);
int sh = in.nextInt();
switch (sh) {
case 1:
openAccount(); show(); break;
case 2:
insertCard(); show(); break;
case 3:
systemManage();show(); break;
case 4:
exit(0); show();return;
default: break;
}
}while(true);
}
public void exit(int i){
System.out.println("退出登录,欢迎使用!");
}
private void openAccount() {
String cardNum = AtmUtil.createNum();
System.out.println("系统为您生成的账号是:" + cardNum);
Scanner input = new Scanner(System.in);
System.out.println("请输入密码:");
String pwd = input.next();
System.out.println("请输入确认密码:");
String rpwd = input.next();
if (pwd.equals(rpwd)) {
User user = new User();
user.setCardNum(cardNum);
user.setPwd(rpwd);
//将用户放到bank对象里面的集合
bank.addUserList(user);
System.out.println("是否存钱(y/n)?");
String ans=input.next();
if("y".equalsIgnoreCase(ans))
{
//需要存钱
double money = 0;
do {
System.out.println("请输入你要存的钱数!");
money = input.nextDouble();
if (money < 1) {
System.out.println("不能少于1元");
}
} while (money < 1);
user.setMoney(money);
}else{
System.out.println("你的账户里面现在有"+user.getMoney());
start();
}
}else{
System.out.println("密码不一致");
start();
}
}
public void systemManage(){//系统管理员入口
Scanner in=new Scanner(System.in);
System.out.println("欢迎你!系统管理员,请输入密码:000");
String str1=in.next();
if("000".equals(str1)){
show2();
}
else{
System.out.println("密码错误:");
show();
}
do{
int i=in.nextInt();
switch(i){
case 1:
System.out.println("1、查看所有用户\n"+
"活动帐户:"+bank.getUserList()+"\n"+
"冻结账户:"+bank.getBlackList());
show2();
case 2:
System.out.println("2、冻结账户\n"+
"活动账户:" +bank.getAllUser()+"\n"+
"请输入你要冻结的账户:");
String cardNum=in.next();
User user=bank.getUserFromUserList(cardNum);
bank.removeBlackList(user);
bank.addBlackList(user);
System.out.println("冻结成功!");
show2();
case 3:
System.out.println("3、恢复账户:\n"+
"冻结的账户:" +bank.getBlacklist()+"\n"+
"请输入你要恢复的用户账号:" );
String cardNum1=in.next();
User user1=bank.getUserFromBlackList(cardNum1);
bank.removeBlackList(user1);
bank.addUserList(user1);
show2();
case 4:
show();
break;
}
}while(true);
}
public void moneyShow(User user){//显示当前用户的余额
System.out.println("用户当前余额为"+user.getMoney()+"元");
show1();
}
public void addMoney(User user){//实现存款功能
System.out.println("请输入你存款的数目:");
Scanner in=new Scanner(System.in);
double money=in.nextFloat();
if(money<0){
System.out.println("输入金额有误!");
}
else{
money=user.getMoney()+money;
user.setMoney(money);
System.out.println("存款成功!");
}
show1();
}
public void sendMoney(User user){//实现转账功能
Scanner in=new Scanner(System.in);
System.out.println("请输入你转账的卡号:");
String str=in.next();
User user1=bank.queryByCardNum(str);
if(user1!=null){
System.out.println("请输入你转账的数目:");
double money=in.nextFloat();
if(money<0){
System.out.println("输入金额有误!");
}
else{
double money1=user1.getMoney()+money;
user1.setMoney(money1);
money=user.getMoney()-money;
user.setMoney(money);
System.out.println("转账成功!");
}
}
else{
System.out.println("你转账的卡号不存在");
}
show1();
}
public User insertCard(){//插卡的入口
Scanner in=new Scanner(System.in);
System.out.println("请输入卡号");
String str1=in.next();
System.out.println("请输入密码");
String str2=in.next();
User user=bank.findUserByNameAndPwd(str1,str2);
if(user!=null){
System.out.println("登陆成功!");
userOperate(user);
return user;
}
else{
System.out.println("卡号或密码错误");
return null;
}
}
public void userOperate(User user){
do{
show1();
System.out.println("请输入序号");
Scanner in=new Scanner(System.in);
int i=in.nextInt();
switch (i){
case 1 : System.out.println(user.getMoney());
break;
case 2: addMoney(user);
break;
case 3: sendMoney(user);
break;
case 4: exit(0);
return;
default: System.out.println("输入错误!");
}
}while(true);
}
}
林当时
- 粉丝: 107
- 资源: 1万+
最新资源
- 智能优化特征选择-基于ACO蚁群优化的特征选择分类算法KNN和SVM分类器(matlab程序)
- HTML5大气简洁宠物网站模板是一款绿色大气风格的HTML5宠物网站模板下载
- 智能优化特征选择-基于GA遗传优化的特征选择分类算法KNN和SVM分类器(matlab程序)
- 作业3 Servlet技术.docx
- 设计模式之抽象工厂模式-c++
- 智能优化特征选择-基于PFA探路者优化的特征选择分类算法KNN和SVM分类器(matlab程序)
- 与伟豪的dokidoki心跳恋爱.c
- Java课程设计-24点卡牌游戏.zip
- 安全保护你的移动存储:GiliSoft USB Stick Encryption
- 大学生创新创业训练计划-学生管理系统源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈