weitere Verbesserungen, einige prompts hinzugefügt

devIoana
ioana 2024-11-18 23:30:02 +01:00
parent 78d84bd218
commit 94572b5334
3 changed files with 45 additions and 3 deletions

View File

@ -127,6 +127,8 @@ public class UI {
} }
} }
//Methode zur manuellen Änderung des Datums für Testen
//Von AI generiert
private void aendernDatumManuell(){ private void aendernDatumManuell(){
System.out.println("Neues Datum eingeben (Format: yyyy-MM-dd)"); System.out.println("Neues Datum eingeben (Format: yyyy-MM-dd)");
String datum = scanner.nextLine(); String datum = scanner.nextLine();

View File

@ -0,0 +1,41 @@
ich: ändere die Klasse UI so, so dass du so viel wie möglich Lambda-Ausdrücke verwendest (Eingabe von Klasse UI)
AI: hier ist die überarbeite Klasse UI, die Lambda-Ausdrücke enthält:
public void starten() {
while (true) {
System.out.println("Willkommen in der Bibliothek!\n");
System.out.println("1. Anmelden");
System.out.println("2. Medien durchsuchen");
System.out.println("3. Ausleihen eines Mediums");
System.out.println("4. Rückgabe eines Mediums");
System.out.println("5. Zeige ausgeliehene Medien und Gebühren");
System.out.println("6. Verlängern der Leihfrist");
System.out.println("7. Admin-Login (Überfällige Gebühren verbuchen)");
System.out.println("8. Systemdatum manuell ändern.");
System.out.println("0. Beenden\n");
System.out.print("Bitte wählen Sie eine Option: ");
int auswahl = scanner.nextInt();
scanner.nextLine();
switch (auswahl) {
case 1 -> anmelden();
case 2 -> durchsuchenMedien();
case 3 -> ausleihenMedium();
case 4 -> rueckgabeMedium();
case 5 -> zeigeAusgelieheneMedienUndGebuehren();
case 6 -> verlaengernLeihfrist();
case 7 -> adminLogin();
case 8 -> aendernDatumManuell();
case 0 -> {
System.out.println("Auf Wiedersehen!");
return;
}
default -> System.out.println("Ungültige Auswahl, bitte erneut versuchen.");
}
}
}
.
.
.
Die Methoden anmelden(), durchsuchenMedien(), usw. bleiben unverändert.

View File

@ -78,7 +78,7 @@ public class BibliothekSystem {
} }
// Durchsuchen der Medien nach einem Titel (Teilstring) und Filterung nach Eigenschaften // Durchsuchen der Medien nach einem Titel (Teilstring) und Filterung nach Eigenschaften
public List<Medium> durchsuchenMedien(String titelTeil, String medienart) { public void durchsuchenMedien(String titelTeil, String medienart) {
List medienliste = medienListe.stream() List medienliste = medienListe.stream()
.filter(m -> m.getTitel().toLowerCase().contains(titelTeil.toLowerCase())) // Titel-Filter .filter(m -> m.getTitel().toLowerCase().contains(titelTeil.toLowerCase())) // Titel-Filter
.filter(m -> medienart == null || m.getMedienart().equalsIgnoreCase(medienart)) // Medienart-Filter .filter(m -> medienart == null || m.getMedienart().equalsIgnoreCase(medienart)) // Medienart-Filter
@ -87,9 +87,8 @@ public class BibliothekSystem {
if(medienliste.isEmpty()) { if(medienliste.isEmpty()) {
System.out.println("Keine passende Medien gefunden."); System.out.println("Keine passende Medien gefunden.");
return null;
} else { } else {
return medienliste; System.out.println(medienliste);
} }
} }