private void RemoveEmployee() { List <Employee> employees = Query.GetEmployees().ToList(); UserInterface.DisplayEmployees(employees); int employeeid = UserInterface.GetIntegerData("id number", "the employee's"); Employee employee = Query.GetEmployeeById(employeeid); try { Console.Clear(); Query.RunEmployeeQueries(employee, "delete"); UserInterface.DisplayUserOptions("Employee successfully removed. Press Enter to continue."); Console.ReadLine(); } catch { Console.Clear(); UserInterface.DisplayUserOptions("Employee removal unsuccessful please try again or type exit"); RemoveEmployee(); } }
private void RemoveEmployee() { Employee employee = new Employee { lastName = UserInterface.GetStringData("last name", "the employee's") }; ; employee.employeeNumber = int.Parse(UserInterface.GetStringData("employee number", "the employee's")); try { Console.Clear(); Query.RunEmployeeQueries(employee, "delete"); UserInterface.DisplayUserOptions("Employee successfully removed"); } catch (Exception e) { Console.Clear(); UserInterface.DisplayUserOptions("Employee removal unsuccessful please try again or type exit"); RemoveEmployee(); } }
private void CheckShots() { var animal = SearchForAnimal().Single(); var shots = Query.CheckShotsNeededById(animal); UserInterface.DisplayAnimal(animal); UserInterface.DisplayUserOptions(shots); if (shots.Count == 5) { UserInterface.DisplayUserOptions($"{animal.Name} is current on all shots"); } else { string result = UserInterface.GetUserInput("Would you like to administer remaining shots?").ToLower(); if (result == "yes") { Query.GiveShots(animal, shots); } } RunUserMenus(); }
public void UpdateClientInfo() { List <string> options = new List <string>() { "What would you like to update? (Please enter number of option)", "1: Name", "2: Address", "3: Email", "4: Username", "5: Password", "6. Back" }; int input = default(int); while (input != 9) { try { UserInterface.DisplayUserOptions(options); input = int.Parse(UserInterface.GetUserInput()); RunUpdateInput(input); } catch { UserInterface.DisplayUserOptions("Input not recognized please enter an integer number of the option you would like to update"); } } }
//// TODO Items: //// // TODO: Allow any of the CRUD operations to occur here internal static void RunEmployeeQueries(Employee employee, string crudOperation) { switch (crudOperation) { case "delete": var employeeDelete = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber && e.LastName == employee.LastName).Single(); db.Employees.DeleteOnSubmit(employeeDelete); db.SubmitChanges(); break; case "update": var employeeUpdate = db.Employees.Where(e => e.EmployeeId == employee.EmployeeId).SingleOrDefault(); employeeUpdate.FirstName = employee.FirstName; employeeUpdate.LastName = employee.LastName; employeeUpdate.EmployeeNumber = employee.EmployeeNumber; employeeUpdate.Email = employee.Email; db.SubmitChanges(); break; case "create": db.Employees.InsertOnSubmit(employee); db.SubmitChanges(); break; case "read": var employeeRead = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).SingleOrDefault(); List <string> employeeInformation = new List <string>() { employeeRead.FirstName, employeeRead.LastName, employeeRead.Email }; UserInterface.DisplayUserOptions(employeeInformation); break; default: break; } }
private void RunCheckMenu(Animal animal) { animal = Query.GetAnimalByID(animal.AnimalId); bool isFinished = false; Console.Clear(); while (!isFinished) { List <string> options = new List <string>() { "Animal found:", animal.Name, animal.Species.Name, "Would you like to:", "1. Get Info", "2. Update Info", "3. Check shots", "4. Change Room", "5. Return" }; UserInterface.DisplayUserOptions(options); int input = UserInterface.GetIntegerData(); if (input == 5) { isFinished = true; continue; } RunCheckMenuInput(input, animal); } }
private void AddEmployee() { Employee employee = new Employee(); employee.FirstName = UserInterface.GetStringData("first name", "the employee's"); employee.LastName = UserInterface.GetStringData("last name", "the employee's"); employee.UserName = UserInterface.GetStringData("User name", "the employee's"); employee.Password = UserInterface.GetStringData("Password", "the employee's"); employee.EmployeeNumber = int.Parse(UserInterface.GetStringData("employee number", "the employee's")); employee.Email = UserInterface.GetStringData("email", "the employee's");; try { Query.RunEmployeeQueries(employee, "create"); UserInterface.DisplayUserOptions("Employee addition successful."); } catch { Console.Clear(); UserInterface.DisplayUserOptions("Employee addition unsuccessful please try again or type exit;"); return; } }
private void UpdateEmployee() { Employee employee = new Employee(); employee.firsttName = UserInterface.GetStringData("first name", "the employee's"); employee.lastName = UserInterface.GetStringData("last name", "the employee's"); employee.employeeNumber = int.Parse(UserInterface.GetStringData("employee number", "the employee's")); employee.email = UserInterface.GetStringData("email", "the employee's"); try { Query.RunEmployeeQueries(employee, "update"); UserInterface.DisplayUserOptions("Employee update successful."); return; } catch { Console.Clear(); UserInterface.DisplayUserOptions("Employee update unsuccessful please try again or type exit;"); return; } }
private void CheckAdoptions() { Console.Clear(); List <string> adoptionInfo = new List <string>(); int counter = 1; var adoptions = Query.GetPendingAdoptions().ToList(); if (adoptions.Count > 0) { foreach (Adoption adoption in adoptions) { adoptionInfo.Add($"{counter}. {adoption.Client.FirstName} {adoption.Client.LastName}, {adoption.Animal.Name} {adoption.Animal.Category}"); counter++; } UserInterface.DisplayUserOptions(adoptionInfo); UserInterface.DisplayUserOptions("Enter the number of the adoption you would like to approve"); int input = UserInterface.GetIntegerData(); // check input for valid adoption option here - Jacob ApproveAdoption(adoptions[input - 1]); } }
private void RunSearch() { Console.Clear(); var updates = UserInterface.GetAnimalSearchCriteria(); var animals = Query.SearchForAnimalsByMultipleTraits(updates).ToList(); if (animals.Count > 1) { UserInterface.DisplayUserOptions("Several animals found"); UserInterface.DisplayAnimals(animals); } else if (animals.Count == 0) { UserInterface.DisplayUserOptions("No animals found please try another search"); } else { UserInterface.DisplayAnimalInfo(animals[0]); } UserInterface.DisplayUserOptions("Press enter to continue"); Console.ReadLine(); }
private void RunSearchMultipleTraits(List <Animal> animals = null) { Console.Clear(); if (animals == null) { animals = Query.GetAnimal(); } animals = SearchForAnimals().ToList(); if (animals.Count > 1) { UserInterface.DisplayUserOptions("Several animals found"); UserInterface.DisplayAnimals(animals); UserInterface.DisplayUserOptions("Search by more traits to narrow it down? Or start over? Yes continues search. 'yes' or 'no' "); string input = UserInterface.GetUserInput(); if (input == "yes") { RunSearchMultipleTraits(animals); } else { RunUserMenus(); } } else if (animals.Count == 0) { UserInterface.DisplayUserOptions("No animals found please try another search"); RunUserMenus(); } else { UserInterface.DisplayUserOptions("One result was found!"); UserInterface.DisplayAnimalInfo(animals[0]); } UserInterface.DisplayUserOptions("Press enter to continue"); Console.ReadLine(); }
//// TODO Items: //// // TODO: Allow any of the CRUD operations to occur here // switch case to decide which operation to do // create: userEmployee.CreateNewEmployee // update: userEmployee.UpdateEmployeeInfo internal static void RunEmployeeQueries(Employee employee, string crudOperation) { switch (crudOperation) { case "create": db.Employees.InsertOnSubmit(employee); db.SubmitChanges(); break; case "read": var employeeToRead = db.Employees.FirstOrDefault(e => e.EmployeeNumber == employee.EmployeeNumber); List <string> info = new List <string>() { "Employee Number: " + employeeToRead.EmployeeNumber, "Name: " + employeeToRead.FirstName + " " + employeeToRead.LastName, "Email: " + employeeToRead.Email }; UserInterface.DisplayUserOptions(info); Console.ReadLine(); break; case "update": var employeeToUpdate = db.Employees.FirstOrDefault(e => e.EmployeeNumber == employee.EmployeeNumber); employeeToUpdate.FirstName = employee.FirstName; employeeToUpdate.LastName = employee.LastName; employeeToUpdate.Email = employee.Email; db.SubmitChanges(); break; case "delete": var employeeToDelete = db.Employees.FirstOrDefault(e => e.EmployeeNumber == employee.EmployeeNumber && e.LastName == employee.LastName); db.Employees.DeleteOnSubmit(employeeToDelete); db.SubmitChanges(); break; default: Console.WriteLine("Please choose a valid option."); RunEmployeeQueries(employee, crudOperation); break; } }
private void CheckAnimalStatus() { Console.Clear(); var updates = UserInterface.GetAnimalSearchCriteria(); var animals = Query.SearchForAnimalsByMultipleTraits(updates).ToList(); if (animals.Count > 1) { UserInterface.DisplayUserOptions("Several animals found"); UserInterface.DisplayAnimals(animals); UserInterface.DisplayUserOptions("Enter the ID of the animal you would like to check"); int ID = UserInterface.GetIntegerData(); CheckAnimalStatus(ID); return; } if (animals.Count == 0) { UserInterface.DisplayUserOptions("Animal not found please use different search criteria"); return; } RunCheckMenu(animals[0]); }
private void UpdateEmployee() { List <Employee> employees = Query.GetEmployees().ToList(); UserInterface.DisplayEmployees(employees); int employeeid = UserInterface.GetIntegerData("id number", "the employee's"); Employee employee = Query.GetEmployeeById(employeeid); try { employee = UpdateEmployeeInfo(employee); Query.RunEmployeeQueries(employee, "update"); UserInterface.DisplayUserOptions("Employee update successful. Press Enter to continue."); Console.ReadLine(); } catch { Console.Clear(); UserInterface.DisplayUserOptions("Employee update unsuccessful please try again or type exit;"); return; } }
protected void RunInput(string input) { if (input == "1" || input.ToLower() == "create") { AddEmployee(); RunUserMenus(); } else if (input == "2" || input.ToLower() == "delete") { RemoveEmployee(); RunUserMenus(); } else if (input == "3" || input.ToLower() == "read") { ReadEmployee(); RunUserMenus(); } else if (input == "4" || input.ToLower() == "update") { UpdateEmployee(); RunUserMenus(); } else if (input == "5" || input.ToLower() == "import") { ImportCSVFile(); RunUserMenus(); } else if (input == "6" || input.ToLower() == "return") { Console.Clear(); PointOfEntry.Run(); } else { UserInterface.DisplayUserOptions("Input not recognized please try again or type exit"); RunUserMenus(); } }
private void ApplyForAdoption() { Console.Clear(); UserInterface.DisplayUserOptions("Please enter the ID of the animal you wish to adopt or type reset or exit"); int iD = UserInterface.GetIntegerData(); var animal = Query.GetAnimalByID(iD); //add if else for animal availability if (animal.AdoptionStatus != "Available") { UserInterface.DisplayUserOptions("Animal is not available for adoption"); UserInterface.Pause(); return; } UserInterface.DisplayAnimalInfo(animal); UserInterface.DisplayUserOptions("Would you like to adopt?"); if ((bool)UserInterface.GetBitData()) { Query.Adopt(animal, client); UserInterface.DisplayUserOptions("Adoption request sent we will hold $75 adoption fee until processed"); UserInterface.Pause(); } }
internal static void UpdateAdoption(bool isAdopted, Adoption adoption) { if (adoption.PaymentCollected == true) { if (isAdopted == true) { adoption.ApprovalStatus = "Approved"; Animal adoptedAnimal = db.Animals.Where(a => a.AnimalId == adoption.AnimalId).FirstOrDefault(); RemoveAdoption(adoption.AnimalId, adoption.ClientId); RemoveAnimal(adoptedAnimal); } else { adoption.ApprovalStatus = "Denied"; RemoveAdoption(adoption.AnimalId, adoption.ClientId); } SubmitChanges(); } else { UserInterface.DisplayUserOptions("Client has not paid fees."); } }
internal static void UpdateAdoption(bool isAdopted, Adoption adoption) { Adoption adoptionToBeUpdated = null; try { adoptionToBeUpdated = db.Adoptions.Where(a => a.ClientId == adoption.ClientId && a.AnimalId == adoption.AnimalId).FirstOrDefault(); } catch (Exception) { UserInterface.DisplayUserOptions("Adoption not found, returning..."); return; } if (isAdopted) { adoptionToBeUpdated.ApprovalStatus = "accepted"; } else { adoptionToBeUpdated.ApprovalStatus = "declined"; } db.SubmitChanges(); }
private void RunCheckMenuInput(int input, Animal animal) { switch (input) { case 1: UserInterface.DisplayAnimalInfo(animal); Console.Clear(); return; case 2: UpdateAnimal(animal); Console.Clear(); return; //case 3: // CheckShots(animal); // Console.Clear(); // return; default: UserInterface.DisplayUserOptions("Input not accepted please select a menu choice"); return; } }
private void ApplyForAdoption() { Console.Clear(); UserInterface.DisplayUserOptions("Please enter the ID of the animal you wish to adopt or type reset or exit"); int iD = UserInterface.GetIntegerData(); var animal = Query.GetAnimalByID(iD); UserInterface.DisplayAnimalInfo(animal); UserInterface.DisplayUserOptions("Would you like to adopt?"); if (UserInterface.GetBitData() == true) { if (animal.AdoptionStatus == "adopted" || animal.AdoptionStatus == "Adopted") { Console.WriteLine("This animal has already been adopted."); Console.ReadLine(); } else { Query.Adopt(animal, client); UserInterface.DisplayUserOptions("Adoption request sent we will hold $75 adoption fee until processed"); } } }
private void RunCheckMenu(Animal animal) { bool isFinished = false; Console.Clear(); while (!isFinished) { List <string> options = new List <string>() { "Animal found:", animal.Name, animal.Species.Name, "Would you like to:", "1. Get Info", "2. Update Info", "3. Check shots", "4. Return" }; UserInterface.DisplayUserOptions(options); int input = UserInterface.GetIntegerData(); if (input == 4) { isFinished = true; continue; } HumaneSocietyDataContext db = new HumaneSocietyDataContext(); animal = db.Animals.Where(a => a.AnimalId == animal.AnimalId).FirstOrDefault(); RunCheckMenuInput(input, animal); } }
private void UpdateEmployee() { Employee employee = new Employee(); employee.EmployeeNumber = int.Parse(UserInterface.GetStringData("employee number", "the employee's")); try { Query.RunEmployeeQueries(employee, "update"); Console.ForegroundColor = ConsoleColor.Green; UserInterface.DisplayUserOptions("Employee update successful."); Console.ResetColor(); Console.ReadKey(); } catch { Console.Clear(); Console.ForegroundColor = ConsoleColor.Red; UserInterface.DisplayUserOptions("Employee update unsuccessful please try again or type exit."); Console.ResetColor(); Console.ReadKey(); return; } }
public override void LogIn() { UserInterface.DisplayUserOptions("What is your password?"); string password = UserInterface.GetUserInput(); if (password.ToLower() != "poiuyt") { Console.Clear(); Console.ForegroundColor = ConsoleColor.Red; UserInterface.DisplayUserOptions("Incorrect password please try again or type exit"); Console.ResetColor(); Console.ReadKey(); } else { Console.Clear(); Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine("Admin log in successful."); Console.ResetColor(); Console.ReadKey(); RunUserMenus(); } }
internal static void RunEmployeeQueries(Employee employee, string crudOperation) { switch (crudOperation) { case "create": db.Employees.InsertOnSubmit(employee); db.SubmitChanges(); break; case "delete": var foundEmployee = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).FirstOrDefault(); db.Employees.DeleteOnSubmit(foundEmployee); db.SubmitChanges(); break; case "read": List <string> EmployeeInfo = new List <string>(); var employeeToDisplay = db.Employees.FirstOrDefault(e => e.EmployeeNumber == employee.EmployeeNumber); EmployeeInfo.Add(employeeToDisplay.EmployeeId.ToString()); EmployeeInfo.Add(employeeToDisplay.FirstName); EmployeeInfo.Add(employeeToDisplay.LastName); EmployeeInfo.Add(employeeToDisplay.UserName); EmployeeInfo.Add(employeeToDisplay.Password); EmployeeInfo.Add(employeeToDisplay.EmployeeNumber.ToString()); EmployeeInfo.Add(employeeToDisplay.Email); UserInterface.DisplayUserOptions(EmployeeInfo); break; case "update": var employeeToUpdate = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).FirstOrDefault(); employeeToUpdate.FirstName = employee.FirstName; employeeToUpdate.LastName = employee.LastName; employeeToUpdate.Email = employee.Email; db.SubmitChanges(); break; } }
// TODO: Allow any of the CRUD operations to occur here internal static void RunEmployeeQueries(Employee employee, string crudOperation) { switch (crudOperation) { case "create": db.Employees.InsertOnSubmit(employee); db.SubmitChanges(); break; case "delete": Employee deleteEmployee = db.Employees.Where(e => e.EmployeeId == employee.EmployeeId).SingleOrDefault(); db.Employees.DeleteOnSubmit(deleteEmployee); db.SubmitChanges(); break; case "read": Employee readEmployee = db.Employees.Where(e => e.EmployeeId == employee.EmployeeId).Single(); List <string> employeeInfo = new List <string>(); employeeInfo.Add(readEmployee.FirstName); employeeInfo.Add(readEmployee.LastName); employeeInfo.Add(readEmployee.UserName); UserInterface.DisplayUserOptions(employeeInfo); break; case "update": Employee updateEmployee = db.Employees.Where(e => e.EmployeeId == employee.EmployeeId).SingleOrDefault(); updateEmployee.FirstName = employee.FirstName; updateEmployee.LastName = employee.LastName; updateEmployee.EmployeeNumber = employee.EmployeeNumber; updateEmployee.Email = employee.Email; db.SubmitChanges(); break; default: break; } }
public void UpdateName() { Console.Clear(); List <string> options = new List <string>() { "Current Name:", client.FirstName, client.LastName, "Would you like to update?", "1. First", "2. Last", "3. Both" }; UserInterface.DisplayUserOptions(options); string input = UserInterface.GetUserInput().ToLower(); if (input == "first" || input == "1") { UserInterface.DisplayUserOptions("Please enter your new first name."); client.FirstName = UserInterface.GetUserInput(); Query.UpdateClient(client); } else if (input == "last" || input == "2") { UserInterface.DisplayUserOptions("Please enter your new last name."); client.LastName = UserInterface.GetUserInput(); Query.UpdateClient(client); } else if (input == "both" || input == "3") { UserInterface.DisplayUserOptions("Please enter your new first name."); client.FirstName = UserInterface.GetUserInput(); Query.UpdateClient(client); UserInterface.DisplayUserOptions("Please enter your new last name."); client.LastName = UserInterface.GetUserInput(); Query.UpdateClient(client); } else { UpdateName(); } }
internal static void UpdateShot(string shotName, Animal animal) { var updates = UserInterface.GetAnimalSearchCriteria(); var animals = Query.SearchForAnimalsByMultipleTraits(updates).ToList(); UserInterface.DisplayUserOptions("What animal got a shot?"); while (animals.Count != 1) { Console.Clear(); Console.WriteLine("You have to return a single animal"); updates = UserInterface.GetAnimalSearchCriteria(); animals = Query.SearchForAnimalsByMultipleTraits(updates).ToList(); } Animal pet = animals[0]; List <Shot> Shots = db.Shots.ToList(); UserInterface.DisplayUserOptions("what shot do you need for this animal (Enter its name)"); foreach (Shot shot in Shots) { UserInterface.DisplayUserOptions(shot.Name); } string answer = Console.ReadLine(); Shot shotToUse = db.Shots.Where(s => s.Name == answer).FirstOrDefault(); Console.Clear(); UserInterface.DisplayUserOptions("Do you want to give " + pet.Name + " the " + shotToUse.Name + " shot "); switch (answer) { case "yes": //add the shot and animal to junction tabel break; case "no": //send them back to employee opstions break; } }
protected override void LogInPreExistingUser() { List <string> options = new List <string>() { "Please log in", "Enter your username (CaSe SeNsItIvE)" }; UserInterface.DisplayUserOptions(options); userName = UserInterface.GetUserInput(); UserInterface.DisplayUserOptions("Enter your password (CaSe SeNsItIvE)"); string password = UserInterface.GetUserInput(); try { client = Query.GetClient(userName, password); name = client.firstName; } catch { UserInterface.DisplayUserOptions("User not found. Please try another username, contact support or type 'reset' to restart"); LogIn(); return; } }
private void RunUserInput(string input) { switch (input) { case "1": AddAnimal(); RunUserMenus(); return; case "2": RemoveAnimal(); RunUserMenus(); return; case "3": CheckAnimalStatus(); RunUserMenus(); return; case "4": CheckAdoptions(); RunUserMenus(); return; case "5": string filename = UserInterface.GetStringData("filename (make sure you type the full path of its location on your computer)", "csv's"); Query.ImportCSVToDB(filename); RunUserMenus(); return; default: UserInterface.DisplayUserOptions("Input not accepted please try again"); RunUserMenus(); return; } }
public static string GetEmail() { UserInterface.DisplayUserOptions("Please enter your email"); string email = UserInterface.GetUserInput(); var clients = Query.RetrieveClients(); var clientEmails = from client in clients select client.Email; if (email.Contains("@") && email.Contains(".")) { if (CheckForForValue(clientEmails.ToList(), email)) { Console.Clear(); UserInterface.DisplayUserOptions("Email already in use please try another email or contact support for forgotten account info"); return(GetEmail()); } return(email); } else { Console.Clear(); UserInterface.DisplayUserOptions("Email not valid please enter a valid email address"); return(GetEmail()); } }