public static void CollectInput() { Console.Clear(); while (true) { Console.WriteLine("Please enter the first name of the new employee"); Console.Write("> "); string firstName = Console.ReadLine(); Console.WriteLine(); Console.WriteLine("Please enter the last name of the new employee"); Console.Write("> "); string lastName = Console.ReadLine(); Console.WriteLine(); Console.WriteLine("Please enter the departmentId of the new employee"); Console.Write("> "); int deptId = Int32.Parse(Console.ReadLine()); Employee newEmployee = new Employee { FirstName = firstName, LastName = lastName, DepartmentId = deptId }; EmployeeRepository employees = new EmployeeRepository(); employees.AddEmployee(newEmployee); Console.WriteLine("Successfully added the new employee"); Console.WriteLine(); Console.WriteLine($"Press any key to return to the previous menu"); Console.ReadLine(); Console.Clear(); break; } }
static void Main(string[] args) // ******************** GET ALL ******************** { DepartmentRepository departmentRepo = new DepartmentRepository(); Console.WriteLine("Getting All Departments:"); Console.WriteLine(); List <Department> allDepartments = departmentRepo.GetAllDepartments(); foreach (Department dept in allDepartments) { Console.WriteLine($"{dept.Id} {dept.DeptName}"); } EmployeeRepository employeeRepo = new EmployeeRepository(); Console.WriteLine(); Console.WriteLine("Getting All Employees:"); Console.WriteLine(); List <Employee> allEmployees = employeeRepo.GetAllEmployees(); foreach (Employee e in allEmployees) { Console.WriteLine($"{e.Id} {e.FirstName} {e.LastName} {e.DepartmentId}"); } // ******************** GET ONE ******************** Console.WriteLine("----------------------------"); Console.WriteLine("getting DEPARTMENT with id 1"); Department singleDepartment = departmentRepo.GetDepartmentById(1); Console.WriteLine($"{singleDepartment.Id} {singleDepartment.DeptName}"); Console.WriteLine("----------------------------"); Console.WriteLine("getting EMPLOYEE with id 1"); Employee singleEmployee = employeeRepo.getEmployeeById(1); Console.WriteLine($"{singleEmployee.Id} {singleEmployee.FirstName} {singleEmployee.LastName} {singleEmployee.DepartmentId}"); // ******************** GET ALL + DEPT ******************** DepartmentRepository departmentRepoAll = new DepartmentRepository(); Console.WriteLine(); Console.WriteLine("---------------------------------------"); Console.WriteLine("Getting All Employees With Departments:"); List <Employee> allEmployeesAll = employeeRepo.GetAllEmployeesWithDepartment(); foreach (Employee e in allEmployeesAll) { Console.WriteLine($"{e.Id} {e.FirstName} {e.LastName} - {e.Department.DeptName}"); } // ******************** ADD ******************** Department legalDept = new Department { DeptName = "Legal" }; departmentRepo.AddDepartment(legalDept); // departmentRepo has been initialized in line 13 Console.WriteLine("-------------------------------"); Console.WriteLine("Added the new Legal Department!"); Employee cherkesky = new Employee { FirstName = "Guy", LastName = "Cherkesky", DepartmentId = 2 }; employeeRepo.AddEmployee(cherkesky); // employeeRepo has been initialized in line 25 Console.WriteLine("-------------------------------"); Console.WriteLine("Added the new talented Employee!"); }
static void Main(string[] args) { DepartmentRepository departmentRepo = new DepartmentRepository(); EmployeeRepository employeeRepo = new EmployeeRepository(); Console.WriteLine("Getting All Departments:"); Console.WriteLine(); List <Department> allDepartments = departmentRepo.GetAllDepartments(); List <Employee> allEmployees = employeeRepo.GetAllEmployees(); foreach (Department dept in allDepartments) { Console.WriteLine($"{dept.Id}.) {dept.DeptName}"); } Console.WriteLine("----------------------------"); Console.WriteLine("Getting Department with Id 1"); Department singleDepartment = departmentRepo.GetDepartmentById(1); Console.WriteLine($"{singleDepartment.Id}.) {singleDepartment.DeptName}"); Console.WriteLine("CREATE"); Console.WriteLine("What's the name of the new Department?"); var newDeptName = Console.ReadLine(); Department newDept = new Department { DeptName = newDeptName }; departmentRepo.AddDepartment(newDept); Console.WriteLine("-------------------------------"); Console.WriteLine($"Added the new {newDept.DeptName} Department!"); Console.WriteLine("----------------------------"); Console.WriteLine("UPDATE"); Console.WriteLine("which Department (use number)?"); var updatedDepartments = departmentRepo.GetAllDepartments(); foreach (Department dept in updatedDepartments) { Console.WriteLine($"{dept.Id}.) {dept.DeptName}"); } var updatedDepartmentId = int.Parse(Console.ReadLine()); Department departmentToUpdate = departmentRepo.GetDepartmentById(updatedDepartmentId); Console.WriteLine($"Update {departmentToUpdate.DeptName} department Name."); departmentToUpdate.DeptName = Console.ReadLine(); departmentRepo.UpdateDepartment(updatedDepartmentId, departmentToUpdate); Console.WriteLine("----------------------------"); Console.WriteLine("DELETE"); Console.WriteLine("which Department (use number)?"); foreach (Department dept in updatedDepartments) { Console.WriteLine($"{dept.Id}.) {dept.DeptName}"); } var deleteDepartmentId = int.Parse(Console.ReadLine()); Department departmentToDelete = departmentRepo.GetDepartmentById(deleteDepartmentId); Console.WriteLine($"Deleting {departmentToDelete.DeptName}"); departmentRepo.DeleteDepartment(deleteDepartmentId); Console.WriteLine("Getting all Employees"); foreach (Employee emp in allEmployees) { Console.WriteLine($"{emp.Id}.) {emp.FirstName} {emp.LastName}"); } Console.WriteLine("CREATE"); Console.WriteLine("What is their First Name?"); var newEmployeeFirstName = Console.ReadLine(); Console.WriteLine("what is their Last Name?"); var newEmployeeLastName = Console.ReadLine(); Console.WriteLine("Which department do they work in?"); foreach (Department dept in allDepartments) { Console.WriteLine($"{dept.Id}.) {dept.DeptName}"); } var newEmployeeDepartmentId = int.Parse(Console.ReadLine()); Employee newEmployee = new Employee { FirstName = newEmployeeFirstName, LastName = newEmployeeLastName, DepartmentId = newEmployeeDepartmentId }; employeeRepo.AddEmployee(newEmployee); Console.WriteLine("----------------------------"); Console.WriteLine("UPDATE"); Console.WriteLine("which Employee (use number)?"); foreach (Employee emp in allEmployees) { Console.WriteLine($"{emp.Id}.) {emp.FirstName} {emp.LastName}"); } var updatedEmployeeId = int.Parse(Console.ReadLine()); Employee employeeToUpdate = employeeRepo.GetEmployeeById(updatedEmployeeId); Console.WriteLine($"Update {employeeToUpdate.FirstName} {employeeToUpdate.LastName} first name."); employeeToUpdate.FirstName = Console.ReadLine(); Console.WriteLine($"Update {employeeToUpdate.FirstName} {employeeToUpdate.LastName} last name."); employeeToUpdate.LastName = Console.ReadLine(); Console.WriteLine($"Update {employeeToUpdate.FirstName} {employeeToUpdate.LastName}'s department."); employeeToUpdate.DepartmentId = int.Parse(Console.ReadLine()); employeeRepo.UpdateEmployee(updatedEmployeeId, employeeToUpdate); Console.WriteLine("DELETE"); Console.WriteLine("which employee (use number)?"); List <Employee> updatedAllEmployees = employeeRepo.GetAllEmployees(); foreach (Employee emp in updatedAllEmployees) { Console.WriteLine($"{emp.Id}.) {emp.FirstName} {emp.LastName}"); } var deleteEmployeeId = int.Parse(Console.ReadLine()); Employee employeeToDelete = employeeRepo.GetEmployeeById(deleteEmployeeId); Console.WriteLine($"Deleting {employeeToDelete.FirstName} {employeeToDelete.LastName}"); employeeRepo.DeleteEmployee(deleteEmployeeId); }
static void Main(string[] args) { while (true) { /// users chooses from one of these prompts Console.WriteLine("Choose from one of the options below?"); Console.WriteLine("--------------------------------------"); Console.WriteLine("1. Show all deparments"); Console.WriteLine("2. Show specific department by Id"); Console.WriteLine("3. Add new department"); Console.WriteLine("4. Update department Id"); Console.WriteLine("5. Delete department by Id"); Console.WriteLine("6. Show all employees"); Console.WriteLine("7. Show specific employee by Id"); Console.WriteLine("8. Add a new employee"); Console.WriteLine("9. Update an employee"); Console.WriteLine("10. Delete an employee"); var choice = Console.ReadLine(); DepartmentRepository departments = new DepartmentRepository(); EmployeeRepository employees = new EmployeeRepository(); switch (Int32.Parse(choice)) { case 1: Console.WriteLine("Getting all Departments:"); Console.WriteLine(); List <Department> allDepartments = departments.GetAllDepartments(); foreach (Department dept in allDepartments) { Console.WriteLine($"{dept.Id} {dept.DeptName}"); } break; case 2: Console.WriteLine("Enter department Id."); var deptChoice = int.Parse(Console.ReadLine()); Console.WriteLine($"Getting department {deptChoice}"); Department singleDepartment = departments.GetDepartmentById(deptChoice); Console.WriteLine($"{singleDepartment.Id}. {singleDepartment.DeptName}"); break; case 3: Console.WriteLine("Enter the name of new department."); var deptName = Console.ReadLine(); Department newDepartment = new Department { DeptName = deptName }; departments.AddDepartment(newDepartment); Console.WriteLine($"Add new {deptName} to Departments."); break; case 4: //Console.WriteLine("Enter the name of the department you wish to update."); //var deptName = Console.ReadLine(); break; case 5: Console.WriteLine("Enter the Id of the deptarment you would like to delete."); var deleteChoice = int.Parse(Console.ReadLine()); departments.DeleteDepartment(deleteChoice); Console.WriteLine($"Department with Id of {deleteChoice} was deleted."); break; case 6: Console.WriteLine("Getting all employees"); Console.WriteLine(""); List <Employee> allEmployees = employees.GetAllEmployees(); foreach (Employee e in allEmployees) { Console.WriteLine($"{e.Id}. {e.FirstName} {e.LastName}"); } break; case 7: Console.WriteLine("Enter employee by Id."); var employeeId = int.Parse(Console.ReadLine()); Console.WriteLine($"Getting employee {employeeId}"); Employee singleEmployee = employees.GetEmployeeById(employeeId); Console.WriteLine($"{singleEmployee.Id} {singleEmployee.FirstName} {singleEmployee.LastName}"); break; case 8: Console.WriteLine("Enter the first name of new employee."); var eFirstName = Console.ReadLine(); Console.WriteLine("Enter the last name of new employee."); var eLastName = Console.ReadLine(); Console.WriteLine("Enter departmentId of new employee."); var eDeptName = int.Parse(Console.ReadLine()); Employee newEmployee = new Employee { FirstName = eFirstName, LastName = eLastName, DepartmentId = eDeptName }; employees.AddEmployee(newEmployee); Console.WriteLine($"Add new {eFirstName} {eLastName} to employees."); break; case 9: //Console.WriteLine("Enter the name of the department you wish to update."); //var deptName = Console.ReadLine(); break; case 10: Console.WriteLine("Enter the Id of the employee you would like to delete."); var deleteEmployee = int.Parse(Console.ReadLine()); employees.DeleteEmployee(deleteEmployee); Console.WriteLine($"Department with Id of {deleteEmployee} was deleted."); break; default: break; } } }
static void Main(string[] args) { while (true) { Console.WriteLine("What would you like to do?"); Console.WriteLine(""); Console.WriteLine("1. Show all departments"); Console.WriteLine("2. Show specific department by Id"); Console.WriteLine("3. Add new department"); Console.WriteLine("4. Update department information"); Console.WriteLine("5. Delete department by Id"); Console.WriteLine("6. Show all employees"); Console.WriteLine("7. Show specific employee by Id"); Console.WriteLine("8. Show all employees by department"); Console.WriteLine("9. Add new employee"); Console.WriteLine("10. Update employee information"); Console.WriteLine("11. Delete employee by Id"); var choice = Console.ReadLine(); DepartmentRepository departmentRepo = new DepartmentRepository(); EmployeeRepository employeeRepo = new EmployeeRepository(); switch (Int32.Parse(choice)) { case 1: Console.WriteLine("Getting All Departments:"); Console.WriteLine(); List <Department> allDepartments = departmentRepo.GetAllDepartments(); foreach (Department dept in allDepartments) { Console.WriteLine($"{dept.Id} {dept.DeptName}"); } break; case 2: Console.WriteLine("Enter Id of department"); var departmentChoice = int.Parse(Console.ReadLine()); Console.WriteLine($"Getting department with Id of {departmentChoice}"); Department singleDepartment = departmentRepo.GetDepartmentById(departmentChoice); Console.WriteLine($"{singleDepartment.Id} {singleDepartment.DeptName}"); break; case 3: Console.WriteLine("Enter the name of the new department"); var departmentName = Console.ReadLine(); Department newDepartment = new Department { DeptName = departmentName }; departmentRepo.AddDepartment(newDepartment); Console.WriteLine($"Added the new {departmentName} Department!"); break; case 4: Console.WriteLine("Update Department Info"); //TBD break; case 5: Console.WriteLine("Enter the Id of the department you would like to delete"); var deleteDeptChoice = int.Parse(Console.ReadLine()); departmentRepo.DeleteDepartment(deleteDeptChoice); Console.WriteLine($"Department with the Id of {deleteDeptChoice} has been deleted."); break; case 6: Console.WriteLine("Getting All Employees:"); Console.WriteLine(); List <Employee> allEmployees = employeeRepo.GetAllEmployees(); foreach (Employee emp in allEmployees) { Console.WriteLine($"{emp.FirstName} {emp.LastName}"); } break; case 7: Console.WriteLine("Enter the Id of the employee you would like to view"); var chosenEmployeeId = int.Parse(Console.ReadLine()); Employee singleEmployee = employeeRepo.GetEmployeeById(chosenEmployeeId); Console.WriteLine($"Getting Employee with Id of {chosenEmployeeId}."); Console.WriteLine($"{singleEmployee.Id} {singleEmployee.FirstName} {singleEmployee.LastName}"); break; case 8: List <Employee> allDepartmentEmployees = employeeRepo.GetAllEmployeesWithDepartment(); foreach (Employee emp in allDepartmentEmployees) { Console.WriteLine($"{emp.FirstName} {emp.LastName} - {emp.Department.DeptName}"); } break; case 9: Console.WriteLine("Enter new employee's first name"); var newEmployeeFirstName = Console.ReadLine(); Console.WriteLine("Enter new employee's last name"); var newEmployeeLastName = Console.ReadLine(); Console.WriteLine("Enter new employee's department Id"); var newEmployeeDeptId = int.Parse(Console.ReadLine()); Employee newEmployee = new Employee { FirstName = newEmployeeFirstName, LastName = newEmployeeLastName, DepartmentId = newEmployeeDeptId }; employeeRepo.AddEmployee(newEmployee); Console.WriteLine($"Added {newEmployee.FirstName} {newEmployee.LastName} as a new employee!"); break; case 10: Console.WriteLine("Update Employee Info"); //TBD break; case 11: Console.WriteLine("Enter the Id of the employee you would like to delete"); var deleteEmployeeId = int.Parse(Console.ReadLine()); employeeRepo.DeleteEmployee(deleteEmployeeId); Console.WriteLine($"Employee with the Id of {deleteEmployeeId} has been deleted"); break; default: break; } } }
static void Main(string[] args) { //Setting a new instance of the employee repository and dept repo to a variable. Remeber to use the using statement at the top! var repo = new EmployeeRepository(); var deptRepo = new DepartmentRepository(); //That both classes has method that gets all employees. Use it and store all them employees in a var. var employeeWithId2 = repo.GetEmployeeById(2); while (true) { var departments = deptRepo.GetAllDepartments(); var employees = repo.GetAllEmployees(); Console.WriteLine("Press 1 for Departments: "); Console.WriteLine("Press 2 for Employees: "); Console.WriteLine("Press 3 for Company Report: "); Console.WriteLine("Press 4 to exit: "); string option = Console.ReadLine(); if (option == "1") { Console.Clear(); Console.WriteLine("---DEPARTMENTS---"); Console.WriteLine("Press 1 to add a Department"); Console.WriteLine("Press 2 Delete a Department"); Console.WriteLine("Press 3 to return to main"); string deptOption = Console.ReadLine(); switch (Int32.Parse(deptOption)) { case 1: Console.Clear(); Console.WriteLine("Name of Department?"); var deptNameInput = Console.ReadLine(); Department newDepartment = new Department() { DeptName = deptNameInput }; deptRepo.AddDepartment(newDepartment); break; case 2: Console.Clear(); Console.WriteLine("Delete which Department?"); for (var i = 0; i < departments.Count; i++) { Console.WriteLine($"{departments[i].Id} {departments[i].DeptName}"); } var deleteDeptInput = Int32.Parse(Console.ReadLine()); deptRepo.DeleteDepartment(deleteDeptInput); break; case 3: break; default: break; } } else if (option == "2") { Console.Clear(); Console.WriteLine("---EMPLOYEES---"); Console.WriteLine("Press 1 to add an employee"); Console.WriteLine("Press 2 to release an Employee"); Console.WriteLine("Press 3 to return to main"); string empOption = Console.ReadLine(); switch (Int32.Parse(empOption)) { case 1: Console.Clear(); Console.WriteLine("First name of Employee?"); var employeeFirstNameInput = Console.ReadLine(); Console.WriteLine("Last Name of Employee?"); var employeeLastNameInput = Console.ReadLine(); Console.WriteLine("Which Department do they work in?"); foreach (var dept in departments) { Console.WriteLine($"{dept.Id} {dept.DeptName}"); } var employeeDeptChoice = Console.ReadLine(); var selectedDept = departments.Where(dept => int.Parse(employeeDeptChoice) == dept.Id).FirstOrDefault(); Employee newEmployee = new Employee() { FirstName = employeeFirstNameInput, LastName = employeeLastNameInput, DepartmentId = selectedDept.Id }; repo.AddEmployee(newEmployee); break; case 2: Console.Clear(); Console.WriteLine("Employee to be released"); for (int i = 0; i < employees.Count; i++) { Console.WriteLine($"{employees[i].Id} {employees[i].FirstName} {employees[i].LastName}"); } var deleteEmployeeInput = Int32.Parse(Console.ReadLine()); repo.DeleteEmployee(deleteEmployeeInput); break; case 3: break; default: break; } } else if (option == "3") { Console.Clear(); Console.WriteLine("------------------"); foreach (var dept in departments) { Console.WriteLine($"{dept.DeptName} has the following employees:"); foreach (var employee in employees) { if (employee.DepartmentId == dept.Id) { Console.WriteLine($"{employee.FirstName} {employee.LastName}"); } } } Console.WriteLine("------------------"); } else { Console.WriteLine("End"); break; } } }
static void Main(string[] args) { //Setting a new instance of the employee repository and dept repo to a variable. Remeber to use the using statement at the top! var repo = new EmployeeRepository(); var deptRepo = new DepartmentRepository(); //That both classes has method that gets all employees. Use it and store all them employees in a var. var employeeWithId2 = repo.GetEmployeeById(2); while (true) { var departments = deptRepo.GetAllDepartments(); var employees = repo.GetAllEmployees(); Console.WriteLine("Welcome to muh Database!!"); Console.WriteLine("Press 1 for Departments"); Console.WriteLine("Press 2 for Employee"); Console.WriteLine("Press 3 for a full report"); Console.WriteLine("Press 4 to get outta here"); string option = Console.ReadLine(); if (option == "1") { Console.Clear(); Console.WriteLine("---DEPARTMENTS---"); Console.WriteLine("Press 1 to add a Department"); Console.WriteLine("Press 2 to add a Delete"); Console.WriteLine("Press 3 to return"); string deptOption = Console.ReadLine(); switch (Int32.Parse(deptOption)) { case 1: Console.Clear(); Console.WriteLine("Name of Department?"); var deptNameInput = Console.ReadLine(); Department newDepartment = new Department() { DeptName = deptNameInput }; deptRepo.AddDepartment(newDepartment); break; case 2: Console.Clear(); Console.WriteLine("Delete which Department?"); for (var i = 0; i < departments.Count; i++) { Console.WriteLine($"{departments[i].Id} {departments[i].DeptName}"); } var deleteDeptInput = Int32.Parse(Console.ReadLine()); try { deptRepo.DeleteDepartment(deleteDeptInput); break; } catch { Console.Clear(); Console.WriteLine("Cannot delete department with working employees."); Console.WriteLine("Please fire or transfer:"); Console.WriteLine(""); foreach (var employee in employees) { if (employee.DepartmentId == deleteDeptInput) { Console.WriteLine($"{employee.FirstName} {employee.LastName}"); } } Console.WriteLine("Press enter to return"); Console.ReadLine(); break; } case 3: break; default: break; } } else if (option == "2") { Console.Clear(); Console.WriteLine("---EMPLOYEES---"); Console.WriteLine("Press 1 to add an employee"); Console.WriteLine("Press 2 to Fire an Employee"); Console.WriteLine("Press 3 to update an employee"); Console.WriteLine("Press 4 to return"); string empOption = Console.ReadLine(); switch (Int32.Parse(empOption)) { case 1: Console.Clear(); Console.WriteLine("First name of Employee?"); var employeeFirstNameInput = Console.ReadLine(); Console.WriteLine("Last Name of Employee?"); var employeeLastNameInput = Console.ReadLine(); Console.WriteLine("Which Department do they work in?"); foreach (var dept in departments) { Console.WriteLine($"{dept.Id} {dept.DeptName}"); } var employeeDeptChoice = Console.ReadLine(); var selectedDept = departments.Where(dept => int.Parse(employeeDeptChoice) == dept.Id).FirstOrDefault(); Employee newEmployee = new Employee() { FirstName = employeeFirstNameInput, LastName = employeeLastNameInput, DepartmentId = selectedDept.Id }; repo.AddEmployee(newEmployee); break; case 2: Console.Clear(); Console.WriteLine("Fire which Employee?"); for (var i = 0; i < employees.Count; i++) { Console.WriteLine($"{employees[i].Id} {employees[i].FirstName} {employees[i].LastName}"); } var deleteEmployeeInput = Int32.Parse(Console.ReadLine()); repo.DeleteEmployee(deleteEmployeeInput); break; case 3: Console.Clear(); Console.WriteLine("Who you want to update?"); for (var i = 0; i < employees.Count; i++) { Console.WriteLine($"{employees[i].Id} {employees[i].FirstName} {employees[i].LastName}"); } var updateEmployeeInput = Int32.Parse(Console.ReadLine()); var selectedEmployee = repo.GetEmployeeById(updateEmployeeInput); Console.Clear(); Console.WriteLine($"{selectedEmployee.FirstName} {selectedEmployee.LastName} who works in {selectedEmployee.Department.DeptName}"); Console.WriteLine(""); Console.WriteLine("What would you like to update?"); Console.WriteLine("1. Name"); Console.WriteLine("2. Department"); var selectedUpdateInput = Console.ReadLine(); switch (Int32.Parse(selectedUpdateInput)) { case 1: Console.WriteLine("Enter in new first name?"); var newFirstName = Console.ReadLine(); Console.WriteLine("Enter in new last name?"); var newLastName = Console.ReadLine(); selectedEmployee.FirstName = newFirstName; selectedEmployee.LastName = newLastName; repo.UpdateEmployee(selectedEmployee.Id, selectedEmployee); break; case 2: Console.WriteLine("What department do they work in now?"); for (var i = 0; i < departments.Count; i++) { Console.WriteLine($"{departments[i].Id} {departments[i].DeptName}"); } var selectedDeptInput = Int32.Parse(Console.ReadLine()); var newDept = departments.First(dept => dept.Id == selectedDeptInput); selectedEmployee.DepartmentId = newDept.Id; repo.UpdateEmployee(selectedEmployee.Id, selectedEmployee); break; default: break; } break; case 4: break; default: break; } } else if (option == "3") { Console.Clear(); Console.WriteLine("------------------"); foreach (var dept in departments) { Console.WriteLine($"{dept.DeptName} has the following employees:"); foreach (var employee in employees) { if (employee.DepartmentId == dept.Id) { Console.WriteLine($"{employee.FirstName} {employee.LastName}"); } } } Console.WriteLine("------------------"); } else { Console.WriteLine("See ya Later"); break; } } }