用java实现的简易核酸检测结果查询系统----IEDA

核酸检测结果查询系统

该系统为核酸检测结果查询系统,由java实现,用到了面向对象,java基础语法等知识,有一个主方法和8个对应的功能方法,建了一个People类用于生成对象,存放数据,主界面有两个入口,一个为普通用户查询入口,用户可以通过输入身份证号来查询核酸报告结果,第二个入口为工作人员(管理员)入口,工作人员可以凭借管理员账号和密码进入管理员界面来进行操作,主要用于录入被检测人的信息和核酸检测结果,修改,删除等操作,管理人员录入信息之后,普通用户才可从第一个入口查到自己的结果。

用户使用说明:

  1. 本程序的运行需要有java环境 编译器IDEA等 
  2. 进入演示程序后,即显示菜单界面
    1. 输入账号密码,进入管理员模式

     

    1. 录入被检测人信息

     

    1. 退出管理员模式,用户查询自己信息

    People类:

    建立People类,用于存放被录人数据,生成一个人员对象,并为各个变量创造各自的setter,getter方法

  3.  

  4. People类代码

    package 抗疫小程序;

    public class People {

        private String name;//名字

        private String sex;//性别

        private int age;//年龄

        private String IDcard;//身份证号

        private String place;//检测地点

        private String result;//检测结果

        //创建对应的getter setter方法

        public String getName() {

            return name;

        }

        public void setName(String name) {

            this.name = name;

        }

        public String getSex() {

            return sex;

        }

        public void setSex(String sex) {

            this.sex = sex;

        }

        public int getAge() {

            return age;

        }

        public void setAge(int age) {

            this.age = age;

        }

        public String getIDcard() {

            return IDcard;

        }

        public void setIDcard(String IDcard) {

            this.IDcard = IDcard;

        }

        public String getPlace() {

            return place;

        }

        public void setPlace(String place) {

            this.place = place;

        }

        public String getResult() {

            return result;

        }

        public void setResult(String result) {

            this.result = result;

        }

    }

    具体代码解析在下方源代码中都有注释

    源代码:

    package 抗疫小程序;

    import java.util.ArrayList;

    import java.util.Scanner;

    public class 核酸报告检测 {

        public static void main(String[] args) {

            ArrayList<People> allpeople = new ArrayList<>();//创建人集合,用于存放人对象

            //展示系统首页

            while (true) {

                System.out.println("-------------------核酸报告查询系统---------------------");

                System.out.println("1.核酸报告查询入口~");

                System.out.println("2.管理人员登录入口~");

                Scanner sc = new Scanner(System.in);

                System.out.println("请您选择操作:");

                int command = sc.nextInt();

                switch (command) {

                    case 1:

                        //结果查询入口

                        jieguo(allpeople, sc);

                        break;

                    case 2:

                        //管理人员入口

                        guanli(sc, allpeople);

                        break;

                    default:

                        System.out.println("对不起,您输入的命令有误,请重新输入:");

                }

            }

        }

        //核酸结果查询方法

        private static void jieguo(ArrayList<People> allpeople, Scanner sc) {

            while (true) {

                System.out.println("-------------------核酸结果查询---------------------");

                System.out.println("请输入查询人身份证号:");

                int IDcard = sc.nextInt();

                People people = getbyIDcard(allpeople, IDcard);

                if (people != null) {

                    //核实身份,确认姓氏

                    while (true) {

                        String name = people.getName();

                        String tip = "*" + name.substring(1);

                        System.out.println("请您输入" + tip + "的姓氏以核实身份");

                        String name1 = sc.next();

                        //认证姓氏是否正确

                        if (name.startsWith(name1)) {

                            //一致,认证成功,开始查询结果;

                            showjieguo(people);

                            return;

                        } else {

                            System.out.println("认证失败~");

                        }

                    }

                } else {

                    System.out.println("对不起,未查到该人信息或身份证号输入有误~");

                }

            }

        }

        //展示被检测人信息

        private static void showjieguo(People people) {

            System.out.println("-------------------查询信息如下---------------------");

            System.out.println("姓名:" + people.getName());

            System.out.println("性别:" + people.getSex());

            System.out.println("年龄:" + people.getAge());

            System.out.println("身份证号:" + people.getIDcard());

            System.out.println("检测地点:" + people.getPlace());

            System.out.println("检测结果:" + people.getResult());

            return;

        }

        //管理员入口方法

        private static void guanli(Scanner sc, ArrayList<People> allpeople) {

            //定义工作人员管理账号(用于录入被测人员结果信息)

            String okzhanghao = "857857";

            String okmima = "666666";

            while (true) {

                System.out.println("请您输入管理员账号:");

                String zhanghao = sc.next();

                //判断账号是否正确

                if (zhanghao.equals(okzhanghao)) {

                    //账号一致,判断密码

                    while (true) {

                        System.out.println("请您输入管理员密码:");

                        String mima = sc.next();

                        if (mima.equals(okmima)) {

                            //密码一致,登陆成功

                            System.out.println("认证成功,欢迎进入管理员界面");

                            show(sc, allpeople);//管理员操作界面

                            return;//退出管理员登陆方法

                        } else {

                            System.out.println("密码输入错误,请重新输入:");

                        }

                    }

                } else {

                    System.out.println("对不起,您输入的账号有误~");

                }

            }

        }

        //管理员操作界面展示方法

        private static void show(Scanner sc, ArrayList<People> allpeople) {

            while (true) {

                System.out.println("-------------------管理员操作界面---------------------");

                System.out.println("1.录入被检测人信息");

                System.out.println("2.修改被检测人信息");

                System.out.println("3.删除被检测人信息");

                System.out.println("4.退出");

                System.out.println("请选择操作:");

                int command = sc.nextInt();

                switch (command) {

                    case 1:

                        //录入信息

                        luru(allpeople, sc);

                        break;

                    case 2:

                        //修改信息

                        xiugai(allpeople, sc);

                        break;

                    case 3:

                        //删除信息

                        shanchu(allpeople, sc);

                        break;

                    case 4:

                        //退出

                        System.out.println("退出成功,谢谢~");

                        return;//跳出当前方法

                    default:

                        System.out.println("您输入的命令有误,请重新输入:");

                }

            }

        }

        //删除方法

        private static void shanchu(ArrayList<People> allpeople, Scanner sc) {

            System.out.println("--------删除被检测人信息-----------");

            while (true) {

                System.out.println("请输入被删除人身份证号");

                int IDcard = sc.nextInt();

                People people = getbyIDcard(allpeople, IDcard);

                if (people != null) {

                    //查到该人信息,删除

                    allpeople.remove(people);

                    System.out.println("您好,该人信息已从系统删除~~");

                    return;

                } else {

                    //未查到信息

                    System.out.println("未找到该人,请检查身份证号是否输入正确");

                }

            }

        }

        //修改信息方法

        private static void xiugai(ArrayList<People> allpeople, Scanner sc) {

            while (true) {

                System.out.println("--------修改被检测人信息-----------");

                System.out.println("请输入被修改人身份证号:");

                int IDcard = sc.nextInt();

                //判断身份证号是否录入

                //根据身份证号去查询人类的对象

                People people = getbyIDcard(allpeople, IDcard);//调用方法

                if (people == null) {

                    System.out.println("对不起,查无此人,请重新输入");

                }

                if (people != null) {

                    //查到了

                    System.out.println("请重新编辑该人信息");

                    System.out.println("请输入被检测人姓名:");

                    String name = sc.next();

                    people.setName(name);

                    System.out.println("请输入被检测人姓别:");

                    String sex = sc.next();

                    people.setSex(sex);

                    System.out.println("请输入被检测人年龄:");

                    int age = sc.nextInt();

                    people.setAge(age);

                    System.out.println("请输入被检测人检测地点:");

                    String place = sc.next();

                    people.setPlace(place);

                    System.out.println("请输入被检测人检测结果:");

                    String result = sc.next();

                    people.setResult(result);

                    System.out.println("信息修改完成~~当前信息如下:");

                    showjieguo(people);

                    return;//退出当前方法

                }

            }

        }

        //根据身份证号查询一个对象出来

        private static People getbyIDcard(ArrayList<People> allpeople, int IDcard) {

            for (int i = 0; i < allpeople.size(); i++) {

                People people = allpeople.get(i);

                if (people.getIDcard() == IDcard) {

                    return people;

                }

            }

            //查无此人

            return null;

        }

        //录入被检测人信息方法

        private static void luru(ArrayList<People> allpeople, Scanner sc) {

            System.out.println("--------录入被检测人信息-----------");

            //新建一个人类对象,用于封装信息

            People people = new People();

            //录入当前这个账户信息,注入到账户对象中去

            System.out.println("请输入被检测人姓名:");

            String name = sc.next();

            people.setName(name);

            System.out.println("请输入被检测人姓别:");

            String sex = sc.next();

            people.setSex(sex);

            System.out.println("请输入被检测人年龄:");

            int age = sc.nextInt();

            people.setAge(age);

            System.out.println("请输入被检测人身份证号:");

            int IDcard = sc.nextInt();

            people.setIDcard(IDcard);

            System.out.println("请输入被检测人检测地点:");

            String place = sc.next();

            people.setPlace(place);

            System.out.println("请输入被检测人检测结果:");

            String result = sc.next();

            people.setResult(result);

 

        //把对象添加到人集合中去

        allpeople.add(people);

        //判断先生还是女士

        if (people.getSex().equals("男")) {

            System.out.println("您好," + people.getName() + "先生的信息已录入成功");

            return;

        }

        if (people.getSex().equals("女")) {

            System.out.println("您好," + people.getName() + "女士的信息已录入成功");

            return;

        }

    }

}

  • 6
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值