Donazione.java
package model.beans;
import model.beans.proxyInterfaces.DonazioneInterface;
import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;
public final class Donazione implements DonazioneInterface {
/**
* rappresenta l'ID della donazione.
*/
private int idDonazione;
/**
* rappresenta la stringa che il PaymentProcessor rilascia
* all'atto di un pagamento.
*/
private String ricevuta;
/**
* rappresenta il commento scritto durante la fase di donazione.
*/
private String commento;
/**
* rappresenta l'importo della donazione.
*/
private double sommaDonata;
/**
* rappresenta il consenso dell'utente a rendere visibile il
* proprio nome e cognome.
*/
private boolean anonimo;
/**
* rappresenta l'utente che ha effettuato la donazione.
*/
private Utente utente;
/**
* rappresenta la campagna su cui l'utente ha donato.
*/
private Campagna campagna;
/**
* rappresenta la data e l'ora in cui viene effettuata la donazione.
*/
private LocalDateTime dataOra;
/**
* @return l'identificativo della donazione
*/
public int getIdDonazione() {
return idDonazione;
}
/**
* @param newIdDonazione rappresenta l'ID della donazione
*/
public void setIdDonazione(final int newIdDonazione) {
this.idDonazione = newIdDonazione;
}
/**
* @return la stringa per la tracciabilità del pagamento
* per il PaymentProcessor
*/
public String getRicevuta() {
return ricevuta;
}
/**
* @param newRicevuta prende la stringa rilasciata dal PaymentProcessor
*/
public void setRicevuta(final String newRicevuta) {
this.ricevuta = newRicevuta;
}
/**
* @return la striga rappresentante il commento
*/
public String getCommento() {
return commento;
}
/**
* @param newCommento prende il commento da inserire nella donazione
*/
public void setCommento(final String newCommento) {
this.commento = newCommento;
}
/**
* @return la somma donata
*/
public double getSommaDonata() {
return sommaDonata;
}
/**
* @param newSommaDonata prende la somma donata
*/
public void setSommaDonata(final double newSommaDonata) {
this.sommaDonata = newSommaDonata;
}
/**
* @return lo stato del flag anonimo: true --> anonimo, false --> pubblico
*/
public boolean isAnonimo() {
return anonimo;
}
/**
* @param newAnonimo prende la preferenza dell'utente circa l'anonimato
*/
public void setAnonimo(final boolean newAnonimo) {
this.anonimo = newAnonimo;
}
/**
* @return l'utente che ha effettuato la donazione
*/
public Utente getUtente() {
return utente;
}
/**
* @param newUtente prende l'utente che ha effettuato la donazione
*/
public void setUtente(final Utente newUtente) {
this.utente = newUtente;
}
/**
* @return la campagna su cui è stata effettuata la donazione
*/
public Campagna getCampagna() {
return campagna;
}
/**
* @param newCampagna prende la campagna su cui è stata
* effettuata la donazione
*/
public void setCampagna(final Campagna newCampagna) {
this.campagna = newCampagna;
}
/**
* @return la data e l'ora in cui è stata effettuata la donazione
*/
public LocalDateTime getDataOra() {
return dataOra;
}
/**
* @param newDataOra prende la data e l'ora in cui è stato
* effettuata la donazione
*/
public void setDataOra(final LocalDateTime newDataOra) {
this.dataOra = newDataOra.truncatedTo(ChronoUnit.MINUTES);
}
@Override
public String toString() {
return "Donazione{"
+ "idDonazione=" + idDonazione
+ ", ricevuta='" + ricevuta + '\''
+ ", commento='" + commento + '\''
+ ", sommaDonata=" + sommaDonata
+ ", anonimo=" + anonimo
+ ", utente=" + utente.getIdUtente()
+ ", campagna=" + campagna.getIdCampagna()
+ ", dataOra=" + dataOra
+ '}';
}
}