📄 comfhandler.java
字号:
package com.zfz.controller;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import com.zfz.model.Account;
import com.zfz.view.MainFrame;
public class ComFHandler implements ActionListener {
private MainFrame win;
public String s;
public int ind2;
public ComFHandler(MainFrame win) {
this.win = win;
}
public void actionPerformed(ActionEvent e) {
// 登陆操作
if (win.getViewNum() == 2) {
enterOp();
}
// 取款操作
if (win.getViewNum() == 4) {
dowMoney();
}
// 修改密码,重新输入密码
if (win.getViewNum() == 8) {
rePassward();
}
if (win.getViewNum() == 9 && !win.getFd().getText().equals("")) {
isCompassward();
}
// 转账
if (win.getViewNum() == 6) {
transferAccount();
}
if (win.getViewNum() == 7 && !win.getFd().getText().equals("")) {
transAccount();
}
}
// 获得用户方法
public static int ifEnter(Account[] allAcc, String no, String password) {
int index = -1;
for (int i = 0; i < allAcc.length; i++) {
if (allAcc[i].ifMyAccount(no, password)) {
index = i;
break;
}
}
return index;
}
// 验证是否存在此帐号
public static int ifAccount(Account[] allAcc, String no) {
int in = -1;
for (int i = 0; i < allAcc.length; i++) {
if (allAcc[i].ifAccount(no)) {
in = i;
break;
}
}
return in;
}
// 验证登陆方法
public void enterOp() {
String cardNum = MainFrame.getCardNo();
String password = win.getFd().getText();
MainFrame.setInputCount(MainFrame.getInputCount() + 1);
int in = ifAccount(win.getAcc(), cardNum);
int index = ifEnter(win.getAcc(), cardNum, password);
if (win.getAcc()[in].isFg()) {
if (index != -1) {
win.setAccIndex(index);
win.setViewNum(3);
win.setProPety();
MainFrame.setInputCount(0);
} else {
if (MainFrame.getInputCount() == 3) {
win.setViewNum(-1);
win.setProPety();
win.getAcc()[in].setFg(false);
win.getAcc_out_in().myWriteAllObj(win.getAcc());
} else {
win.setViewNum(2);
win.setProPety();
}
}
} else {
win.setViewNum(0);
win.getMainLab().setText("卡已锁,快到银行解锁");
win.setProPety();
}
}
// 取款方法
public void dowMoney() {
double dm = Integer.parseInt(win.getFd().getText().trim());
double money = win.getAcc()[win.getAccIndex()].getMoney();
if (money < dm) {
win.getMainLab().setText("余额不足,请重新输入");
} else {
win.getAcc()[win.getAccIndex()].setMoney(money - dm);
win.getAcc_out_in().myWriteAllObj(win.getAcc());
win.setViewNum(3);
win.setProPety();
win.getMainLab().setText("取款成功,请选择操作");
win.getMoneyBut().setText("[__________钱出来了__________]");
}
win.getFd().setText("");
}
// 修改密码
public void rePassward() {
s = win.getFd().getText();
win.setViewNum(9);
win.setProPety();
}
public void isCompassward() {
if (win.getFd().getText().equals(s)) {
win.setViewNum(3);
win.setProPety();
win.getAcc()[win.getAccIndex()].setPassword(s);
win.getAcc_out_in().myWriteAllObj(win.getAcc());
win.getMainLab().setText("修改成功,请选择操作");
} else {
win.setViewNum(8);
win.setProPety();
win.getMainLab().setText("输入错误,请重新输入");
win.getFd().setText("");
}
}
// 转账方法
public void transferAccount() {
String no = win.getFd().getText();
ind2 = win.getAcc_out_in()
.getOthNo(win.getAcc(), no, win.getAccIndex());
if (ind2 != -1) {
win.setViewNum(7);
win.setProPety();
} else {
if (ind2 == win.getAccIndex()) {
win.getMainLab().setText("不能给自己转账");
} else {
win.getMainLab().setText("帐号不存在,请输入");
win.getFd().setText("");
}
}
}
public void transAccount() {
double dm = Integer.parseInt(win.getFd().getText().trim());
double setmoney = win.getAcc()[win.getAccIndex()].getMoney();
win.getAcc()[win.getAccIndex()].getMoney();
if (dm <= win.getAcc()[ind2].getMoney()) {
win.getAcc()[win.getAccIndex()].setMoney(setmoney - dm);
win.getAcc()[ind2].setMoney(win.getAcc()[ind2].getMoney()+dm);
win.getAcc_out_in().myWriteAllObj(win.getAcc());
win.setViewNum(3);
win.setProPety();
win.getMainLab().setText("转账成功,请选择操作");
} else if (dm > win.getAcc()[ind2].getMoney()) {
win.getMainLab().setText("余额不足");
win.getFd().setText("");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -