public static void DeleteRent() { var input = ""; 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 { if (rent.Buch.GetType() == typeof(Exemplar)) { var copy = (Exemplar)rent.Buch; copy.IstAusgeliehen = false; } Controller.DeleteTheRent(rent); Controller.CreateDelRent(rent); } } }
public static void EditMagazin() { if (Controller.products.Count != 0) { var property = ""; var newValue = ""; var input = ""; while (true) { OutputOfThings.OutputLists(area); input = Input(Controller.GetLowestNumberInList(area), Controller.GetHighestNumberInList(area), "z"); if (input == "z") { break; } var magazin = (Magazin)Controller.GetObjectThroughNumber(Convert.ToInt32(input), area); if (magazin == null) { Console.WriteLine("Es wurde kein Buch mit der eingegebenen Id gefunden."); } else { Console.Clear(); OutputOfThings.OutputObject(magazin, area); Console.WriteLine("Was davon wollen Sie ändern?"); property = GetUserInputData("Eigenschaft", false); newValue = GetUserInputData("Neuer Wert", Controller.IsNumbProperty(property)); magazin.ÄndereEigenschaft(newValue, property); OutputOfThings.OutputObject(magazin, area); OutputOfThings.ReadKeyMethod(); } } } }
private static void DeleteMagazin() { if (Controller.products.Count != 0) { var input = ""; while (true) { OutputOfThings.OutputLists(area); input = Input(Controller.GetLowestNumberInList(area), Controller.GetHighestNumberInList(area), "z"); if (input == "z") { break; } var magazin = (Magazin)Controller.GetObjectThroughNumber(Convert.ToInt32(input), area); if (magazin == null) { Console.WriteLine("Es wurde kein Buch mit der eingegebenen Id gefunden."); } else { Console.Clear(); OutputOfThings.OutputObject(magazin, area); while (true) { if (Controller.HaveDeletingBookCopieInRents(magazin)) { break; } Console.WriteLine("Wollen Sie wirklich das Buch entfernen! [j/n]"); input = Console.ReadLine(); if (input == "j") { Controller.DeleteCopies(magazin); Controller.DeleteMagazin(magazin); break; } else if (input == "n") { break; } } } } } }
public static void RebuildRent(GelöschterLeihvorgang delRent) { if (IsCopyInRebuildingRentPresent(delRent)) { Leihvorgang rent = new Leihvorgang(delRent.LeihvorgangId, delRent.Buch, delRent.Person, delRent.Ausleihdatum, delRent.Rückgabedatum); delRents.Remove(delRent); rents.Add(rent); if (rent.Buch.GetType() == typeof(Exemplar)) { var copy = (Exemplar)rent.Buch; copy.IstAusgeliehen = true; } Console.WriteLine("Die Wiederherstellung war erfolgreich."); } else { Console.WriteLine("Das Buch in diesem Leihvorgang ist zurzeit schon ausgeliehen. Der Wiederherstellung war nicht erfolgreich."); } OutputOfThings.ReadKeyMethod(); }
public static bool HaveDeletingBookCopieInRents(object _object) { var isCopieInRent = false; foreach (var item in copies) { var newObject = (IPh_Produkt)_object; var newItem = (IPh_Produkt)item.Produkt; if (newItem.Id == newObject.Id && item.IstAusgeliehen) { isCopieInRent = true; break; } } if (isCopieInRent) { Console.WriteLine("Das Buch konnte nicht gelöscht werden! Da sich Exemplare von diesem Buch noch im Ausleih befinden."); OutputOfThings.ReadKeyMethod(); } return(isCopieInRent); }
// private static void EditCopy() { var input = ""; var property = false; while (true) { OutputOfThings.OutputLists(area); input = Input(Controller.GetLowestNumberInList(area), Controller.GetHighestNumberInList(area), "z"); if (input == "z") { break; } var copy = (Exemplar)Controller.GetObjectThroughNumber(Convert.ToInt32(input), area); if (copy == null) { Console.WriteLine("Es wurde kein Buch mit der eingegebenen Id gefunden."); } else { Console.Clear(); OutputOfThings.OutputObject(copy, area); Console.WriteLine("Bei Exemplaren können Sie nur den Zustand 'Geliehen' ändern."); property = GetUserInputData("Ist das Exemplar vorhanden? [j/n]", false) != "j"; if (Controller.IsCopyInRent(copy)) { Console.WriteLine("Exemplar ist zurzeit noch ausgeliehen, deshalb kann sich der zustand nicht ändern!"); OutputOfThings.ReadKeyMethod(); } else { copy.ÄndereEigenschaft("", property.ToString()); } } } OutputOfThings.ReadKeyMethod(); }
/* * Als erstes wird überprüft ob es überhaupt gelöschte Leihvorgänge existieren * Danach wird nach einer Nummer für eins der Angezeigten gelöschten Leihvorgänge verlangt * Mit der Nummer wird dann das Objekt in delRent gespeichert, falls das Objekt null ist, wird ein Fehler ausgegeben * Falls von dem Leihvorgang das Buch nicht vorhanden ist, wird auch nochmal eine Fehlermeldung ausgegeben * Falls das Objekt gefunden wurde, wird nochmal nachgefragt ob der Leihvorgang wirklich erstellt werden soll * */ public static void RebuildDelRent() { var input = ""; if (Controller.delRents.Count > 0) { while (true) { OutputOfThings.OutputLists(area); input = Input(Controller.GetLowestNumberInList(area), Controller.GetHighestNumberInList(area), "z"); if (input == "z") { break; } var delRent = (GelöschterLeihvorgang)Controller.GetObjectThroughNumber(Convert.ToInt32(input), area); var copy = delRent.Buch; if (delRent == null) { Console.WriteLine("Es wurde kein Leihvorgang mit der eingegebenen Id gefunden."); } else { if (copy.GetType() == typeof(Exemplar)) { var newCopy = (Exemplar)copy; if (newCopy.IstAusgeliehen) { Console.WriteLine("Das Exemplar was in diesem Leihvorgang ist, ist zurzeit nicht vorhanden"); } else { OutputOfThings.OutputObject(delRent, area); Console.WriteLine("Wollen Sie den Leihvorgang wirklich wiederherstellen? [j/n]"); input = Console.ReadLine(); if (input == "j") { Controller.RebuildRent(delRent); break; } else if (input == "n") { break; } } } else { OutputOfThings.OutputObject(delRent, area); Console.WriteLine("Wollen Sie den Leihvorgang wirklich wiederherstellen? [j/n]"); input = Console.ReadLine(); if (input == "j") { Controller.RebuildRent(delRent); break; } else if (input == "n") { break; } } } } } else { Console.WriteLine("Keine gelöschten Leihvorgänge vorhanden."); } }
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); }