Methode payfees hinzugefügt und korrigiert
parent
43324565e5
commit
6bfc94ad33
|
|
@ -4,61 +4,69 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
|
||||
public abstract class User {
|
||||
private String id;
|
||||
private String name;
|
||||
private double outstandingFees; // Ausstehende Gebühren
|
||||
private List<Medium> borrowedMedia;
|
||||
private String id;
|
||||
private String name;
|
||||
private double annualFee; // Jahresgebühr
|
||||
private double outstandingFees; // Ausstehende Gebühren
|
||||
private List<Medium> borrowedMedia;
|
||||
private String role; // "admin", "user", "student", "scholar"
|
||||
|
||||
public User(String id, String name, double annualFee) {
|
||||
this.id = id;
|
||||
this.name = name;
|
||||
this.outstandingFees = 0.0;
|
||||
this.borrowedMedia = new ArrayList<>();
|
||||
}
|
||||
public User(String id, String name, double annualFee, String role) {
|
||||
this.id = id;
|
||||
this.name = name;
|
||||
this.annualFee = annualFee;
|
||||
this.outstandingFees = 0.0;
|
||||
this.borrowedMedia = new ArrayList<>();
|
||||
this.role = role; // Setzt die Rolle des Benutzers
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public double getOutstandingFees() {
|
||||
public double getAnnualFee() {
|
||||
return annualFee;
|
||||
}
|
||||
|
||||
public void addFee(double fee) {
|
||||
this.outstandingFees += fee;
|
||||
}
|
||||
|
||||
public void payFees(double amount) {
|
||||
if (amount > outstandingFees) {
|
||||
System.out.println("Der Betrag übersteigt die ausstehenden Gebühren.");
|
||||
return;
|
||||
}
|
||||
outstandingFees -= amount;
|
||||
System.out.println("Zahlung von " + amount + "€ erfolgreich. Verbleibende Gebühren: " + outstandingFees + "€.");
|
||||
}
|
||||
|
||||
public List<Medium> getBorrowedMedia() {
|
||||
return borrowedMedia;
|
||||
}
|
||||
|
||||
public void borrowMedium(Medium medium) {
|
||||
borrowedMedia.add(medium);
|
||||
}
|
||||
|
||||
public void returnMedium(Medium medium) {
|
||||
borrowedMedia.remove(medium);
|
||||
}
|
||||
|
||||
public String getRole() {
|
||||
return role;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Benutzer{" + "ID='" + id + '\'' + ", Name='" + name + '\'' + ", Jahresgebühr=" + annualFee
|
||||
+ ", Ausstehende Gebühren=" + outstandingFees + '}';
|
||||
}
|
||||
public double getOutstandingFees() {
|
||||
return outstandingFees;
|
||||
}
|
||||
|
||||
public void addFee(double fee) {
|
||||
this.outstandingFees += fee;
|
||||
}
|
||||
|
||||
public void payFees(double amount) {
|
||||
if (amount > outstandingFees) {
|
||||
System.out.println("Der Betrag übersteigt die ausstehenden Gebühren.");
|
||||
return;
|
||||
}
|
||||
outstandingFees -= amount;
|
||||
System.out.println("Zahlung von " + amount + "€ erfolgreich. Verbleibende Gebühren: " + outstandingFees + "€.");
|
||||
}
|
||||
|
||||
public List<Medium> getBorrowedMedia() {
|
||||
return borrowedMedia;
|
||||
}
|
||||
|
||||
public void borrowMedium(Medium medium) {
|
||||
borrowedMedia.add(medium);
|
||||
}
|
||||
|
||||
public void returnMedium(Medium medium) {
|
||||
borrowedMedia.remove(medium);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Benutzer{" +
|
||||
"ID='" + id + '\'' +
|
||||
", Name='" + name + '\'' +
|
||||
", Ausstehende Gebühren=" + outstandingFees +
|
||||
'}';
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue