/*
* 用户界面
*/
package view;
import HibernateUtil.HibernateUtil;
import biz.*;
import com.kettas.common.*;
public class TextView{
private AccountBiz ab;
private String currentId;
public TextView(AccountBiz ab){
this.ab=ab;
}
/*
* 主目录
*/
public void showMain(){
System.out.println("------------------");
System.out.println("1.开户");
System.out.println("2.登录");
System.out.println("3 删除账户");
System.out.println("4.退出");
System.out.println("5.显示主菜单");
System.out.println("------------------");
System.out.println("请输入你的选择:");
int choice=SystemIn.readInt();
switch(choice){
case 1:kaihu();break;
case 2:denglu();break;
case 3:delete();break;
case 4:System.exit(0);
case 5:showMain();
default:showMain();
}
}
//开户
public void kaihu(){
System.out.println("请输入姓名");
String name=SystemIn.readString();
System.out.println("请输入密码");
String passwd=SystemIn.readString();
System.out.println("请再次输入密码");
String passwd2=SystemIn.readString();
System.out.println("请输入身份证号");
String personId=SystemIn.readString();
String atype="SA";
do{
System.out.println("请输入账户类型 SA(储蓄账户) CA(信用账户)");
atype=SystemIn.readString();
if(!atype.equals("SA")&&!atype.equals("CA")){
System.out.println("请按要求输入!!!");
}
}while(!atype.equals("SA")&&!atype.equals("CA"));
String cardType=null;
double overdraft=0;
if(atype.equals("SA")){
do{
System.out.println("请输入银行卡类型 GK(金卡) SK(银卡)");
cardType=SystemIn.readString();
if(!cardType.equals("GK")&&!cardType.equals("SK")){
System.out.println("请按要求输入!!!");
}
}while(!cardType.equals("GK")&&!cardType.equals("SK"));
}else{
overdraft=10000;
System.out.println("你目前可透支 "+overdraft+" 元");
}
String cardid=HibernateUtil.getOid("cardid_hibernate_seq")+"";
try {
currentId=ab.register(name,passwd,passwd2,cardid,
personId,cardType,overdraft,atype);
System.out.println("恭喜注册成功");
System.out.println("你的帐号是 "+ cardid);
jiaoyi();
} catch (Exception e) {
e.printStackTrace();
System.out.println("注册失败");
showMain();
}
}
//登录
public void denglu(){
System.out.println("请输入帐户号");
String cardid=SystemIn.readString();
System.out.println("请输入密码");
String passwd=SystemIn.readString();
try{
currentId=ab.login(cardid, passwd);
jiaoyi();
}catch(Exception e){
System.out.println(e.getMessage());
showMain();
}
}
//删除
public void delete(){
System.out.println("请输入帐户号");
String cardid=SystemIn.readString();
try {
ab.deleteAccount(cardid);
showMain();
} catch (Exception e) {
System.out.println("删除失败");
showMain();
}
}
//交易
public void jiaoyi(){
System.out.println("------------------");
System.out.println("1.存钱");
System.out.println("2.取钱");
System.out.println("3 转账");
System.out.println("4.查询余额");
System.out.println("5.返回主菜单");
System.out.println("------------------");
System.out.println("请输入你的选择:");
int choice=SystemIn.readInt();
switch(choice){
case 1:
System.out.println("请输入你要存的数额:");
double money=SystemIn.readDouble();
try {
ab.deposit(currentId, money);
} catch (Exception e1) {
System.out.println(e1.getMessage());
}
jiaoyi();
break;
case 2:
System.out.println("请输入你要取的数额:");
double money1=SystemIn.readDouble();
try{
ab.withdraw(currentId, money1);
jiaoyi();
}catch(Exception e){
System.out.println(e.getMessage());
jiaoyi();
}
case 3:
System.out.println("请输入你要转的户头账号");
String cardid=SystemIn.readString();
System.out.println("请输入转账额");
double Money=SystemIn.readDouble();
try {
ab.transfer(currentId,Money, cardid);
jiaoyi();
} catch (Exception e1) {
System.out.println(e1.getMessage());
jiaoyi();
}
case 4:
try {
ab.select(currentId);
} catch (Exception e) {
System.out.println(e.getMessage());
}
jiaoyi();
case 5:showMain();
default:jiaoyi();
}
}
}