大二暑假第一周总结

这周就开始了小学期,这周的小学期的是算法与数据结构综合训练,总共是分为两个阶段,第一阶段是基础算法训练,第二阶段是综合算法训练。

第一阶段是基础算法演示,验收的时候非常顺利,同时参与了评优,成功评上。

第二阶段我选的是导师双选系统,然后和老师所述的题目理解有相关的出入,所以老师趁着这个机会正好让我重新整理了一下我的题目的相关要求,以我的题目要求座位明年的小学期的题目之一,以至于把那些极其简单的题目替换,这些工作我是早早的完成,然后后面就是测试自己的系统,防止出现bug。

以下是我的程序的主要代码:

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Test {
    int count = 0;
    private static List<Student> studentList = new ArrayList<Student>();
    private static List<Teacher> teacherList = new ArrayList<Teacher>();
    private static List<Shenqing> shenqingList = new ArrayList<Shenqing>();
    private static List<Shenqing> shenqingList2 = new ArrayList<Shenqing>();
    //起始初始化数据
    // static {
    // 	 studentList.add(new Student(1,"刘金玉","123456","石家庄铁道大学","软件工程"));
    // 	 studentList.add(new Student(2,"张三","123456","石家庄铁道大学","工商管理"));
    // 	 studentList.add(new Student(3,"李四","123456","石家庄铁道大学","土木工程"));

    //	  teacherList.add(new Teacher(1,"刘瑾","123456","石家庄铁道大学","软件工程"));
    //     teacherList.add(new Teacher(2,"王五","123456","北京大学","土木工程"));
    //     teacherList.add(new Teacher(3,"李六","123456","清华大学","机械制造"));
    //    teacherList.add(new Teacher(4,"赵四","123456","西湖大学","人工智能"));
    //  }


    //从文本文件中读出老师的数据
    public void teacherInit() {

        try {
            BufferedReader br = new BufferedReader(new FileReader("teacher.txt"));//构造一个BufferedReader类来读取文件
            String s = null;
            Teacher teacher = null;

            while ((s = br.readLine()) != null) {//使用readLine方法,一次读一行
                teacher = new Teacher();
                String[] temp = s.trim().split(" ");
                teacher.setId(Integer.parseInt(temp[0]));
                teacher.setPassword("123456");
                teacher.setUsername(temp[1]);
                teacher.setSchool(temp[2]);
                teacher.setMajor(temp[3]);
                teacherList.add(teacher);
            }
            br.close();
        } catch (Exception e) {
            e.printStackTrace();
        }

    }


    //从文件读出学生的信息并初始化
    public void studentInit() {

        try {
            BufferedReader br = new BufferedReader(new FileReader("student.txt"));//构造一个BufferedReader类来读取文件
            String s = null;
            Student student = null;

            while ((s = br.readLine()) != null) {//使用readLine方法,一次读一行
                student = new Student();
                String[] temp = s.trim().split(" ");
                student.setPassword("123456");
                student.setId(Integer.parseInt(temp[0]));
                student.setUsername(temp[1]);
                student.setSchool(temp[2]);
                student.setMajor(temp[3]);
                studentList.add(student);
            }
            br.close();
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

    //从文件读出申请信息并初始化
    public void shenqingInit() {

        try {
            BufferedReader br = new BufferedReader(new FileReader("shenqing.txt"));//构造一个BufferedReader类来读取文件
            String s = null;
            Shenqing shenqing = null;

            while ((s = br.readLine()) != null) {//使用readLine方法,一次读一行
                shenqing = new Shenqing();
                String[] temp = s.trim().split(" ");

                shenqing.setStudentname(temp[0]);
                shenqing.setTeachername(temp[1]);
                shenqing.setSchool(temp[2]);
                shenqing.setMajor(temp[3]);
                shenqing.setStatus(temp[4]);
                shenqingList.add(shenqing);
                shenqingList2.add(shenqing);
            }
            br.close();
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

    //系统总菜单
    public void menu1() {
        System.out.println("**********************登陆系统********************");
        System.out.println("请选择正确的方式登陆:");
        System.out.println("1.学生登陆");
        System.out.println("2.教师登陆");
        System.out.println("3.管理员登陆");
        System.out.println("4.退出登陆");
    }

    //学生的操作界面
    public void menuStudent() {
        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.退出登陆");
    }


    //学生对申请结果的查询
    public void resultScan() {
        if (shenqingList.size() == 0) {
            System.out.println("申请没有结果!!");
        } else {
            for (int i = 0; i < shenqingList.size(); i++) {
                if (studentList.get(count).getUsername().equals(shenqingList.get(i).getStudentname())) {
                    System.out.println("申请结果如下");
                    System.out.println("学生姓名:" + shenqingList.get(i).getStudentname());
                    System.out.println("导师姓名:" + shenqingList.get(i).getTeachername());
                    System.out.println("报考的学校:" + shenqingList.get(i).getSchool());
                    System.out.println("报考的专业:" + shenqingList.get(i).getMajor());
                    System.out.println("申请的状态是:" + shenqingList.get(i).getStatus());
                    System.out.println("************************************************");
                }
            }
        }
    }

    //学生修改自己的信息
    public void studentChange() {
        Scanner in = new Scanner(System.in);
        System.out.println("密码:" + studentList.get(count).getPassword());
        System.out.println("学校:" + studentList.get(count).getSchool());
        System.out.println("专业:" + studentList.get(count).getMajor());
        System.out.println("*************************************");
        System.out.println("1.密码 ");
        System.out.println("2.学校  ");
        System.out.println("3.专业  ");
        System.out.println("4.退出  ");
        System.out.println("请选择:");
        int id = in.nextInt();
        if (id == 1) {
            System.out.println("请输入要修改的内容:");
            String password = in.next();
            studentList.get(count).setPassword(password);
        } else if (id == 2) {
            System.out.println("请输入要修改的内容:");
            String school = in.next();
            studentList.get(count).setSchool(school);
        } else if (id == 3) {
            System.out.println("请输入要修改的内容:");
            String major = in.next();
            studentList.get(count).setMajor(major);
        } else {

        }

    }

    //学生对导师信息的浏览

    public void studentScan() {
        Scanner in = new Scanner(System.in);
        System.out.println("*************************************");
        System.out.println("1.所有导师 ");
        System.out.println("2.按专业查询  ");
        System.out.println("3.按学校查询  ");
        System.out.println("4.退出");
        System.out.println("请选择:");
        int id = in.nextInt();

        if (id == 1) {
            for (int i = 0; i < teacherList.size(); i++) {
                System.out.print(teacherList.get(i).getId() + "  ");
                System.out.print(teacherList.get(i).getUsername() + "  ");
                System.out.print(teacherList.get(i).getSchool() + "  ");
                System.out.println(teacherList.get(i).getMajor());
            }
        }
        if (id == 2) {
            System.out.println("请输入选择的专业");
            String major = in.next();
            List<Teacher> list = new ArrayList<Teacher>();
            // String major = studentList.get(count).getMajor();
            for (int i = 0; i < teacherList.size(); i++) {
                if (major.equals(teacherList.get(i).getMajor())) {
                    System.out.print(teacherList.get(i).getId() + "  ");
                    System.out.print(teacherList.get(i).getUsername() + "  ");
                    System.out.print(teacherList.get(i).getSchool() + "  ");
                    System.out.println(teacherList.get(i).getMajor());
                }
            }
        }

        if (id == 3) {
            System.out.println("请输入选择的学校");
            String school = in.next();
            List<Teacher> list = new ArrayList<Teacher>();
            // String major = studentList.get(count).getMajor();
            for (int i = 0; i < teacherList.size(); i++) {
                if (school.equals(teacherList.get(i).getSchool())) {
                    System.out.print(teacherList.get(i).getId() + "  ");
                    System.out.print(teacherList.get(i).getUsername() + "  ");
                    System.out.print(teacherList.get(i).getSchool() + "  ");
                    System.out.println(teacherList.get(i).getMajor());
                }
            }
        } else {

        }
    }

    //向申请列表中插入申请信息
    public void majorWrite() {
        String school = null;
        String major = null;
        String teachername = null;
        int j = 1;
        Scanner in = new Scanner(System.in);
        System.out.println("可供选则的大学有:");
        System.out.println("************************");
        for (int i = 0; i < teacherList.size(); i++) {
            System.out.println(j + ":" + teacherList.get(i).getSchool());
            j++;
        }
        System.out.println("请输入要填报的大学:");
        school = in.next();
        System.out.println("可供选择的导师有");
        for (int i = 0; i < teacherList.size(); i++) {
            if (teacherList.get(i).getSchool().equals(school)) {
                System.out.println(teacherList.get(i).getUsername()+"  "+teacherList.get(i).getMajor());
            }
        }

        System.out.println("请输入选择的导师");
        teachername = in.next();
        //System.out.println("可供选择的专业有");
        for (int i = 0; i < teacherList.size(); i++) {
            if (teacherList.get(i).getSchool().equals(school) && teacherList.get(i).getUsername().equals(teachername)) {
                major=teacherList.get(i).getMajor();
            }
        }

        String studentname = studentList.get(count).getUsername();
        shenqingList.add(new Shenqing(studentname, teachername, major, school, "未审核"));
        shenqingList2.add(new Shenqing(studentname, teachername, major, school, "未审核"));
        System.out.println("填写完成~");
    }

    //老师的操作界面
    public void menuTeacher() {
        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.退出");
    }

    //老师对当前系统中申请进行浏览
    public void shenqingScan() {
        int j = 1;
        Scanner in = new Scanner(System.in);
        //设置导师只能查看当前的自己的申请
        List<Shenqing> shenqingList1 = new ArrayList<Shenqing>();
        List<Shenqing> shenqingList1_ = new ArrayList<Shenqing>();//用于志愿调整的一个辅助集合
        System.out.println("是否选择志愿调整进行浏览?(yes/no)");
        String judge = in.next();
        if (judge.equals("yes")) {
            //进行辅助集合的复制
            for (int i = 0; i < shenqingList.size(); i++) {
                if (shenqingList.get(i).getTeachername().equals(teacherList.get(count).getUsername())) {
                    shenqingList1_.add(shenqingList.get(i));
                }
            }
            //筛选与导师同一专业的学生按照申请顺序进行添加
            for (int i = 0; i < shenqingList.size(); i++) {
                if (shenqingList.get(i).getTeachername().equals(teacherList.get(count).getUsername())) {
                    for (int k = 0; k < studentList.size(); k++) {
                        if (shenqingList.get(i).getStudentname().equals(studentList.get(k).getUsername())) {
                            if (studentList.get(k).getMajor().equals(teacherList.get(count).getMajor())) {
                                shenqingList1.add(shenqingList.get(i));
                                for (int l = 0; l < shenqingList1_.size(); l++)
                                    if (shenqingList1_.get(l).getStudentname().equals(shenqingList.get(i).getStudentname())) {
                                        shenqingList1_.remove(shenqingList.get(i));
                                        break;
                                    }
                            }
                        }
                    }

                }
            }
            //将与导师非同一专业的学生按照申请顺序进行添加
            for (int i = 0; i < shenqingList1_.size(); i++) {
                shenqingList1.add(shenqingList1_.get(i));
            }
        } else {
            //申请列表中的属性   studentname,teachername,major,school,"未审核"
            for (int i = 0; i < shenqingList.size(); i++) {
                if (shenqingList.get(i).getTeachername().equals(teacherList.get(count).getUsername())) {
                    shenqingList1.add(shenqingList.get(i));
                }
            }
        }
        //判断是否输出
        if (shenqingList1.size() == 0) {
            System.out.println("没有申请!");
        } else {
            for (int i = 0; i < shenqingList1.size(); i++) {
                System.out.println("第" + j + "个:");
                System.out.println("学生姓名:" + shenqingList1.get(i).getStudentname());
                System.out.println("导师姓名:" + shenqingList1.get(i).getTeachername());
                System.out.println("报考的学校:" + shenqingList1.get(i).getSchool());
                System.out.println("报考的专业:" + shenqingList1.get(i).getMajor());
                System.out.println("申请的状态是:" + shenqingList1.get(i).getStatus());
                System.out.println("************************************************");
                j++;
            }
        }
    }

    //老师对当前申请的审核
    public void teacherShenhe() {
        int j = 1;
        Scanner in = new Scanner(System.in);
        //设置导师只能查看当前的自己的申请
        List<Shenqing> shenqingList1 = new ArrayList<Shenqing>();
        //申请列表中的属性   studentname,teachername,major,school,"未审核"
        for (int i = 0; i < shenqingList.size(); i++) {
            if (shenqingList.get(i).getTeachername().equals(teacherList.get(count).getUsername()) &&
                    shenqingList.get(i).getStatus().equals("未审核")) {
                shenqingList1.add(shenqingList.get(i));
            }
        }

        if (shenqingList1.size() == 0) {
            System.out.println("没有申请!");
        } else {
            for (int i = 0; i < shenqingList1.size(); i++) {
                System.out.println("第" + j + "个:");
                System.out.println("学生姓名:" + shenqingList1.get(i).getStudentname());
                System.out.println("导师姓名:" + shenqingList1.get(i).getTeachername());
                System.out.println("报考的学校:" + shenqingList1.get(i).getSchool());
                System.out.println("报考的专业:" + shenqingList1.get(i).getMajor());
                System.out.println("申请的状态是:" + shenqingList1.get(i).getStatus());
                System.out.println("************************************************");
                j++;
            }
        }

        //上边是先打印所有的申请
        System.out.println("请输入要审核的申请的编号:");
        int index = in.nextInt();
        if (index <= shenqingList1.size() && index >= 1) {
            System.out.println("请选择审核结果:");
            System.out.println("***************");
            System.out.println("1.通过");
            System.out.println("2.拒绝");
            System.out.println("***************");
            int result = in.nextInt();
            if (result == 1) {
                System.out.println("审核成功");
                shenqingList1.get(index - 1).setStatus("通过");
            } else if (result == 2) {
                System.out.println("审核成功");
                shenqingList1.get(index - 1).setStatus("拒绝");
            } else {
                System.out.println("输入错误");
            }
        } else {
            System.out.println("输入错误");
        }
    }

    //老师对自己信息的修改
    public void teacherChange() {
        Scanner in = new Scanner(System.in);
        System.out.println("姓名:" + teacherList.get(count).getUsername());
        System.out.println("密码:" + teacherList.get(count).getPassword());
        System.out.println("学校:" + teacherList.get(count).getSchool());
        System.out.println("专业:" + teacherList.get(count).getMajor());
        System.out.println("*************************************");
        System.out.println("1.密码 ");
        System.out.println("2.学校  ");
        System.out.println("3.专业  ");
        System.out.println("4.退出  ");
        System.out.println("请选择:");
        int id = in.nextInt();
        if (id == 1) {
            System.out.println("请输入要修改的内容:");
            String password = in.next();
            teacherList.get(count).setPassword(password);
        } else if (id == 2) {
            System.out.println("请输入要修改的内容:");
            String school = in.next();
            teacherList.get(count).setSchool(school);
        } else if (id == 3) {
            System.out.println("请输入要修改的内容:");
            String major = in.next();
            teacherList.get(count).setMajor(major);
        } else {
        }
    }

    //导出文件
    public void teacherImport() throws Exception {
        File file = new File("shenqing.txt");
        if (!file.exists()) {
            file.createNewFile();
        }

        FileWriter fileWriter = new FileWriter(file);
        for (int i = 0; i < shenqingList.size(); i++) {
            String data = shenqingList.get(i).getStudentname() + " " + shenqingList.get(i).getTeachername() +
                    " " + shenqingList.get(i).getSchool() + " " + shenqingList.get(i).getMajor() + " " + shenqingList.get(i).getStatus() + "\r\n";
            fileWriter.write(data);
        }
        fileWriter.close();
    }

    //老师对学生申请的筛选过程
    public void select() {
        int j = 1;
        Scanner in = new Scanner(System.in);
        //设置导师只能查看当前的自己的申请
        List<Shenqing> shenqingList1 = new ArrayList<Shenqing>();
        //申请列表中的属性   studentname,teachername,major,school,"未审核"
        for (int i = 0; i < shenqingList.size(); i++) {
            if (shenqingList.get(i).getTeachername().equals(teacherList.get(count).getUsername())) {
                shenqingList1.add(shenqingList.get(i));
            }
        }
        if (shenqingList1.size() == 0) {
            System.out.println("没有申请!");
        } else {
            System.out.println("请选择筛选的条件");
            System.out.println("******************");
            System.out.println("1.姓名");
            System.out.println("2.审核状态");
            System.out.println("******************");
            int choose = in.nextInt();
            if (choose == 1) {
                System.out.println("请输入想要查询的学生姓名");
                String name = in.next();
                for (int i = 0; i < shenqingList1.size(); i++) {
                    if (!shenqingList1.get(i).getStudentname().equals(name)) {
                        {
                            shenqingList1.remove(i);
                            i--;
                        }
                    }
                }
                if (shenqingList1.size() == 0) {
                    System.out.println("没有符合标准的学生!");
                } else {
                    for (int i = 0; i < shenqingList1.size(); i++) {
                        System.out.println("第" + j + "个:");
                        System.out.println("学生姓名:" + shenqingList1.get(i).getStudentname());
                        System.out.println("导师姓名:" + shenqingList1.get(i).getTeachername());
                        System.out.println("报考的学校:" + shenqingList1.get(i).getSchool());
                        System.out.println("报考的专业:" + shenqingList1.get(i).getMajor());
                        System.out.println("申请的状态是:" + shenqingList1.get(i).getStatus());
                        System.out.println("************************************************");
                        j++;
                    }
                }

            } else if (choose == 2) {
                System.out.println("请输入想要查询的志愿审核状态");
                String status = in.next();
                //System.out.println("长度是"+shenqingList1.size());
                for (int i = 0; i < shenqingList1.size(); i++) {
                    if (!shenqingList1.get(i).getStatus().equals(status)) {
                        {
                            shenqingList1.remove(i);
                            i--;
                        }
                    }
                }
                if (shenqingList1.size() == 0) {
                    System.out.println("没有符合标准的学生!");
                } else {
                    for (int i = 0; i < shenqingList1.size(); i++) {
                        System.out.println("第" + j + "个:");
                        System.out.println("学生姓名:" + shenqingList1.get(i).getStudentname());
                        System.out.println("导师姓名:" + shenqingList1.get(i).getTeachername());
                        System.out.println("报考的学校:" + shenqingList1.get(i).getSchool());
                        System.out.println("报考的专业:" + shenqingList1.get(i).getMajor());
                        System.out.println("申请的状态是:" + shenqingList1.get(i).getStatus());
                        System.out.println("************************************************");
                        j++;
                    }
                }

            } else {
                System.out.println("输入错误");
            }
        }

    }

    //打印管理员的菜单
    public void menuAdmin() {
        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("7.删除学生");
        System.out.println("8.删除导师");
        System.out.println("9.退出");

    }

    //管理员打印老师的所有信息
    public void teacherScan() {
        System.out.println("ID" + "    " + "姓名" + "    " + "学校" + "    " + "专业");
        for (int i = 0; i < teacherList.size(); i++) {
            System.out.print(teacherList.get(i).getId() + "  ");
            System.out.print(teacherList.get(i).getUsername() + "  ");
            System.out.print(teacherList.get(i).getSchool() + "  ");
            System.out.println(teacherList.get(i).getMajor());
        }
    }

    //管理员打印所有学生的信息
    public void studentScan1() {
        System.out.println("ID" + "    " + "姓名" + "    " + "学校" + "    " + "专业");
        for (int i = 0; i < studentList.size(); i++) {
            System.out.print(studentList.get(i).getId() + "  ");
            System.out.print(studentList.get(i).getUsername() + "  ");
            System.out.print(studentList.get(i).getSchool() + "  ");
            System.out.println(studentList.get(i).getMajor());
        }
    }

    //管理员对所有申请的信息浏览
    public void shenqingScan1() {
        System.out.println("学生姓名" + "    " + "老师姓名" + "    " + "学校" + "    " + "专业" + "    " + "状态");
        for (int i = 0; i < shenqingList.size(); i++) {
            System.out.print(shenqingList.get(i).getStudentname() + "  ");
            System.out.print(shenqingList.get(i).getTeachername() + "  ");
            System.out.print(shenqingList.get(i).getSchool() + "  ");
            System.out.print(shenqingList.get(i).getMajor());
            System.out.println(shenqingList.get(i).getStatus());
        }
    }

    //管理员导出文件
    public void adminImport() throws Exception {
        Scanner in = new Scanner(System.in);
        System.out.println("***********************");
        System.out.println("请选择要导出的类别");
        System.out.println("1.导师信息");
        System.out.println("2.学生信息");
        System.out.println("3.申请信息");
        System.out.println("请选择:");
        int choose = in.nextInt();
        if (choose == 1) {
            File file = new File("teacher.txt");
            if (!file.exists()) {
                file.createNewFile();
            }

            FileWriter fileWriter = new FileWriter(file);
            for (int i = 0; i < teacherList.size(); i++) {
                String data = teacherList.get(i).getId() + " " + teacherList.get(i).getUsername() +
                        " " + teacherList.get(i).getSchool() + " " + teacherList.get(i).getMajor() + "  " + "\r\n";
                fileWriter.write(data);
            }
            fileWriter.close();
        } else if (choose == 3) {
            File file = new File("shenqing.txt");
            if (!file.exists()) {
                file.createNewFile();
            }

            FileWriter fileWriter = new FileWriter(file);

            for (int i = 0; i < shenqingList.size(); i++) {
                String data = shenqingList.get(i).getStudentname() + " " + shenqingList.get(i).getTeachername() +
                        " " + shenqingList.get(i).getSchool() + " " + shenqingList.get(i).getMajor() + " " + shenqingList.get(i).getStatus() + "\r\n";
                fileWriter.write(data);
            }
            fileWriter.close();
        } else {
            File file = new File("student.txt");
            if (!file.exists()) {
                file.createNewFile();
            }

            FileWriter fileWriter = new FileWriter(file);

            for (int i = 0; i < studentList.size(); i++) {
                String data = studentList.get(i).getId() + " " + studentList.get(i).getUsername() +
                        " " + studentList.get(i).getSchool() + " " + studentList.get(i).getMajor() + "\r\n";
                fileWriter.write(data);
            }
            fileWriter.close();
        }
    }

    //管理员添加学生信息
    public void addStudent() throws Exception {
        Scanner in = new Scanner(System.in);
        int id = studentList.size() + 1;
        Student student = new Student();
        student.setId(id);
        System.out.println("***********************");
        System.out.println("请输入学生的姓名");
        String name = in.next();
        student.setUsername(name);
        System.out.println("请输入学生所在的学校");
        String school = in.next();
        student.setSchool(school);
        System.out.println("请输入学生所读的专业");
        String major = in.next();
        student.setMajor(major);
        studentList.add(student);
        File file = new File("student.txt");
        if (!file.exists()) {
            file.createNewFile();
        }

        FileWriter fileWriter = new FileWriter(file);

        for (int i = 0; i < studentList.size(); i++) {
            String data = studentList.get(i).getId() + " " + studentList.get(i).getUsername() +
                    " " + studentList.get(i).getSchool() + " " + studentList.get(i).getMajor() + "\r\n";
            fileWriter.write(data);
        }
        fileWriter.close();
        System.out.println("信息添加成功~~");
    }

    //管理员添加导师信息
    public void addTeacher() throws Exception {
        Scanner in = new Scanner(System.in);
        int id = teacherList.size() + 1;
        Teacher teacher = new Teacher();
        teacher.setId(id);
        System.out.println("***********************");
        System.out.println("请输入导师的姓名");
        String name = in.next();
        teacher.setUsername(name);
        System.out.println("请输入导师所在的学校");
        String school = in.next();
        teacher.setSchool(school);
        System.out.println("请输入导师所教授的专业");
        String major = in.next();
        teacher.setMajor(major);
        teacherList.add(teacher);
        File file = new File("teacher.txt");
        if (!file.exists()) {
            file.createNewFile();
        }

        FileWriter fileWriter = new FileWriter(file);
        for (int i = 0; i < teacherList.size(); i++) {
            String data = teacherList.get(i).getId() + " " + teacherList.get(i).getUsername() +
                    " " + teacherList.get(i).getSchool() + " " + teacherList.get(i).getMajor() + "  " + "\r\n";
            fileWriter.write(data);
        }
        fileWriter.close();
        System.out.println("信息添加成功~~");
    }

    //管理员删除学生信息
    public void deleteStudent() throws Exception {
        Scanner in = new Scanner(System.in);
        System.out.println("***********************");
        System.out.println("请输入想要删除的学生姓名");
        String name = in.next();
        for(int i=0;i<studentList.size();i++){
            if(studentList.get(i).getUsername().equals(name)){
                studentList.remove(i);
                break;
            }
        }
        File file = new File("student.txt");
        if (!file.exists()) {
            file.createNewFile();
        }

        FileWriter fileWriter = new FileWriter(file);

        for (int i = 0; i < studentList.size(); i++) {
            String data = studentList.get(i).getId() + " " + studentList.get(i).getUsername() +
                    " " + studentList.get(i).getSchool() + " " + studentList.get(i).getMajor() + "\r\n";
            fileWriter.write(data);
        }
        fileWriter.close();
        System.out.println("信息删除成功~~");
    }

    //管理员删除导师信息
    public void deleteTeacher() throws Exception {
        Scanner in = new Scanner(System.in);
        System.out.println("***********************");
        System.out.println("请输入想要删除的导师姓名");
        String name = in.next();
        for(int i=0;i<teacherList.size();i++){
            if(teacherList.get(i).getUsername().equals(name)){
                teacherList.remove(i);
                break;
            }
        }
        File file = new File("teacher.txt");
        if (!file.exists()) {
            file.createNewFile();
        }

        FileWriter fileWriter = new FileWriter(file);
        for (int i = 0; i < teacherList.size(); i++) {
            String data = teacherList.get(i).getId() + " " + teacherList.get(i).getUsername() +
                    " " + teacherList.get(i).getSchool() + " " + teacherList.get(i).getMajor() + "  " + "\r\n";
            fileWriter.write(data);
        }
        fileWriter.close();
        System.out.println("信息删除成功~~");
    }

    //登陆的操作
    public Boolean login(int id) {
        Scanner in = new Scanner(System.in);
        System.out.println("请输入用户名:");
        String username = in.next();
        System.out.println("请输入密码");
        String password = in.next();
        boolean flag = false;
        if (id == 1) {//学生登陆
            System.out.println("学生的数量是" + studentList.size());
            for (int i = 0; i < studentList.size(); i++) {
                if (studentList.get(i).getUsername().equals(username)) {
                    if (studentList.get(i).getPassword().equals(password)) {
                        flag = true;
                        count = i;
                        System.out.println("登陆的是第" + (count + 1) + "个");
                    }
                }
            }
        } else if (id == 2) {//老师登陆
            for (int i = 0; i < teacherList.size(); i++) {
                if (teacherList.get(i).getUsername().equals(username)) {
                    if (teacherList.get(i).getPassword().equals(password)) {
                        flag = true;
                        count = i;
                        System.out.println("登陆的是第" + (count + 1) + "个");
                    }
                }
            }

        } else {
            if (username.equals("admin") && password.equals("admin")) {
                flag = true;
            }
        }
        if (flag == true) {
            System.out.println("登陆成功");
        } else {
            System.out.println("登陆失败");
            System.out.println("正在返回系统首页中...");
        }
        return flag;
    }


    public static void main(String[] args) throws Exception {
        boolean flag = false;
        Scanner in = new Scanner(System.in);
        Test test = new Test();
        //初始化数据
        test.shenqingInit();
        test.studentInit();
        test.teacherInit();
        test.menu1();
        System.out.println("请选择");
        int first = in.nextInt();
        while (first < 4 && first > 0) {      //登陆进去,根据身份进入不同的界面
            if (first == 1) {
                flag = test.login(1);
                if (flag == true) {
                    test.menuStudent();
                    System.out.println("请输入操作");
                    int studentSecond = in.nextInt();
                    while (studentSecond < 5 && studentSecond > 0) {//学生登陆系统后的具体操作
                        if (studentSecond == 1) {    //对信息的修改
                            test.studentChange();
                            test.menuStudent();
                            System.out.println("请选择");
                            studentSecond = in.nextInt();
                        } else if (studentSecond == 3) {         //对导师进行查询
                            test.studentScan();
                            test.menuStudent();
                            System.out.println("请选择");
                            studentSecond = in.nextInt();
                        } else if (studentSecond == 2) {     //学生进行志愿的填报
                            test.majorWrite();
                            test.menuStudent();
                            System.out.println("请选择");
                            studentSecond = in.nextInt();
                        } else if (studentSecond == 4) {
                            test.resultScan();
                            test.menuStudent();
                            System.out.println("请选择");
                            studentSecond = in.nextInt();
                        } else {

                        }
                    }
                } else {
                    flag = false;
                }
                test.menu1();
                System.out.println("请输入操作");
                first = in.nextInt();
            } else if (first == 2) {                //老师的操作界面
                flag = test.login(2);
                if (flag == true) {
                    test.menuTeacher();
                    System.out.println("请输入操作");
                    int teacherSecond = in.nextInt();
                    while (teacherSecond < 6 && teacherSecond > 0) {//老师登陆系统后的具体操作
                        if (teacherSecond == 1) {    //对申请的浏览
                            test.shenqingScan();
                            test.menuTeacher();
                            System.out.println("请选择");
                            teacherSecond = in.nextInt();
                        } else if (teacherSecond == 2) {         //导师对申请的审核
                            test.teacherShenhe();
                            test.menuTeacher();
                            System.out.println("请选择");
                            teacherSecond = in.nextInt();
                        } else if (teacherSecond == 3) {     //导出文件
                            test.teacherImport();
                            test.menuTeacher();
                            System.out.println("请选择");
                            teacherSecond = in.nextInt();
                        } else if (teacherSecond == 5) {      //老师对学生的条件查询
                            test.select();
                            test.menuTeacher();
                            System.out.println("请选择");
                            teacherSecond = in.nextInt();
                        } else if (teacherSecond == 4) {         //导师对自己信息的修改
                            test.teacherChange();
                            test.menuTeacher();
                            System.out.println("请选择");
                            teacherSecond = in.nextInt();
                        } else {
                            break;
                        }
                    }
                } else {
                    flag = false;
                }
                test.menu1();
                System.out.println("请输入操作");
                first = in.nextInt();
            } else {
                flag = test.login(3);     //管理员登陆
                if (flag == true) {
                    test.menuAdmin();
                    System.out.println("请输入操作");
                    int adminSecond = in.nextInt();
                    while (adminSecond < 9 && adminSecond > 0) {//管理员登陆系统后的具体操作
                        if (adminSecond == 1) {    //对老师信息的浏览
                            test.teacherScan();
                            test.menuAdmin();
                            System.out.println("请选择");
                            adminSecond = in.nextInt();
                        } else if (adminSecond == 2) {         //管理员对学生信息的浏览
                            test.studentScan1();
                            test.menuAdmin();
                            System.out.println("请选择");
                            adminSecond = in.nextInt();
                        } else if (adminSecond == 3) {     //管理员对申请信息的浏览
                            test.shenqingScan1();
                            test.menuAdmin();
                            System.out.println("请选择");
                            adminSecond = in.nextInt();
                        } else if (adminSecond == 4) {     //管理员对导师和申请的文件的导出
                            test.adminImport();
                            test.menuAdmin();
                            System.out.println("请选择");
                            adminSecond = in.nextInt();
                        } else if (adminSecond == 5) {        //管理员添加学生信息
                            test.addStudent();
                            test.menuAdmin();
                            System.out.println("请选择");
                            adminSecond = in.nextInt();
                        } else if (adminSecond == 6) {         //管理员添加导师信息
                            test.addTeacher();
                            test.menuAdmin();
                            System.out.println("请选择");
                            adminSecond = in.nextInt();
                        } else if (adminSecond == 7) {        //管理员添加学生信息
                            test.deleteStudent();
                            test.menuAdmin();
                            System.out.println("请选择");
                            adminSecond = in.nextInt();
                        } else if (adminSecond == 8) {         //管理员添加导师信息
                            test.deleteTeacher();
                            test.menuAdmin();
                            System.out.println("请选择");
                            adminSecond = in.nextInt();
                        }else {
                            break;
                        }
                    }
                } else {
                    flag = false;
                }
                test.menu1();
                System.out.println("请输入操作");
                first = in.nextInt();
            }
        }
    }
}

这周三也是端午节,也出去玩了,玩了一整天,虽说有点累,但是还是非常开心的。

这个星期不仅练习了算法编程,还复习了整个mis系统的编程。可以说是收获颇丰!

 

posted @ 2023-06-24 19:37  一统天下。  阅读(9)  评论(0编辑  收藏  举报