Nach Tests anpassung um Programm funktional zu machen
parent
cf66cc6bd2
commit
f29119eb09
|
@ -47,25 +47,29 @@ public class Bibliotheksverwaltung {
|
|||
}
|
||||
|
||||
public void medienAusleihen(String medienId) {
|
||||
if (eingeloggterBenutzer == null || !(eingeloggterBenutzer instanceof Kunde)) {
|
||||
System.out.println("Bitte loggen Sie sich als Kunde ein, um Medien auszuleihen.");
|
||||
medienId = medienId.trim().toUpperCase(); // Normalisierung
|
||||
Medien medien = medienBestand.get(medienId);
|
||||
|
||||
if (medien == null) {
|
||||
System.out.println("Medium mit der ID " + medienId + " wurde nicht gefunden.");
|
||||
return;
|
||||
}
|
||||
Medien medien = medienBestand.get(medienId);
|
||||
if (medien == null) {
|
||||
System.out.println("Medium nicht gefunden.");
|
||||
if (!medien.verfuegbar()) {
|
||||
System.out.println("Das Medium ist bereits ausgeliehen.");
|
||||
return;
|
||||
}
|
||||
if (!(eingeloggterBenutzer instanceof Kunde)) {
|
||||
System.out.println("Nur Kunden können Medien ausleihen.");
|
||||
return;
|
||||
}
|
||||
Kunde kunde = (Kunde) eingeloggterBenutzer;
|
||||
if (medien.verfuegbar()) {
|
||||
kunde.medienAusleihen(medien);
|
||||
medien.setVerfuegbar(false);
|
||||
System.out.println("Medium erfolgreich ausgeliehen: " + medien.getTitel());
|
||||
} else {
|
||||
System.out.println("Medium ist bereits ausgeliehen.");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
public void medienZurueckgeben(String medienId, String kundenId) {
|
||||
Medien medien = medienBestand.get(medienId);
|
||||
Kunde kunde = kundenListe.get(kundenId);
|
||||
|
@ -104,8 +108,13 @@ public class Bibliotheksverwaltung {
|
|||
}
|
||||
|
||||
public void medienHinzufuegen(Medien medien) {
|
||||
medienBestand.put(medien.getId(), medien);
|
||||
System.out.println("Medium hinzugefügt: " + medien.getTitel());
|
||||
String id = medien.getId().trim().toUpperCase(); // Normalisierung
|
||||
if (medienBestand.containsKey(id)) {
|
||||
System.out.println("Ein Medium mit dieser ID existiert bereits: " + id);
|
||||
return;
|
||||
}
|
||||
medienBestand.put(id, medien);
|
||||
System.out.println("Medium hinzugefügt: " + medien.getTitel() + " (ID: " + id + ")");
|
||||
}
|
||||
|
||||
public boolean loginKunde(String kundenId) {
|
||||
|
|
|
@ -4,7 +4,7 @@ public class Brettspiel extends Medien {
|
|||
private int spieleranzahl;
|
||||
private int spieldauer;
|
||||
|
||||
public Brettspiel(String id, String titel, int erscheinungsjahr, int spieleranzahl, int spieldauer) {
|
||||
public Brettspiel(String titel, String id, int erscheinungsjahr, int spieleranzahl, int spieldauer) {
|
||||
super(id, titel, erscheinungsjahr);
|
||||
this.spieleranzahl = spieleranzahl;
|
||||
this.spieldauer = spieldauer;
|
||||
|
|
|
@ -4,8 +4,8 @@ public class Buch extends Medien {
|
|||
private String autor;
|
||||
private int seitenanzahl;
|
||||
|
||||
public Buch(String id, String titel, int erscheinungsjahr, String autor, int seitenanzahl) {
|
||||
super(id, titel, erscheinungsjahr);
|
||||
public Buch(String titel, String id, int erscheinungsjahr, String autor, int seitenanzahl) {
|
||||
super(titel ,id, erscheinungsjahr);
|
||||
this.autor = autor;
|
||||
this.seitenanzahl = seitenanzahl;
|
||||
}
|
||||
|
|
|
@ -4,8 +4,8 @@ public class CD extends Medien {
|
|||
private String kuenstler;
|
||||
private int tracks;
|
||||
|
||||
public CD(String id, String titel, int erscheinungsjahr, String kuenstler, int tracks) {
|
||||
super(id, titel, erscheinungsjahr);
|
||||
public CD(String titel, String id, int erscheinungsjahr, String kuenstler, int tracks) {
|
||||
super(titel, id, erscheinungsjahr);
|
||||
this.kuenstler = kuenstler;
|
||||
this.tracks = tracks;
|
||||
}
|
||||
|
|
|
@ -4,8 +4,8 @@ public class DVD extends Medien {
|
|||
private String regisseur;
|
||||
private int spieldauer;
|
||||
|
||||
public DVD(String id, String titel, int erscheinungsjahr, String regisseur, int spieldauer) {
|
||||
super(id, titel, erscheinungsjahr);
|
||||
public DVD(String titel, String id, int erscheinungsjahr, String regisseur, int spieldauer) {
|
||||
super(titel, id, erscheinungsjahr);
|
||||
this.regisseur = regisseur;
|
||||
this.spieldauer = spieldauer;
|
||||
}
|
||||
|
|
|
@ -2,7 +2,6 @@ package Bibliothek;
|
|||
|
||||
public class Main {
|
||||
public static void main(String[] args) {
|
||||
|
||||
Bibliotheksverwaltung verwaltung = new Bibliotheksverwaltung();
|
||||
|
||||
Kunde kunde1 = new Kunde("S001", "Max Mustermann", true);
|
||||
|
@ -13,12 +12,27 @@ public class Main {
|
|||
Admin admin = new Admin("A001", "Anna Schmidt");
|
||||
verwaltung.getAdminListe().put(admin.getId(), admin);
|
||||
|
||||
Medien buch = new Buch("B001", "Der Herr der Ringe", 1954, "J.R.R. Tolkien", 1200);
|
||||
Medien dvd = new DVD("D001", "Inception", 2010, "Christopher Nolan", 148);
|
||||
verwaltung.medienHinzufuegen(buch);
|
||||
verwaltung.medienHinzufuegen(dvd);
|
||||
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);
|
||||
|
||||
verwaltung.medienHinzufuegen(buch1);
|
||||
verwaltung.medienHinzufuegen(buch2);
|
||||
verwaltung.medienHinzufuegen(buch3);
|
||||
verwaltung.medienHinzufuegen(dvd1);
|
||||
verwaltung.medienHinzufuegen(dvd2);
|
||||
verwaltung.medienHinzufuegen(dvd3);
|
||||
verwaltung.medienHinzufuegen(cd1);
|
||||
verwaltung.medienHinzufuegen(cd2);
|
||||
verwaltung.medienHinzufuegen(cd3);
|
||||
|
||||
// Starte UI
|
||||
UI tui = new UI(verwaltung);
|
||||
tui.start();
|
||||
}
|
||||
|
|
|
@ -90,7 +90,6 @@ public class UI {
|
|||
boolean istStudent = studentAntwort.equals("ja");
|
||||
|
||||
Kunde neuerKunde = verwaltung.registriereKunde(name, istStudent);
|
||||
System.out.println("Neuer Kunde registriert: " + neuerKunde.getName() + " (ID: " + neuerKunde.getId() + ")");
|
||||
}
|
||||
|
||||
|
||||
|
@ -118,7 +117,7 @@ public class UI {
|
|||
return;
|
||||
}
|
||||
System.out.print("Medium-ID eingeben: ");
|
||||
String medienId = scanner.nextLine();
|
||||
String medienId = scanner.nextLine().trim();
|
||||
verwaltung.medienAusleihen(medienId);
|
||||
}
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ public class Videospiel extends Medien {
|
|||
private String plattform;
|
||||
private String entwickler;
|
||||
|
||||
public Videospiel(String id, String titel, int erscheinungsjahr, String plattform, String entwickler) {
|
||||
public Videospiel(String titel, String id, int erscheinungsjahr, String plattform, String entwickler) {
|
||||
super(id, titel, erscheinungsjahr);
|
||||
this.plattform = plattform;
|
||||
this.entwickler = entwickler;
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue