package etunicorn.entity; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; import javax.persistence.*; import java.util.Date; import java.util.List; /** * etunicorn-server * Copyright © 2017 Le Club Info Polytech Lille * Tous droits réservés */ @Entity public class Personne { @Id @GeneratedValue(strategy = GenerationType.AUTO) private int id; @Column(unique = true) private String carte; private Date naissance; @Column(unique = true) private String login; @ManyToOne private Role role; @OneToMany(mappedBy = "participant") private List operations; @OneToMany(mappedBy = "acteur") private List realisees; @ManyToMany() private List participations; public Personne() { } public Personne(String carte, Date naissance, String login, Role role) { this.carte = carte; this.naissance = naissance; this.login = login; this.role = role; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getCarte() { return carte; } public void setCarte(String carte) { this.carte = carte; } @JsonFormat(pattern="YYYY-MM-DD hh:mm:ss") public Date getNaissance() { return naissance; } public void setNaissance(Date naissance) { this.naissance = naissance; } public String getLogin() { return login; } public void setLogin(String login) { this.login = login; } public Role getRole() { return role; } public void setRole(Role role) { this.role = role; } public boolean hasPermission(Permission permission) { return role.hasPermission(permission); } @JsonIgnore public List getOperations() { return operations; } public void setOperations(List operations) { this.operations = operations; } @JsonIgnore public List getRealisees() { return realisees; } public void setRealisees(List realisees) { this.realisees = realisees; } @JsonIgnore public List getParticipations() { return participations; } public void setParticipations(List participations) { this.participations = participations; } }