weitere Verbesserungen, einige prompts hinzugefügt
parent
94572b5334
commit
beae8953c7
|
@ -0,0 +1,14 @@
|
|||
ich: erstelle eine Methode, die das Medienkatalog nach Titel, medienart und ob es ausgeliehen ist durchsucht
|
||||
|
||||
AI: Hier ist die Methode durchsuchenMedien(String titelTeil, String medienart, Boolean istAusgeliehen),
|
||||
die das Medienkatalog nach Titel, medienart und ob es ausgeliehen ist durchsucht
|
||||
|
||||
Java Code:
|
||||
// Durchsuchen der Medien nach einem Titel (Teilstring) und Filterung nach Eigenschaften
|
||||
public List<Medium> durchsuchenMedien(String titelTeil, String medienart, Boolean istAusgeliehen) {
|
||||
return medien.stream()
|
||||
.filter(m -> m.getTitel().toLowerCase().contains(titelTeil.toLowerCase())) // Titel-Filter
|
||||
.filter(m -> medienart == null || m.getMedienart().equalsIgnoreCase(medienart)) // Medienart-Filter
|
||||
.filter(m -> istAusgeliehen == null || m.istAusgeliehen() == istAusgeliehen) // Ausleihstatus-Filter
|
||||
.collect(Collectors.toList());
|
||||
}
|
|
@ -78,6 +78,7 @@ public class BibliothekSystem {
|
|||
}
|
||||
|
||||
// Durchsuchen der Medien nach einem Titel (Teilstring) und Filterung nach Eigenschaften
|
||||
//Von AI generiert
|
||||
public void durchsuchenMedien(String titelTeil, String medienart) {
|
||||
List medienliste = medienListe.stream()
|
||||
.filter(m -> m.getTitel().toLowerCase().contains(titelTeil.toLowerCase())) // Titel-Filter
|
||||
|
@ -198,6 +199,23 @@ public class BibliothekSystem {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
//Methode zum Berechnen der overdue-Gebühren
|
||||
//Von AI generiert
|
||||
public double rechneOverdueGebuehren(long overdueTagen) {
|
||||
if (overdueTagen <= 0){
|
||||
return 0;
|
||||
}
|
||||
if (overdueTagen <= 7){
|
||||
return overdueTagen * 1.0; //1 euro pro Tag für die ersten 7 Tage
|
||||
}
|
||||
return (7*1.0) + ((overdueTagen - 7) * 2.0); // 2 euro pro Tag ab dem 8. Tag
|
||||
}
|
||||
|
||||
|
||||
//------------Hilfsmethoden-----------------------
|
||||
|
||||
|
||||
//Methode zum Finden eines Benutzers
|
||||
public Benutzer findeBenutzer(String kartennummer) {
|
||||
return benutzerListe.get(Integer.parseInt(kartennummer));
|
||||
|
@ -212,7 +230,6 @@ public class BibliothekSystem {
|
|||
.orElse(null);
|
||||
}
|
||||
|
||||
|
||||
//Methode, um das Systemdatum zu setzen
|
||||
public void setAktuellesDatum(Date manuellesDatum) {
|
||||
this.aktuellesDatum = manuellesDatum;
|
||||
|
@ -233,28 +250,6 @@ public class BibliothekSystem {
|
|||
System.out.println("Benutzer registriert: " + benutzer + ", Jahresgebühr: " + jahresgebuehr);
|
||||
}
|
||||
|
||||
/*public void zeigeGebuehren(Benutzer benutzer) {
|
||||
benutzer.aktualisiereGebuehren(aktuellesDatum);
|
||||
|
||||
if (benutzer.sindGebuehrenBezahlt()) {
|
||||
System.out.println("Alle Gebühren von " + benutzer.getName() + " sind bezahlt.");
|
||||
} else {
|
||||
System.out.println("Aktuelle Gebühren für " + benutzer.getName() + ": " + benutzer.getOffeneGebuehren() + "€");
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
|
||||
//Methode zum Berechnen der overdue-Gebühren
|
||||
//Von AI generiert
|
||||
public double rechneOverdueGebuehren(long overdueTagen) {
|
||||
if (overdueTagen <= 0){
|
||||
return 0;
|
||||
}
|
||||
if (overdueTagen <= 7){
|
||||
return overdueTagen * 1.0; //1 euro pro Tag für die ersten 7 Tage
|
||||
}
|
||||
return (7*1.0) + ((overdueTagen - 7) * 2.0); // 2 euro pro Tag ab dem 8. Tag
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue