![JAR search and dependency download from the Maven repository](/logo.png)
com.evasion.entity.Don Maven / Gradle / Ivy
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.evasion.entity;
import java.io.Serializable;
import java.util.Calendar;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.PrePersist;
import javax.persistence.Table;
import javax.persistence.Temporal;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
/**
*
* @author sebastien.glon
*/
@Entity
@Table(name = "dons")
public class Don implements Serializable {
/***
* serialVersionUID.
*/
private static final long serialVersionUID = 1L;
/**
* Identifiant unique du don.
*/
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
/**
* Personne donatrice.
*/
@ManyToOne
@JoinColumn(name = "person_fk", nullable = false)
private Person donateur;
/**
* Montaont du don.
*/
@Column(nullable = false)
private Long montant;
/**
* Commentaire d'accompagnement du don en provenance du donateur.
*/
private String commentaireDonateur;
/**
* Commentaire du beneficiaire pour le suivi du traitement.
*/
private String commentaireBeneficiaire;
/**
* Date d'enregistrement de la promesse.
*/
@Temporal(javax.persistence.TemporalType.DATE)
private Calendar datePromesse;
/**
* Date de confirmation.
*/
@Temporal(javax.persistence.TemporalType.DATE)
private Calendar dateConfirm;
/**
* Etat de validation.
*/
private boolean valide;
/**
* Constructeur par defaut pour la persistence.
*/
protected Don() {
}
/**
* Constructeur avec les champs obligatoire.
* @param person donateur.
* @param montant montant du don.
* @param commentaireDonateur commentaire d'accompagnement du donateur (optionel).
*/
public Don(Person person, Long montant, String commentaireDonateur) {
this.donateur = person;
this.montant = montant;
this.commentaireDonateur = commentaireDonateur;
}
/**
* Constructeur avec les champs obligatoire.
* @param person donateur.
* @param montant montant du don.
*/
public Don(Person person, Long montant) {
this.donateur = person;
this.montant = montant;
}
@SuppressWarnings("PMD.UnusedPrivateMethod") @edu.umd.cs.findbugs.annotations.SuppressWarnings("UPM_UNCALLED_PRIVATE_METHOD")
@PrePersist
private void initDatePromess() {
datePromesse = Calendar.getInstance();
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getCommentaireClient() {
return commentaireDonateur;
}
public void setCommentaireClient(String commentaireClient) {
this.commentaireDonateur = commentaireClient;
}
public String getCommentaireReceveur() {
return commentaireBeneficiaire;
}
public void setCommentaireReceveur(String commentaireReceveur) {
this.commentaireBeneficiaire = commentaireReceveur;
}
public Date getDateConfirm() {
return dateConfirm.getTime();
}
public void setDateConfirm(Date dateConfirm) {
this.dateConfirm.setTime(dateConfirm);
}
public Date getDatePromesse() {
return datePromesse.getTime();
}
public void setDatePromesse(Date datePromesse) {
this.datePromesse.setTime(datePromesse);
}
public Long getMontant() {
return montant;
}
public void setMontant(Long montant) {
this.montant = montant;
}
public Person getPerson() {
return donateur;
}
public void setPerson(Person person) {
this.donateur = person;
}
public boolean isValide() {
return valide;
}
public void setValide(boolean valide) {
this.valide = valide;
}
/**
* {@inheritDoc }
*/
@Override
public boolean equals(final Object obj) {
if (obj == null) {
return false;
}
if (this == obj) {
return true;
}
if (!( obj instanceof Don )) {
return false;
}
Don rhs = (Don) obj;
return new EqualsBuilder().append(this.donateur, rhs.donateur).
append(this.datePromesse, rhs.datePromesse).
isEquals();
}
/**
* @{@inheritDoc }
*/
@Override
public int hashCode() {
return new HashCodeBuilder(17, 37).append(this.donateur).append(this.datePromesse).toHashCode();
}
/**
* @{@inheritDoc }
*/
@Override
public String toString() {
return this.getClass().getName() + "[id=" + id
+ " person=" + donateur
+ " montant=" + montant
+ " commentaireClient=" + commentaireDonateur
+ " commentaireReceveur=" + commentaireBeneficiaire
+ " datePromesse=" + datePromesse
+ " dateConfirm=" + dateConfirm
+ "]";
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy