importjava.sql.SQLOutput;importjava.time.LocalDateTime;importjava.time.format.DateTimeFormatter;importjava.util.ArrayList;importjava.util.List;importjava.util.Scanner;publicclassMemberDao{staticScanner sc =newScanner(System.in);staticList<Member> rv =newArrayList<>();staticMember member =newMember();publicvoidmenu(){boolean flag =true;while(flag){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("6. 退出");System.out.print("请选择操作:");int choice = sc.nextInt();
sc.nextLine();// 消耗换行符switch(choice){case1:register();break;case2:System.out.println("请输入你的会员编号:");int card = sc.nextInt();System.out.println("请输入会员密码");String pwd = sc.nextLine();
member =hasMember(newMember(card, pwd));if(member !=null){booleanRE=saveMember();if(RE){System.out.println("ok");}else{System.out.println("error");}}break;case3:System.out.println("请输入你的会员编号:");intC= sc.nextInt();System.out.println("请输入会员密码");StringP= sc.nextLine();
member =hasMember(newMember(C,P));if(member !=null){System.out.println("你当前积分是:"+member.getScore());System.out.println(minusMember()?"ok":"error");}break;case4:System.out.println("请输入你的会员编号:");intCs= sc.nextInt();System.out.println("请输入会员密码");StringPs= sc.nextLine();
member =hasMember(newMember(Cs,Ps));if(member !=null){show();}break;case5:changePwd();break;case6:
flag =false;break;default:System.out.println("无效的选择,请重新输入。");}}}publicvoidstart(){menu();}publicvoidregister(){System.out.print("请输入注册姓名:");String name = sc.nextLine();System.out.print("请输入注册密码:");String pwd = sc.nextLine();String date =LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));int card =create();boolean res =rv.add(newMember(name,card,pwd,100,date));if(res){System.out.println("ok");}else{System.out.println("error");}}publicMemberhasMember(Member member){for(int i =0;i < rv.size();i++){Member m = rv.get(i);if(m.getCardID()== member.getCardID()&& m.getPassword().equals(member.getPassword())){return rv.get(i);}}returnnull;}publicbooleansaveMember(){System.out.println("请输入消费金额:");int ef = sc.nextInt();
member.setScore(member.getScore()+ef);for(int i =0;i < rv.size();i++){if(member.getCardID()== rv.get(i).getCardID()){
rv.set(i,member);returntrue;}}returnfalse;}publicbooleanminusMember(){System.out.println("请输入你要兑换使用的积分:");int ef = sc.nextInt();if(ef >=100&& ef %100==0){
member.setScore(member.getScore()-ef);System.out.println("你本次兑换"+(ef/100)+"剩余积分:"+member.getScore());for(int i =0;i < rv.size();i++){if(member.getCardID()== rv.get(i).getCardID()){
rv.set(i,member);returntrue;}}}returnfalse;}publicintcreate(){LocalDateTime date =LocalDateTime.now();String s =DateTimeFormatter.ofPattern("hhmmss").format(date);int id =0;if(rv.size()<=0){
s= s+"001";
id =Integer.parseInt(s);}else{
id =rv.get(rv.size()-1).getCardID();}return0;}publicvoidshow(){System.out.println("姓名"+member.getName());System.out.println("编号"+member.getCardID());System.out.println("积分"+member.getScore());System.out.println("时间"+member.getRegisDate());}publicbooleanchangePwd(){System.out.println("请输入你的会员编号:");intCs= sc.nextInt();System.out.println("请输入会员密码");StringPs= sc.nextLine();
member =hasMember(newMember(Cs,Ps));if(member !=null){System.out.println("请输入修改后的密码");
member.setPassword(sc.next());for(int i =0;i < rv.size();i++){if(member.getCardID()== rv.get(i).getCardID()){
rv.set(i,member);returntrue;}}}returnfalse;}}