JAVA小项目之超市会员管理系统

这篇具有很好参考价值的文章主要介绍了JAVA小项目之超市会员管理系统。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

思路分析

1、会员类Member
    (1)姓名        name:String
    (2)卡号        cardId:int
    (3)密码        password:String
    (4)积分        score:int
    (5)开卡日期    registDate:String
    
2、会员管理类
    (1)所有会员(卡)--集合:List  ArrayList<Member>    

    (2)程序整体流程搭建的方法
            循环
            分支
    (3)验证会员是否存在的方法
            集合的遍历,集合元素的查找
    (4)系统随机生成会员卡号的方法
            Random类
    
    A:开卡
        输入会员信息(会员卡密码的验证--String类相应方法-循环)
            姓名、密码
            卡号:系统随机生成会员卡号的方法
            积分:系统默认100
            开卡日期:日期时间操作(Date类、SimpleDateFormat类)
        将注册成功的会员添加进集合(ArrayList add())            
    B:修改密码
        验证会员是否存在
          会员对象密码属性重新赋值
    C:积分累计
        验证会员是否存在
        会员对象积分属性重新赋值
    D:积分兑换
        验证会员是否存在
        会员积分兑换过程(根据相应规则)
    E:查询剩余积分
        验证会员是否存在
        集合查找相应会员,显示信息(遍历)
    F:退出

3、测试类
    会员管理类的调用
 文章来源地址https://www.toymoban.com/news/detail-466124.html

会员类

package cn.bdqn.superMarket;

public class Member {
    //姓名、会员卡号、密码、积分、开卡日期
    private String name;
    private int CarID;
    private String password;
    private int score;
    private String registDate;

    public Member() {
    }

    public Member(String name, int carID, String password, int score, String registDate) {
        this.name = name;
        CarID = carID;
        this.password = password;
        this.score = score;
        this.registDate = registDate;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getCarID() {
        return CarID;
    }

    public void setCarID(int carID) {
        CarID = carID;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public int getScore() {
        return score;
    }

    public void setScore(int score) {
        this.score = score;
    }

    public String getRegistDate() {
        return registDate;
    }

    public void setRegistDate(String registDate) {
        this.registDate = registDate;
    }
}

业务类 

package cn.bdqn.superMarket;

import java.text.SimpleDateFormat;
import java.util.*;

public class MemberDao {
    List<Member> members=new ArrayList<>();
    Scanner sc=new Scanner(System.in);
    //首页菜单
    public void menu()
    {
        System.out.println("欢迎进入超市会员管理系统");
        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.println("==========================================");
        System.out.println("请选择你需要的服务:");
    }
    public void star()
    {
        int num=-1;
        do {
            menu();
            int chooseNum=sc.nextInt();
            switch(chooseNum)
            {
                case 1:
                    if(saveScore())
                    {
                        System.out.println("积分累积成功");
                    }else{
                        System.out.println("积分累计失败");
                    }
                    break;
                case 2:
                    if(minusScore())
                    {
                        System.out.println("积分查询成功");
                    }else{
                        System.out.println("积分查询失败");
                    }
                    break;
                case 3://查询积分
                    checkScore();
                    break;
                case 4://修改密码
                    change();
                    break;
                case 5://开卡
                    register();
                    break;
                case 6:
                    System.out.println("感谢您的是使用,欢迎下次光临");
                    break;
                default:
                    break;

            }
            if(chooseNum<1||chooseNum>5)
            {
                break;
            }else{
                //提示输入0返回
                System.out.println("输入0返回主菜单:");
                num=sc.nextInt();
            }

        }while(num==0);
    }


    public boolean saveScore()//积分
    {
        boolean flag=true;
        System.out.println("请输入会员卡号:");
        int ID=sc.nextInt();
        System.out.println("请输入密码:");
        String psw=sc.next();
        Member member=haveMember(ID,psw);
        if(member!=null)
        {
            System.out.println("请输入您此次消费金额(1元积1分):");
            int score=sc.nextInt();
            member.setScore(member.getScore()+score);
            flag= true;
        }else {
            System.out.println("对不起,该会员卡号不存在,无法积分");
            flag= false;
        }
        return flag;

    }
    public boolean minusScore()//积分兑换
    {
        boolean flag=true;
        System.out.println("请输入会员卡号:");
        int ID=sc.nextInt();
        System.out.println("请输入密码:");
        String psw=sc.next();
        Member member=haveMember(ID,psw);
        if(member!=null)
        {
            System.out.println("请输入您此次兑换积分的额度:");
            int score=sc.nextInt();
            if(score<member.getScore())
            {
                member.setScore(member.getScore()-score);
                System.out.println("您此次兑换和:"+score/100*0.1+"元");

            }else{
                System.out.println("积分不足无法兑换");
            }
            flag= true;
        }else {
            System.out.println("对不起,该会员卡号不存在,无法兑换积分");
            flag= false;
        }
        return flag;

    }
    public void checkScore()//积分查询
    {

        boolean flag=true;
        System.out.println("请输入会员卡号:");
        int ID=sc.nextInt();
        System.out.println("请输入密码:");
        String psw=sc.next();
        Member member=haveMember(ID,psw);
        if(member!=null)
        {
            System.out.println("会员卡号"+"\t"+"姓名"+"\t"+"剩余积分"+"\t"+"开卡日期");
            System.out.println(member.getCarID()+"\t"+member.getName()+"\t"+member.getScore()+"\t"+member.getRegistDate());
        }else{
            System.out.println("对不起!该会员卡号不存在,无法查询积分");
        }
    }
    public void change()//修改密码
    {
        boolean flag=true;
        System.out.println("请输入会员卡号:");
        int ID=sc.nextInt();
        System.out.println("请输入密码:");
        String psw=sc.next();
        Member member=haveMember(ID,psw);
        if(member!=null)
        {
            System.out.println("请输入新密码:");
            String pass=sc.next();
            member.setPassword(pass);
            System.out.println("密码修改成功-");
        }
    }
    //开卡
    public void register()
    {
        Member member = new Member();
        System.out.println("请输入注册姓名:");
        String name=sc.next();
        member.setName(name);
        //随机生成卡号
        int ID=creatID();
        member.setCarID(ID);
        System.out.println("请输入您的密码:");
        String pwd;
        //保证密码设置正确
        boolean falg=true;
        do {
            pwd=sc.next();
            if(pwd.length()<6)
            {
                System.out.println("密码不能少于6位,请重新输入");
                falg=false;
            }else{
                falg=true;
                member.setPassword(pwd);
            }
        }while(!falg);
        //默认开卡赠送100积分
        member.setScore(100);
        //开卡日期
        Date date = new Date();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM=dd HH:mm:ss");
        String sdate= sdf.format(date);
        member.setRegistDate(sdate);
        System.out.println("恭喜开卡成功,新用户赠送100积分,您的卡号为:"+ID);
        members.add(member);


    }
    //随机生成卡号
    public int creatID()
    {
        Random random = new Random();
        int id=random.nextInt(999999);
        for (Member member :members) {
            if(member.getCarID()==id)
            {
                id=random.nextInt(999999);
            }

        }
        return id;
    }
    //查询当前会员是否存在,根据给的卡号和密码查找
    public Member haveMember(int cardID,String psw)
    {
        for (Member member :members) {
            if(member.getCarID()==cardID&&member.getPassword().equals(psw))
            {
                return  member;
            }
        }
        return null;

    }

}

测试类

package cn.bdqn.superMarket;

public class Test {
    public static void main(String[] args) {
        MemberDao man = new MemberDao();
        man.star();
    }
}

到了这里,关于JAVA小项目之超市会员管理系统的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 超市管理系统Java

    编程小白一枚,简单的Java小项目;自己的理解实现增删改查。 一、定义商品类 二、定义商品的操作类 三、主菜单页面 运行结果如下: 主界面:  添加货物:      查看货物清单: 修改货物:      查看库存及总价:  删除货物:      代码还需完善,欢迎评论,一起努力

    2024年02月11日
    浏览(46)
  • 超市管理系统(java+Mysql)

    目 录 摘 要 I Abstract II 1 正文 1 1.1研究背景分析 1 1.2 超市管理系统的概述 2 1.3所需软、硬件技术准备 2 1.4可行性分析 3 1.4.1 技术可行性 3 1.4.2 经济可行性 3 1.4.3 社会可行性 3 2 需求分析 4 2.1 需求分析的任务及主要内容 4 2.2.1 具体业务的需求 4 2.2 层次图 4 2.3数据流图 5 3 概要设

    2024年02月05日
    浏览(52)
  • JSP+Servlet+MySql超市管理系统项目源码

    软件名称:超市管理系统(servlet+jsp) 使用对象:学习或了解过 java 基础课程,开始接触 javaWeb 的学生和软件爱好者 源码链接:超市管理系统: 超市管理系统 Sql文件https://pan.baidu.com/s/1BtMM8erQ9E25fQ1j4eHltQ?pwd=8nmj 该超市管理系统,设置了登录权限验证,所有用户除了访问首页浏览商品

    2024年02月09日
    浏览(44)
  • JAVA结课作品——超市管理系统

    项目描述: 一个简单的超市管理系统,能够实现用户登入和注册功能,共分为前台和后台两个主要界面,普通用户界面操作权限收到限制,只能对商品和销售记录进行简单查询操作,后台中可以进行商品的删除、修改、查询,可以查看用户信息,可以修改用户信息。具体的代

    2024年02月11日
    浏览(44)
  • Java学习——水果超市商品管理系统

    案例介绍: 水果超市管理系统包括两个界面:系统欢迎界面和超市货物管理界面,在系统欢迎界面中,通过单击“进入系统”按钮,进入超市货物管理界面。在超市货物管理界面中,可以对水果信息实现具体的操作。例如,每当有新水果运送到超市时,就需要系统管理人员在

    2024年02月11日
    浏览(41)
  • 超适合练手的一套JavaWeb项目 (超市后台管理系统)

    1.搭建一个maven web项目 2.配置Tomcat 3.测试项目是否能够跑起来 4.导入项目中遇到的jar包 5.创建项目结构 1.数据库配置文件 db.properties文件代码 2.编写数据库的公共类 java代码 3.编写字符编码过滤器 xml代码 java dao层接口代码 java dao接口的实现类代码 java service接口代码

    2024年02月05日
    浏览(50)
  • Java+Swing+Mysql实现超市管理系统

    操作系统:Win10 开发工具 :IDEA2018 JDK版本:jdk1.8 数据库:Mysql8.0 Java+Swing+Mysql 1. 系统登录登出 管理员可以登录、退出系统 2. 商品信息管理 管理员可以对商品信息进行查询、添加、修改、删除等操作。 3. 出库信息管理 管理员可以对出库信息进行查询、添加、修改、删除等操

    2024年03月18日
    浏览(44)
  • 基于java的超市管理系统设计与实现

    随着小型超市规模的发展不断扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长,传统的人工记忆方式也慢慢的无法适应形势的变化。随着信息技术的发展,计算机已被广泛的用于社会的各个领域,成为推动社会发展的技术动力。而在计算机应用中,软件的作用十

    2024年02月05日
    浏览(54)
  • 基于Java+Mysql的超市管理系统(附源码)

    项目下载: gitee下载:https://gitee.com/wusupweilgy/taobao.git 蓝奏云下载:https://wwp.lanzoup.com/i0ZZB0ywnipi 课设报告:https://wwp.lanzoup.com/iZLV20te02cd 提取码:6666 (包括所有代码源文件、第三方库和界面图片) 基于Java swing+Mysql实现的超市管理与购物系统,使用了beautyEye_inf.jar美化界面,使用

    2024年02月04日
    浏览(43)
  • 基于Java+SpringBoot超市管理系统设计与实现

    博主介绍: ✌全网粉丝5W,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战,博主也曾写过优秀论文,查重率极低,在这方面有丰富的经验✌ 博主作品: 《Java项目案例》主要基于SpringBoot+MyBatis/MyBatis-

    2024年01月20日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包