Methode payfees hinzugefügt und korrigiert
parent
43324565e5
commit
6bfc94ad33
|
|
@ -4,61 +4,69 @@ import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public abstract class User {
|
public abstract class User {
|
||||||
private String id;
|
private String id;
|
||||||
private String name;
|
private String name;
|
||||||
private double outstandingFees; // Ausstehende Gebühren
|
private double annualFee; // Jahresgebühr
|
||||||
private List<Medium> borrowedMedia;
|
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) {
|
public User(String id, String name, double annualFee, String role) {
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.name = name;
|
this.name = name;
|
||||||
this.outstandingFees = 0.0;
|
this.annualFee = annualFee;
|
||||||
this.borrowedMedia = new ArrayList<>();
|
this.outstandingFees = 0.0;
|
||||||
}
|
this.borrowedMedia = new ArrayList<>();
|
||||||
|
this.role = role; // Setzt die Rolle des Benutzers
|
||||||
|
}
|
||||||
|
|
||||||
public String getId() {
|
public String getId() {
|
||||||
return id;
|
return id;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getName() {
|
public String getName() {
|
||||||
return name;
|
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;
|
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