Erste Kommentare hinzugefügt als auch nach Tests erweiterung des Programms um Anforderungen zu erfüllen
parent
f29119eb09
commit
9a4e99d73c
|
@ -36,9 +36,4 @@ public class Admin extends User {
|
|||
System.out.println("- " + medien.getTitel() + " (Rückgabedatum: " + medien.getRueckgabedat() + ")")
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void rolleAnzeigen() {
|
||||
System.out.println("Admin: " + name);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package Bibliothek;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.*;
|
||||
import java.util.function.Predicate;
|
||||
import java.util.stream.Collectors;
|
||||
|
@ -9,6 +10,8 @@ public class Bibliotheksverwaltung {
|
|||
private Map<String, Kunde> kundenListe;
|
||||
private Map<String, Admin> adminListe;
|
||||
private User eingeloggterBenutzer;
|
||||
private LocalDate aktuellesDatum = LocalDate.now();
|
||||
|
||||
|
||||
public Bibliotheksverwaltung() {
|
||||
medienBestand = new HashMap<>();
|
||||
|
@ -16,6 +19,9 @@ public class Bibliotheksverwaltung {
|
|||
adminListe = new HashMap<>();
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter Methoden
|
||||
*/
|
||||
public Map<String, Kunde> getKundenListe() {
|
||||
return kundenListe;
|
||||
}
|
||||
|
@ -28,24 +34,63 @@ public class Bibliotheksverwaltung {
|
|||
return eingeloggterBenutzer;
|
||||
}
|
||||
|
||||
public List<Medien> sucheMedienNachTitel(String titel) {
|
||||
public LocalDate getAktuellesDatum() {
|
||||
return aktuellesDatum;
|
||||
}
|
||||
|
||||
/**
|
||||
* Setter für Datumsmanipulation
|
||||
*
|
||||
* @param datum
|
||||
*/
|
||||
public void setAktuellesDatum(LocalDate datum) {
|
||||
this.aktuellesDatum = datum;
|
||||
System.out.println("Systemdatum auf " + aktuellesDatum + " gesetzt.");
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Methode mit der man nach Medien suchen kann und angezeigt bekommt ob die Medien geführt werden, ob sie
|
||||
* verfügbar sind oder ob sie ausgeliehen sind sowohl als auch bis wann ausgeliehen
|
||||
*
|
||||
* @param titel
|
||||
* @return
|
||||
*/
|
||||
public List<String> sucheMedienNachTitel(String titel) {
|
||||
return medienBestand.values().stream()
|
||||
.filter(medien -> medien.getTitel().toLowerCase().contains(titel.toLowerCase()))
|
||||
.map(medien -> {
|
||||
String status = medien.verfuegbar()
|
||||
? "[Verfügbar]"
|
||||
: "[Ausgeliehen bis: " + medien.getRueckgabedat() + "]";
|
||||
return medien.getDetails() + " " + status;
|
||||
})
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
/**
|
||||
* Zeigt alle Medien die in der Bib geführt werden, ebenfalls mit der Info verfügbar oder ausgeliehen
|
||||
*/
|
||||
public void alleMedienAnzeigen() {
|
||||
if (medienBestand.isEmpty()) {
|
||||
System.out.println("Keine Medien im Bestand.");
|
||||
} else {
|
||||
System.out.println("Medienbestand:");
|
||||
medienBestand.values().forEach(m ->
|
||||
System.out.println("- " + m.getDetails() +
|
||||
(m.verfuegbar() ? " [Verfügbar]" : " [Ausgeliehen]"))
|
||||
);
|
||||
medienBestand.values().forEach(medien -> {
|
||||
String status = medien.verfuegbar()
|
||||
? "[Verfügbar]"
|
||||
: "[Ausgeliehen bis: " + medien.getRueckgabedat() + "]";
|
||||
System.out.println("- " + medien.getDetails() + " " + status);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode um ein Medium auszuleihen
|
||||
* Kunde muss dafür eingeloggt sein, Medium kann nicht mehrfach ausgeliehen werden
|
||||
*
|
||||
* @param medienId
|
||||
*/
|
||||
public void medienAusleihen(String medienId) {
|
||||
medienId = medienId.trim().toUpperCase(); // Normalisierung
|
||||
Medien medien = medienBestand.get(medienId);
|
||||
|
@ -68,12 +113,16 @@ public class Bibliotheksverwaltung {
|
|||
System.out.println("Medium erfolgreich ausgeliehen: " + medien.getTitel());
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Kunde gibt sein ausgeliehens Medium zurück, wenn er überzogen hat
|
||||
* wird dem konto die Überziehungsgebühr addiert
|
||||
*
|
||||
* @param medienId
|
||||
* @param kundenId
|
||||
*/
|
||||
public void medienZurueckgeben(String medienId, String kundenId) {
|
||||
Medien medien = medienBestand.get(medienId);
|
||||
Kunde kunde = kundenListe.get(kundenId);
|
||||
|
||||
if (medien == null) {
|
||||
System.out.println("Medium nicht gefunden.");
|
||||
return;
|
||||
|
@ -83,14 +132,20 @@ public class Bibliotheksverwaltung {
|
|||
return;
|
||||
}
|
||||
if (kunde.getAusgelieheneMedien().contains(medien)) {
|
||||
double gebuehren = medien.berechneGebuehren(aktuellesDatum);
|
||||
kunde.addGebuehren(gebuehren); // Gebühren hinzufügen
|
||||
kunde.medienZurueckgeben(medien);
|
||||
medien.setVerfuegbar(true);
|
||||
System.out.println("Medium erfolgreich zurückgegeben: " + medien.getTitel());
|
||||
if (gebuehren > 0) {
|
||||
System.out.println("Überziehungsgebühren: " + gebuehren + " € wurden dem Konto hinzugefügt.");
|
||||
}
|
||||
} else {
|
||||
System.out.println("Dieses Medium wurde nicht von diesem Kunden ausgeliehen.");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void medienVerlaengern(String medienId, String kundenId, int aktuelleVerlaengerungen) {
|
||||
Medien medien = medienBestand.get(medienId);
|
||||
Kunde kunde = kundenListe.get(kundenId);
|
||||
|
@ -157,6 +212,7 @@ public class Bibliotheksverwaltung {
|
|||
System.out.println("Kein Benutzer ist eingeloggt.");
|
||||
}
|
||||
}
|
||||
|
||||
public Kunde registriereKunde(String name, boolean istStudent) {
|
||||
String prefix = istStudent ? "S" : "K";
|
||||
int maxId = kundenListe.keySet().stream()
|
||||
|
@ -172,4 +228,32 @@ public class Bibliotheksverwaltung {
|
|||
return neuerKunde;
|
||||
}
|
||||
|
||||
public void zeigeAusgelieheneMedien() {
|
||||
if (!(eingeloggterBenutzer instanceof Kunde)) {
|
||||
System.out.println("Nur eingeloggte Kunden können ausgeliehene Medien anzeigen.");
|
||||
return;
|
||||
}
|
||||
Kunde kunde = (Kunde) eingeloggterBenutzer;
|
||||
List<Medien> ausgelieheneMedien = kunde.getAusgelieheneMedien();
|
||||
if (ausgelieheneMedien.isEmpty()) {
|
||||
System.out.println("Es wurden keine Medien ausgeliehen.");
|
||||
} else {
|
||||
System.out.println("Ausgeliehene Medien:");
|
||||
ausgelieheneMedien.forEach(medien -> {
|
||||
double gebuehren = medien.berechneGebuehren(aktuellesDatum);
|
||||
String status = medien.verfuegbar()
|
||||
? "[Verfügbar]"
|
||||
: "[Ausgeliehen bis: " + medien.getRueckgabedat() + ", Gebühren: " + gebuehren + " €]";
|
||||
System.out.println("- " + medien.getDetails() + " " + status);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
public void pruefeUeberzogeneMedien() {
|
||||
System.out.println("Überzogene Medien (Stand: " + aktuellesDatum + "):");
|
||||
medienBestand.values().stream()
|
||||
.filter(medien -> !medien.verfuegbar() && medien.istUeberzogen(aktuellesDatum))
|
||||
.forEach(medien -> System.out.println("- " + medien.getDetails() + " (Rückgabedatum: " + medien.getRueckgabedat() + ")"));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -5,7 +5,7 @@ public class Brettspiel extends Medien {
|
|||
private int spieldauer;
|
||||
|
||||
public Brettspiel(String titel, String id, int erscheinungsjahr, int spieleranzahl, int spieldauer) {
|
||||
super(id, titel, erscheinungsjahr);
|
||||
super(titel, id, erscheinungsjahr);
|
||||
this.spieleranzahl = spieleranzahl;
|
||||
this.spieldauer = spieldauer;
|
||||
}
|
||||
|
|
|
@ -5,7 +5,7 @@ public class Buch extends Medien {
|
|||
private int seitenanzahl;
|
||||
|
||||
public Buch(String titel, String id, int erscheinungsjahr, String autor, int seitenanzahl) {
|
||||
super(titel ,id, erscheinungsjahr);
|
||||
super(titel, id, erscheinungsjahr);
|
||||
this.autor = autor;
|
||||
this.seitenanzahl = seitenanzahl;
|
||||
}
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
package Bibliothek;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public class Kunde extends User {
|
||||
private boolean istStudent; // True, wenn Kunde ein Student ist
|
||||
private double gebuehren; // Offene Gebühren
|
||||
private double gebuehren;
|
||||
; // Offene Gebühren
|
||||
|
||||
public Kunde(String id, String name, boolean istStudent) {
|
||||
super(id, name);
|
||||
|
@ -20,27 +22,23 @@ public class Kunde extends User {
|
|||
return gebuehren;
|
||||
}
|
||||
|
||||
public void addGebuehren(double betrag) {
|
||||
if (betrag > 0) {
|
||||
this.gebuehren += betrag;
|
||||
}
|
||||
}
|
||||
|
||||
public void gebuehrenErhoehen(double betrag) {
|
||||
this.gebuehren += betrag;
|
||||
}
|
||||
|
||||
public void berechneGebuehren() {
|
||||
// Gebühren berechnen basierend auf verspäteter Rückgabe
|
||||
ausgelieheneMedien.forEach(medien -> {
|
||||
if (medien.getRueckgabedat().isBefore(java.time.LocalDate.now())) {
|
||||
int ueberfaelligeTage = java.time.Period.between(
|
||||
medien.getRueckgabedat(),
|
||||
java.time.LocalDate.now()
|
||||
).getDays();
|
||||
|
||||
double tagessatz = istStudent ? 0.5 : 1.0; // Studenten zahlen 50% weniger
|
||||
gebuehren += ueberfaelligeTage <= 7
|
||||
? ueberfaelligeTage * tagessatz
|
||||
: (7 * tagessatz) + ((ueberfaelligeTage - 7) * 2);
|
||||
}
|
||||
});
|
||||
public double berechneGesamtgebuehren(LocalDate aktuellesDatum) {
|
||||
return ausgelieheneMedien.stream()
|
||||
.mapToDouble(medien -> medien.berechneGebuehren(aktuellesDatum))
|
||||
.sum();
|
||||
}
|
||||
|
||||
|
||||
public boolean medienVerlaengern(Medien medien, int aktuelleVerlaengerungen) {
|
||||
Consumer<Medien> verlaengerung = m -> {
|
||||
if (ausgelieheneMedien.contains(m) && m.verlaengern(aktuelleVerlaengerungen)) {
|
||||
|
@ -52,9 +50,4 @@ public class Kunde extends User {
|
|||
verlaengerung.accept(medien);
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void rolleAnzeigen() {
|
||||
System.out.println("Kunde: " + name + (istStudent ? " (Student)" : " (Erwachsener)"));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,25 +3,39 @@ package Bibliothek;
|
|||
public class Main {
|
||||
public static void main(String[] args) {
|
||||
Bibliotheksverwaltung verwaltung = new Bibliotheksverwaltung();
|
||||
|
||||
Kunde kunde1 = new Kunde("S001", "Max Mustermann", true);
|
||||
Kunde kunde2 = new Kunde("K001", "Lisa Müller", false);
|
||||
/**
|
||||
* Hart codierte Kunden und Admin
|
||||
*/
|
||||
Kunde kunde1 = new Kunde("S1", "Max Mustermann", true);
|
||||
Kunde kunde2 = new Kunde("K1", "Lisa Müller", false);
|
||||
verwaltung.getKundenListe().put(kunde1.getId(), kunde1);
|
||||
verwaltung.getKundenListe().put(kunde2.getId(), kunde2);
|
||||
|
||||
Admin admin = new Admin("A001", "Anna Schmidt");
|
||||
Admin admin = new Admin("A1", "Anna Schmidt");
|
||||
verwaltung.getAdminListe().put(admin.getId(), admin);
|
||||
|
||||
Medien buch1 = new Buch("Der Herr der Ringe", "B001", 1954, "J.R.R. Tolkien", 1200);
|
||||
Medien buch2 = new Buch("Game of Thrones 1: Der Winter naht", "B002", 1996, "George R.R. Martin", 576);
|
||||
Medien buch3 = new Buch("Harry Potter and the Prisoner of Azkaban", "B003", 2014, "J.K. Rowling", 480);
|
||||
Medien dvd1 = new DVD("Inception", "D001", 2010, "Christopher Nolan", 148);
|
||||
Medien dvd2 = new DVD("Batman 'The Dark Knight'", "D002", 2008, "Christopher Nolan", 152);
|
||||
Medien dvd3 = new DVD("Star Wars: Episode 3 'Die Rache der Sith'", "D003", 2005, "George Lucas", 140);
|
||||
Medien cd1 = new CD("Black Ice", "CD001", 2001, "ACDC", 15);
|
||||
Medien cd2 = new CD("From Zero", "CD002", 2024, "Linkin Park", 11);
|
||||
Medien cd3 = new CD("The War to end all Wars", "CD003", 2022, "Sabaton", 10);
|
||||
/**
|
||||
* Hart codierte Medien
|
||||
*/
|
||||
Medien buch1 = new Buch("Der Herr der Ringe", "B1", 1954, "J.R.R. Tolkien", 1200);
|
||||
Medien buch2 = new Buch("Game of Thrones 1: Der Winter naht", "B2", 1996, "George R.R. Martin", 576);
|
||||
Medien buch3 = new Buch("Harry Potter and the Prisoner of Azkaban", "B3", 2014, "J.K. Rowling", 480);
|
||||
Medien dvd1 = new DVD("Inception", "D1", 2010, "Christopher Nolan", 148);
|
||||
Medien dvd2 = new DVD("Batman 'The Dark Knight'", "D2", 2008, "Christopher Nolan", 152);
|
||||
Medien dvd3 = new DVD("Star Wars: Episode 3 'Die Rache der Sith'", "D3", 2005, "George Lucas", 140);
|
||||
Medien cd1 = new CD("Black Ice", "CD1", 2001, "ACDC", 15);
|
||||
Medien cd2 = new CD("From Zero", "CD2", 2024, "Linkin Park", 11);
|
||||
Medien cd3 = new CD("The War to end all Wars", "CD3", 2022, "Sabaton", 10);
|
||||
Medien br1 = new Brettspiel("Wizard", "BR1", 1984, 4, 50);
|
||||
Medien br2 = new Brettspiel("Mensch Ärgere dich nicht", "BR2", 1910, 6, 50);
|
||||
Medien br3 = new Brettspiel("Monopoly Star Wars Edition", "BR3", 2016, 4, 60);
|
||||
Medien vd1 = new Videospiel("Cyberpunk2077", "VD1", 2022, "PC/PS5/XBOX", "CD Projekt Red");
|
||||
Medien vd2 = new Videospiel("Landwirtschafts-Simulator 25", "VD2", 2024, "PC/PS5/XBOX", "Giants");
|
||||
Medien vd3 = new Videospiel("CFB25", "VD3", 2024, "PC/PS5/XBOX", "EA-Sports");
|
||||
|
||||
/**
|
||||
* Hinzufügen Methode der hart codierten Medien
|
||||
*/
|
||||
verwaltung.medienHinzufuegen(buch1);
|
||||
verwaltung.medienHinzufuegen(buch2);
|
||||
verwaltung.medienHinzufuegen(buch3);
|
||||
|
@ -31,6 +45,12 @@ public class Main {
|
|||
verwaltung.medienHinzufuegen(cd1);
|
||||
verwaltung.medienHinzufuegen(cd2);
|
||||
verwaltung.medienHinzufuegen(cd3);
|
||||
verwaltung.medienHinzufuegen(br1);
|
||||
verwaltung.medienHinzufuegen(br2);
|
||||
verwaltung.medienHinzufuegen(br3);
|
||||
verwaltung.medienHinzufuegen(vd1);
|
||||
verwaltung.medienHinzufuegen(vd2);
|
||||
verwaltung.medienHinzufuegen(vd3);
|
||||
|
||||
// Starte UI
|
||||
UI tui = new UI(verwaltung);
|
||||
|
|
|
@ -15,15 +15,19 @@ public abstract class Medien {
|
|||
this.id = id;
|
||||
this.erscheinungsjahr = erscheinungsjahr;
|
||||
}
|
||||
|
||||
public String getTitel() {
|
||||
return titel;
|
||||
}
|
||||
|
||||
public void setTitel(String titel) {
|
||||
this.titel = titel;
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(String id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
@ -32,19 +36,24 @@ public abstract class Medien {
|
|||
return rueckgabedat;
|
||||
}
|
||||
|
||||
public boolean verfuegbar(){
|
||||
public boolean verfuegbar() {
|
||||
return verfuegbar;
|
||||
}
|
||||
|
||||
public int getErscheinungsjahr() {
|
||||
return erscheinungsjahr;
|
||||
}
|
||||
|
||||
public void setErscheinungsjahr(int er) {
|
||||
this.erscheinungsjahr = er;
|
||||
}
|
||||
|
||||
public void setVerfuegbar(boolean verfuegbar) {
|
||||
this.verfuegbar = verfuegbar;
|
||||
}
|
||||
|
||||
public abstract int getAusleihdauer();
|
||||
|
||||
public abstract int getMaxVerlaengerungen();
|
||||
|
||||
public void ausleihen() {
|
||||
|
@ -75,5 +84,19 @@ public abstract class Medien {
|
|||
rueckgabedat = null;
|
||||
}
|
||||
|
||||
public boolean istUeberzogen(LocalDate aktuellesDatum) {
|
||||
return rueckgabedat != null && rueckgabedat.isBefore(aktuellesDatum);
|
||||
}
|
||||
|
||||
public double berechneGebuehren(LocalDate aktuellesDatum) {
|
||||
if (rueckgabedat == null || !istUeberzogen(aktuellesDatum)) {
|
||||
return 0.0; // Keine Gebühren, wenn nicht überzogen
|
||||
}
|
||||
|
||||
long ueberzogeneTage = java.time.temporal.ChronoUnit.DAYS.between(rueckgabedat, aktuellesDatum);
|
||||
return ueberzogeneTage * 0.50; // Beispiel: 0.50 Euro pro überzogenem Tag
|
||||
}
|
||||
|
||||
|
||||
public abstract String getDetails();
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package Bibliothek;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.Scanner;
|
||||
|
||||
public class UI {
|
||||
|
@ -35,6 +36,8 @@ public class UI {
|
|||
System.out.println("10. Gebühren anzeigen");
|
||||
System.out.println("11. Gebühren verbuchen (Admin)");
|
||||
System.out.println("12. Medien hinzufügen (Admin)");
|
||||
System.out.println("13. Meine ausgeliehenen Medien anzeigen");
|
||||
System.out.println("14. Datum einstellen");
|
||||
System.out.println("0. Beenden");
|
||||
System.out.print("Auswahl: ");
|
||||
}
|
||||
|
@ -53,11 +56,16 @@ public class UI {
|
|||
case "10" -> gebuehrenAnzeigen();
|
||||
case "11" -> gebuehrenVerbuchen();
|
||||
case "12" -> medienHinzufuegen();
|
||||
case "13" -> ausgeliehenenMedienAnzeigen();
|
||||
case "14" -> datumEinstellen();
|
||||
case "0" -> System.out.println("Beende das Programm...");
|
||||
default -> System.out.println("Ungültige Auswahl. Bitte erneut versuchen.");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Wartet auf die Eingabe der Kunden-Id, wenn diese existiert wird der User eingeloggt
|
||||
*/
|
||||
private void loginKunde() {
|
||||
System.out.print("Kunden-ID eingeben: ");
|
||||
String kundenId = scanner.nextLine();
|
||||
|
@ -92,7 +100,6 @@ public class UI {
|
|||
Kunde neuerKunde = verwaltung.registriereKunde(name, istStudent);
|
||||
}
|
||||
|
||||
|
||||
private void medienDurchsuchen() {
|
||||
System.out.print("Suchbegriff eingeben: ");
|
||||
String suchbegriff = scanner.nextLine();
|
||||
|
@ -102,7 +109,7 @@ public class UI {
|
|||
System.out.println("Keine Medien gefunden.");
|
||||
} else {
|
||||
System.out.println("Suchergebnisse:");
|
||||
ergebnisse.forEach(medien -> System.out.println("- " + medien.getDetails()));
|
||||
ergebnisse.forEach(System.out::println);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -152,13 +159,15 @@ public class UI {
|
|||
|
||||
private void gebuehrenAnzeigen() {
|
||||
if (!(verwaltung.getEingeloggterBenutzer() instanceof Kunde)) {
|
||||
System.out.println("Bitte loggen Sie sich als Kunde ein, um Gebühren anzuzeigen.");
|
||||
System.out.println("Nur eingeloggte Kunden können ihre Gebühren anzeigen.");
|
||||
return;
|
||||
}
|
||||
Kunde kunde = (Kunde) verwaltung.getEingeloggterBenutzer();
|
||||
System.out.println("Gebühren von " + kunde.getName() + ": " + kunde.getGebuehren() + "€");
|
||||
double gesamtgebuehren = kunde.berechneGesamtgebuehren(verwaltung.getAktuellesDatum());
|
||||
System.out.println("Gesamtgebühren: " + gesamtgebuehren + " €");
|
||||
}
|
||||
|
||||
|
||||
private void gebuehrenVerbuchen() {
|
||||
if (!(verwaltung.getEingeloggterBenutzer() instanceof Admin)) {
|
||||
System.out.println("Nur Admins können Gebühren verbuchen. Bitte als Admin einloggen.");
|
||||
|
@ -171,7 +180,6 @@ public class UI {
|
|||
System.out.println("Kunde nicht gefunden.");
|
||||
return;
|
||||
}
|
||||
|
||||
System.out.print("Betrag eingeben: ");
|
||||
try {
|
||||
double betrag = Double.parseDouble(scanner.nextLine());
|
||||
|
@ -245,4 +253,21 @@ public class UI {
|
|||
System.out.println("Ungültige Eingabe. Bitte eine Zahl eingeben.");
|
||||
}
|
||||
}
|
||||
|
||||
private void ausgeliehenenMedienAnzeigen() {
|
||||
verwaltung.zeigeAusgelieheneMedien();
|
||||
}
|
||||
|
||||
private void datumEinstellen() {
|
||||
System.out.print("Neues Datum eingeben (YYYY-MM-DD): ");
|
||||
String eingabe = scanner.nextLine();
|
||||
try {
|
||||
LocalDate neuesDatum = LocalDate.parse(eingabe);
|
||||
verwaltung.setAktuellesDatum(neuesDatum);
|
||||
} catch (Exception e) {
|
||||
System.out.println("Ungültiges Datum. Bitte im Format YYYY-MM-DD eingeben.");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -45,6 +45,4 @@ public abstract class User {
|
|||
System.out.println("'" + medien.getTitel() + "' wurde nicht von " + name + " ausgeliehen.");
|
||||
}
|
||||
}
|
||||
|
||||
public abstract void rolleAnzeigen();
|
||||
}
|
||||
|
|
|
@ -5,7 +5,7 @@ public class Videospiel extends Medien {
|
|||
private String entwickler;
|
||||
|
||||
public Videospiel(String titel, String id, int erscheinungsjahr, String plattform, String entwickler) {
|
||||
super(id, titel, erscheinungsjahr);
|
||||
super(titel, id, erscheinungsjahr);
|
||||
this.plattform = plattform;
|
||||
this.entwickler = entwickler;
|
||||
}
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue