public static void EditRent() { var input = ""; var property = ""; var newValue = ""; while (true) { OutputOfThings.OutputLists(area); input = Input(Controller.GetLowestNumberInList(area), Controller.GetHighestNumberInList(area), "z"); if (input == "z") { break; } var rent = (Leihvorgang)Controller.GetObjectThroughNumber(Convert.ToInt32(input), area); if (rent == null) { Console.WriteLine("Es wurde kein Leihvorgang mit der eingegebenen Id gefunden."); } else { Console.Clear(); OutputOfThings.OutputObject(rent, area); Console.WriteLine("Was davon wollen Sie ändern?"); property = GetUserInputData("Eigenschaft", false); if (property == "Ausleihdatum" || property == "Rückgabedatum") { newValue = GetRentBeginDate(); rent.LeihvorgangBearbeiten(property, newValue); } else if (property == "Buch") { OutputOfThings.OutputLists(Controller.Area.Book); newValue = Input(Controller.GetLowestNumberInList(Controller.Area.Book), Controller.GetHighestNumberInList(Controller.Area.Book), "z"); var book = (IPh_Produkt)Controller.GetObjectThroughNumber(Convert.ToInt32(newValue), Controller.Area.Book); if (WantAEBook()) { var eProduct = Controller.GetObjectThroughNumber(book.Id, Controller.Area.EProduct); var copy = (Exemplar)rent.Buch; copy.IstAusgeliehen = false; rent.Buch = eProduct; break; } var list = Controller.GetPresentCopies(book); if (list.Count == 0) { Console.WriteLine("Dieses Buch ist zurzeit nicht auf Lager."); } else { Console.WriteLine($"Diese {list.Count} Exemplare sind vorhanden"); OutputOfThings.OutputCopies(list, area); input = GetUserInputData("Nummer vom Exemplar", true); var copy = (Exemplar)Controller.GetObjectThroughNumber(Convert.ToInt32(input), Controller.Area.Copy); if (copy == null) { Console.WriteLine("Es wurde kein Exemplar mit der eingegebenen Id gefunden."); } else { copy = (Exemplar)rent.Buch; copy.IstAusgeliehen = false; rent.LeihvorgangBearbeiten(property, input); copy = (Exemplar)rent.Buch; copy.IstAusgeliehen = true; } } } else { newValue = GetUserInputData("Neuer Wert", Controller.IsNumbProperty(property)); rent.LeihvorgangBearbeiten(property, newValue); } OutputOfThings.OutputObject(rent, area); OutputOfThings.ReadKeyMethod(); } } }
public static object GetExemplar() { var input = ""; var copy = new object(); while (true) { Console.Clear(); OutputOfThings.OutputLists(Controller.Area.Book); Console.WriteLine("Welches Buch soll ausgeliehen werden?"); input = Input(Controller.GetLowestNumberInList(Controller.Area.Book), Controller.GetHighestNumberInList(Controller.Area.Book), "z"); if (input == "z") { break; } var book = (IPh_Produkt)Controller.GetObjectThroughNumber(Convert.ToInt32(input), Controller.Area.Book); if (book == null) { Console.WriteLine("Es wurde kein Buch mit der eingegebenen Id gefunden."); } else { if (WantAEBook()) { var eBook = Controller.GetObjectThroughNumber(book.Id, Controller.Area.EProduct); return(eBook); } else { while (true) { var listOfCopies = Controller.GetPresentCopies(book); if (listOfCopies.Count == 0) { Console.WriteLine("Dieses Buch ist zurzeit nicht vorhanden!"); copy = null; break; } Console.WriteLine($"Diese {listOfCopies.Count} Exemplare sind vorhanden"); OutputOfThings.OutputCopies(listOfCopies, area); input = GetUserInputData("Nummer vom Exemplar", true); copy = (Exemplar)Controller.GetObjectThroughNumber(Convert.ToInt32(input), Controller.Area.Copy); if (copy == null) { Console.WriteLine("Es wurde kein Exemplar mit der eingegebenen Id gefunden"); } else { break; } } } break; } } if (input == "z") { return(null); } return(copy); }