项目-超市会员管理系统

package com.chaoshihuiyuanguanliSystem3;

//创建一个会员类
public class Member {

    //用户姓名 卡号 密码 日期  积分
    private String name;
    private int cardId;
    private String  password;
    private String date;
    private int score;
    
    public Member() {}
    public Member(String name, int cardId, String password, String date, int score) {
        super();
        this.name = name;
        this.cardId = cardId;
        this.password = password;
        this.date = date;
        this.score = score;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getCardId() {
        return cardId;
    }
    public void setCardId(int cardId) {
        this.cardId = cardId;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public String getDate() {
        return date;
    }
    public void setDate(String date) {
        this.date = date;
    }
    public int getScore() {
        return score;
    }
    public void setScore(int score) {
        this.score = score;
    }
    
}
package com.chaoshihuiyuanguanliSystem3;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.Random;
import java.util.Scanner;

    //创建一个会员类的功能
    public class Memberdao {
    Scanner sc = new Scanner(System.in);
    Map<Integer,Member> map  = new HashMap<>();
    Member member = new Member();
    //创建一个产生随机数生成卡号的方法
    public int cardIds() {
        Random ran = new Random();
        int id = ran.nextInt(99999999);
        if(id<100000000&&map.containsKey(id)) {//map.containKey:如果此映射包含指定键的映射关系,则返回 true。
            id = ran.nextInt();    
        }
        return id;
    }

    //创建一个开卡的方法
    public void kaika() {
        
        boolean flag = true;
        System.out.println("请输入用户名:");
        member.setName(sc.next());
        do {
            System.out.println("请输入密码:");
            member.setPassword(sc.next());
            System.out.println("请再次输入密码:");
            String pw = sc.next();
            if(member.getPassword().equals(pw)&&member.getPassword().length()>5) {
                System.out.println("开卡成功!");
                int id = cardIds();
                System.out.println("您的会员卡号是:"+id);
                //开卡赠送100积分
                member.setScore(100);
                System.out.println("会员卡积分是:"+member.getScore());
                //定义一个a接收开卡时间
                String a =dates();
                System.out.println("开卡的时间是:"+a);
                member.setDate(a);
                map.put(id, member);
                flag = true;
            }else {
                System.out.println("输入的密码不正确,请重新输入!");
                flag = false;
            }
        }while(!flag);
    }
    
    //创建一个登入页面的方法
    public void enter() {
        do {
        System.out.println("*********超市会员管理系统********");
        System.out.println("1、登入");
        System.out.println("2、注册");
        System.out.println("3、退出");
        System.out.println("请选择:");
        int choose;
        choose = sc.nextInt();
        switch(choose) {
        //登入
        case 1:
            passwordEnter();
            break;
        //注册
        case 2:
            kaika();
            break;
        //退出
        case 3:
            System.exit(1);
            break;
        }
        }while(true);
        
    }
    
    //创建一个生成时间的方法
    public String dates() {
        String date;
        Date dt = new Date();
        SimpleDateFormat dte = new SimpleDateFormat("YYYY-MM-dd");
        date = dte.format(dt);
        
        return date;
    }
    
    //创建一个登入输密码的方法
    public void passwordEnter() {
        do {
        System.out.println("请输入会员卡号:");
        int id = sc.nextInt();
        System.out.println("请输入会员卡密码:");
        String pw = sc.next();
        if(map.containsKey(id)&&map.get(id).getPassword().equals(pw)) {
            System.out.println("登入成功!");
            function();
        }else {
            System.out.println("会员卡号或密码错误,请重新输入:");
            
        }
        }while(true);
    }
    
    //创建一个登入后的功能界面
    public void function() {
        do {
            
        System.out.println("********************欢迎进入超市会员管理系统********************");
        System.out.println("1、积分累计\t2、积分兑换\t3、查询积分\t4、修改密码\t5、退出系统");
        System.out.println("********************************************************");
        System.out.println("请选择:");
        int choose = sc.nextInt();
        switch(choose) {
        //积分累计
        case 1:
            leiji();
            break;
        //积分兑换
        case 2:
            duihuan();
            break;
        //积分查询
        case 3:
            search();
            break;
        //修改密码
        case 4:
             changepw(); 
            break;
        //退出系统
        case 5:
            System.exit(1);
            break;
        
        default:
            System.out.println("输入有误,请重新输入");
            break;
        }
        }while(true);
    }
    
    //积分累计
    public void leiji() {
        System.out.println("输入你此次消费的金额(消费一元累计一积分):");
        int scorss = sc.nextInt();
        member.setScore(member.getScore()+scorss);
        System.out.println("你现在的积分为:"+member.getScore());
    }
    
    //积分兑换
    public void duihuan() {
        System.out.println("输入你此次兑换的金额(100积分兑换1元):");
        int scorss = sc.nextInt();
        if(member.getScore()<scorss) {
            System.out.println("兑换失败,您没有这么多的积分。");
        }else {
            double money = scorss/100;
            System.out.println("您成功兑换了:"+money+"元");
            member.setScore(member.getScore()-scorss);
            System.out.println("剩余积分:"+member.getScore());
        }
    }
    
    //积分查询
    public void search() {
        System.out.println("您的会员卡号是::"+member.getCardId());
        System.out.println("您会员卡的名字:"+member.getName());
        System.out.println("您开卡的时间是:"+member.getDate());
        System.out.println("您卡里的积分剩余:"+member.getScore());
    }
    
    //修改密码
    public void changepw() {
        System.out.println("请输入旧密码:");
        do {
        String pws = sc.next();
        if(member.getPassword().equals(pws)) {
            System.out.println("请输入新的密码:");
            String pwss = sc.next();
            if(pwss.length()>5) {
                System.out.println("更改密码成功!请重新登入");
                member.setPassword(pwss);
                passwordEnter();
            }
        }else {
            System.out.println("输入的旧密码错误,请重新输入");
        }
        }while(true);
    }
    
    //生成验证码的方法
//    public String testId() {
//        Random ran1 = new Random();
//        String id = null;
//        for(int i = 0;i<6;i++) {
//            int num1 = ran1.nextInt(123);
//
//            if((64<num1&&num1<91)||(96<num1&&num1<123)) {
//                char a = (char)num1;
//                System.out.print(a);
//            }else if(num1<10) {
//                int b = num1;
//                System.out.print(b);
//            }
//            else   {
//                i--;
//            }
//
//        }
//        return id;
//    }
}
package com.chaoshihuiyuanguanliSystem3;

//测试类
public class Test {

    public static void main(String[] args) {
        //创建dao对象
        Memberdao dao = new Memberdao();
        dao.enter();
    }
}

 注册:

登入

累计

 

兑换

 更改密码

猜你喜欢

转载自www.cnblogs.com/qq993411626------/p/10458748.html