天天看點

企業員工管理系統 六:UI層#私藏項目實操分享#

public class EEMS {

    private static ManagerController managerController = new ManagerController();
    private static DeptController deptController = new DeptController();
    private static EmpController empController = new EmpController();

    public static void main(String[] args) {
        EEMS eems = new EEMS();

        Scanner scanner = new Scanner(System.in);

        boolean loginRes = managerController.login(scanner);
        if(loginRes) {
            boolean flag = true;
            while (flag) {
                eems.mainMenu();
                System.out.println("請選擇,輸入q退出");
                String op = scanner.next();
                switch (op) {
                case "1":
                    eems.deptMenu(scanner);
                    break;
                case "2":
                    eems.empMenu(scanner);
                    break;
                case "q":
                    flag = false;
                    System.out.println("exit");
                    break;
                default:
                    System.out.println("輸入錯誤");
                    break;
                }
            }
        }else {
            System.out.println("重新登陸");
        }

        if (scanner != null) {
            scanner.close();
        }
    }

    private void mainMenu() {
        System.out.println("=========================");
        System.out.println("1 部門管理");
        System.out.println("2 員工管理");
        System.out.println("=========================");
    }

    private void empMenu(Scanner scanner) {
        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("=========================");
        int op = scanner.nextInt();
        switch (op) {
        case 1:
            try {
                empController.listAllEmp();
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        case 2:
            try {
                empController.getEmpByEmpno(scanner);
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        case 3:
            try {
                empController.getEmpByEname(scanner);
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        case 4:
            try {
                empController.getEmpByDeptno(scanner);
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        case 5:
            try {
                empController.addEmp(scanner);
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        case 6:
            try {
                empController.updateEmp(scanner);
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        case 7:
            try {
                empController.deletEmpByEmpno(scanner);
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        }
    }

    private void deptMenu(Scanner scanner) {
        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("=========================");
        int op = scanner.nextInt();
        switch (op) {
        case 1:
            try {
                deptController.listAllDept();
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        case 2:
            try {
                deptController.listDeptByDeptno(scanner);
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        case 3:
            try {
                deptController.listDeptByDname(scanner);
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        case 4:
            try {
                deptController.addDept(scanner);
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        case 5:
            try {
                deptController.updateDept(scanner);
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        case 6:
            try {
                deptController.deleteDept(scanner);
            } catch (IOException e) {
                e.printStackTrace();
            }
            break;
        }
    }
}