Nach Tests anpassung um Programm funktional zu machen
parent
cf66cc6bd2
commit
f29119eb09
|
@ -47,25 +47,29 @@ public class Bibliotheksverwaltung {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void medienAusleihen(String medienId) {
|
public void medienAusleihen(String medienId) {
|
||||||
if (eingeloggterBenutzer == null || !(eingeloggterBenutzer instanceof Kunde)) {
|
medienId = medienId.trim().toUpperCase(); // Normalisierung
|
||||||
System.out.println("Bitte loggen Sie sich als Kunde ein, um Medien auszuleihen.");
|
Medien medien = medienBestand.get(medienId);
|
||||||
|
|
||||||
|
if (medien == null) {
|
||||||
|
System.out.println("Medium mit der ID " + medienId + " wurde nicht gefunden.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Medien medien = medienBestand.get(medienId);
|
if (!medien.verfuegbar()) {
|
||||||
if (medien == null) {
|
System.out.println("Das Medium ist bereits ausgeliehen.");
|
||||||
System.out.println("Medium nicht gefunden.");
|
return;
|
||||||
|
}
|
||||||
|
if (!(eingeloggterBenutzer instanceof Kunde)) {
|
||||||
|
System.out.println("Nur Kunden können Medien ausleihen.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Kunde kunde = (Kunde) eingeloggterBenutzer;
|
Kunde kunde = (Kunde) eingeloggterBenutzer;
|
||||||
if (medien.verfuegbar()) {
|
|
||||||
kunde.medienAusleihen(medien);
|
kunde.medienAusleihen(medien);
|
||||||
medien.setVerfuegbar(false);
|
medien.setVerfuegbar(false);
|
||||||
System.out.println("Medium erfolgreich ausgeliehen: " + medien.getTitel());
|
System.out.println("Medium erfolgreich ausgeliehen: " + medien.getTitel());
|
||||||
} else {
|
|
||||||
System.out.println("Medium ist bereits ausgeliehen.");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public void medienZurueckgeben(String medienId, String kundenId) {
|
public void medienZurueckgeben(String medienId, String kundenId) {
|
||||||
Medien medien = medienBestand.get(medienId);
|
Medien medien = medienBestand.get(medienId);
|
||||||
Kunde kunde = kundenListe.get(kundenId);
|
Kunde kunde = kundenListe.get(kundenId);
|
||||||
|
@ -104,8 +108,13 @@ public class Bibliotheksverwaltung {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void medienHinzufuegen(Medien medien) {
|
public void medienHinzufuegen(Medien medien) {
|
||||||
medienBestand.put(medien.getId(), medien);
|
String id = medien.getId().trim().toUpperCase(); // Normalisierung
|
||||||
System.out.println("Medium hinzugefügt: " + medien.getTitel());
|
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) {
|
public boolean loginKunde(String kundenId) {
|
||||||
|
|
|
@ -4,7 +4,7 @@ public class Brettspiel extends Medien {
|
||||||
private int spieleranzahl;
|
private int spieleranzahl;
|
||||||
private int spieldauer;
|
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);
|
super(id, titel, erscheinungsjahr);
|
||||||
this.spieleranzahl = spieleranzahl;
|
this.spieleranzahl = spieleranzahl;
|
||||||
this.spieldauer = spieldauer;
|
this.spieldauer = spieldauer;
|
||||||
|
|
|
@ -4,8 +4,8 @@ public class Buch extends Medien {
|
||||||
private String autor;
|
private String autor;
|
||||||
private int seitenanzahl;
|
private int seitenanzahl;
|
||||||
|
|
||||||
public Buch(String id, String titel, int erscheinungsjahr, String autor, int seitenanzahl) {
|
public Buch(String titel, String id, int erscheinungsjahr, String autor, int seitenanzahl) {
|
||||||
super(id, titel, erscheinungsjahr);
|
super(titel ,id, erscheinungsjahr);
|
||||||
this.autor = autor;
|
this.autor = autor;
|
||||||
this.seitenanzahl = seitenanzahl;
|
this.seitenanzahl = seitenanzahl;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,8 +4,8 @@ public class CD extends Medien {
|
||||||
private String kuenstler;
|
private String kuenstler;
|
||||||
private int tracks;
|
private int tracks;
|
||||||
|
|
||||||
public CD(String id, String titel, int erscheinungsjahr, String kuenstler, int tracks) {
|
public CD(String titel, String id, int erscheinungsjahr, String kuenstler, int tracks) {
|
||||||
super(id, titel, erscheinungsjahr);
|
super(titel, id, erscheinungsjahr);
|
||||||
this.kuenstler = kuenstler;
|
this.kuenstler = kuenstler;
|
||||||
this.tracks = tracks;
|
this.tracks = tracks;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,8 +4,8 @@ public class DVD extends Medien {
|
||||||
private String regisseur;
|
private String regisseur;
|
||||||
private int spieldauer;
|
private int spieldauer;
|
||||||
|
|
||||||
public DVD(String id, String titel, int erscheinungsjahr, String regisseur, int spieldauer) {
|
public DVD(String titel, String id, int erscheinungsjahr, String regisseur, int spieldauer) {
|
||||||
super(id, titel, erscheinungsjahr);
|
super(titel, id, erscheinungsjahr);
|
||||||
this.regisseur = regisseur;
|
this.regisseur = regisseur;
|
||||||
this.spieldauer = spieldauer;
|
this.spieldauer = spieldauer;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,6 @@ package Bibliothek;
|
||||||
|
|
||||||
public class Main {
|
public class Main {
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
|
|
||||||
Bibliotheksverwaltung verwaltung = new Bibliotheksverwaltung();
|
Bibliotheksverwaltung verwaltung = new Bibliotheksverwaltung();
|
||||||
|
|
||||||
Kunde kunde1 = new Kunde("S001", "Max Mustermann", true);
|
Kunde kunde1 = new Kunde("S001", "Max Mustermann", true);
|
||||||
|
@ -13,12 +12,27 @@ public class Main {
|
||||||
Admin admin = new Admin("A001", "Anna Schmidt");
|
Admin admin = new Admin("A001", "Anna Schmidt");
|
||||||
verwaltung.getAdminListe().put(admin.getId(), admin);
|
verwaltung.getAdminListe().put(admin.getId(), admin);
|
||||||
|
|
||||||
Medien buch = new Buch("B001", "Der Herr der Ringe", 1954, "J.R.R. Tolkien", 1200);
|
Medien buch1 = new Buch("Der Herr der Ringe", "B001", 1954, "J.R.R. Tolkien", 1200);
|
||||||
Medien dvd = new DVD("D001", "Inception", 2010, "Christopher Nolan", 148);
|
Medien buch2 = new Buch("Game of Thrones 1: Der Winter naht", "B002", 1996, "George R.R. Martin", 576);
|
||||||
verwaltung.medienHinzufuegen(buch);
|
Medien buch3 = new Buch("Harry Potter and the Prisoner of Azkaban", "B003", 2014, "J.K. Rowling", 480);
|
||||||
verwaltung.medienHinzufuegen(dvd);
|
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);
|
UI tui = new UI(verwaltung);
|
||||||
tui.start();
|
tui.start();
|
||||||
}
|
}
|
||||||
|
|
|
@ -90,7 +90,6 @@ public class UI {
|
||||||
boolean istStudent = studentAntwort.equals("ja");
|
boolean istStudent = studentAntwort.equals("ja");
|
||||||
|
|
||||||
Kunde neuerKunde = verwaltung.registriereKunde(name, istStudent);
|
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;
|
return;
|
||||||
}
|
}
|
||||||
System.out.print("Medium-ID eingeben: ");
|
System.out.print("Medium-ID eingeben: ");
|
||||||
String medienId = scanner.nextLine();
|
String medienId = scanner.nextLine().trim();
|
||||||
verwaltung.medienAusleihen(medienId);
|
verwaltung.medienAusleihen(medienId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ public class Videospiel extends Medien {
|
||||||
private String plattform;
|
private String plattform;
|
||||||
private String entwickler;
|
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);
|
super(id, titel, erscheinungsjahr);
|
||||||
this.plattform = plattform;
|
this.plattform = plattform;
|
||||||
this.entwickler = entwickler;
|
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