/* * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template */ package com.triz.trizservice.modeles; import java.io.Serializable; import java.util.Date; import java.util.List; import java.util.UUID; import javax.persistence.Basic; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.Lob; import javax.persistence.ManyToOne; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.OneToMany; import javax.persistence.Table; import javax.persistence.Temporal; import javax.persistence.TemporalType; import javax.validation.constraints.NotNull; import javax.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; /** * * @author FORCE TECH */ @Entity @Table(name = "patient") @XmlRootElement @NamedQueries({ @NamedQuery(name = "Patient.findAll", query = "SELECT p FROM Patient p"), @NamedQuery(name = "Patient.findByNom", query = "SELECT p FROM Patient p WHERE p.nom = :nom"), @NamedQuery(name = "Patient.findByPrenom", query = "SELECT p FROM Patient p WHERE p.prenom = :prenom"), @NamedQuery(name = "Patient.findByDateNaissance", query = "SELECT p FROM Patient p WHERE p.dateNaissance = :dateNaissance"), @NamedQuery(name = "Patient.findByTelephone", query = "SELECT p FROM Patient p WHERE p.telephone = :telephone"), @NamedQuery(name = "Patient.findByTelephoneRelative", query = "SELECT p FROM Patient p WHERE p.telephoneRelative = :telephoneRelative"), @NamedQuery(name = "Patient.findByEmail", query = "SELECT p FROM Patient p WHERE p.email = :email"), @NamedQuery(name = "Patient.findBySexe", query = "SELECT p FROM Patient p WHERE p.sexe = :sexe"), @NamedQuery(name = "Patient.findByNin", query = "SELECT p FROM Patient p WHERE p.nin = :nin"), @NamedQuery(name = "Patient.findByAdresse", query = "SELECT p FROM Patient p WHERE p.adresse = :adresse"), @NamedQuery(name = "Patient.findByGroupage", query = "SELECT p FROM Patient p WHERE p.groupage = :groupage"), @NamedQuery(name = "Patient.findByCreeLe", query = "SELECT p FROM Patient p WHERE p.creeLe = :creeLe")}) public class Patient implements Serializable { @Size(max = 2147483647) @Column(name = "nom") private String nom; @Size(max = 2147483647) @Column(name = "prenom") private String prenom; @Size(max = 2147483647) @Column(name = "telephone") private String telephone; @Size(max = 2147483647) @Column(name = "telephone_relative") private String telephoneRelative; // @Pattern(regexp="[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?", message="Invalid email")//if the field contains email address consider using this annotation to enforce field validation @Size(max = 2147483647) @Column(name = "email") private String email; @Size(max = 2147483647) @Column(name = "sexe") private String sexe; @Size(max = 2147483647) @Column(name = "nin") private String nin; // @Pattern(regexp="[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?", message="Invalid email")//if the field contains email address consider using this annotation to enforce field validation @Size(max = 2147483647) @Column(name = "adresse") private String adresse; @Size(max = 2147483647) @Column(name = "groupage") private String groupage; @OneToMany(mappedBy = "fkPatient") private List consultationList; private static final long serialVersionUID = 1L; @Id @Basic(optional = false) @NotNull @GeneratedValue @Column(name = "id") private UUID id; @Column(name = "date_naissance") @Temporal(TemporalType.DATE) private Date dateNaissance; @Column(name = "cree_le") @Temporal(TemporalType.DATE) private Date creeLe; @OneToMany(mappedBy = "fkPatient") private List rdvList; @OneToMany(mappedBy = "fkDossierMedical") private List fichierDossierList; @JoinColumn(name = "fk_centre", referencedColumnName = "id") @ManyToOne private Centre fkCentre; @OneToMany(mappedBy = "fkPatient") private List typeExamenList; @OneToMany(mappedBy = "fkPatient") private List alertesMedicalesList; @OneToMany(mappedBy = "fkPatient") private List queueList; @Column(name = "code_patient", unique = true, length = 10) private String codePatient; public Patient() { } public Patient(UUID id) { this.id = id; } public UUID getId() { return id; } public void setId(UUID id) { this.id = id; } public Date getDateNaissance() { return dateNaissance; } public void setDateNaissance(Date dateNaissance) { this.dateNaissance = dateNaissance; } public String getTelephoneRelative() { return telephoneRelative; } public void setTelephoneRelative(String telephoneRelative) { this.telephoneRelative = telephoneRelative; } public Date getCreeLe() { return creeLe; } public void setCreeLe(Date creeLe) { this.creeLe = creeLe; } @XmlTransient public List getRdvList() { return rdvList; } public void setRdvList(List rdvList) { this.rdvList = rdvList; } @XmlTransient public List getFichierDossierList() { return fichierDossierList; } public void setFichierDossierList(List fichierDossierList) { this.fichierDossierList = fichierDossierList; } public Centre getFkCentre() { return fkCentre; } public void setFkCentre(Centre fkCentre) { this.fkCentre = fkCentre; } @XmlTransient public List getTypeExamenList() { return typeExamenList; } public void setTypeExamenList(List typeExamenList) { this.typeExamenList = typeExamenList; } @XmlTransient public List getAlertesMedicalesList() { return alertesMedicalesList; } public void setAlertesMedicalesList(List alertesMedicalesList) { this.alertesMedicalesList = alertesMedicalesList; } @XmlTransient public List getQueueList() { return queueList; } public void setQueueList(List queueList) { this.queueList = queueList; } @Override public int hashCode() { int hash = 0; hash += (id != null ? id.hashCode() : 0); return hash; } @Override public boolean equals(Object object) { // TODO: Warning - this method won't work in the case the id fields are not set if (!(object instanceof Patient)) { return false; } Patient other = (Patient) object; if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) { return false; } return true; } @Override public String toString() { return "com.triz.trizservice.modeles.Patient[ id=" + id + " ]"; } public String getNom() { return nom; } public void setNom(String nom) { this.nom = nom; } public String getPrenom() { return prenom; } public void setPrenom(String prenom) { this.prenom = prenom; } public String getTelephone() { return telephone; } public void setTelephone(String telephone) { this.telephone = telephone; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getSexe() { return sexe; } public void setSexe(String sexe) { this.sexe = sexe; } public String getNin() { return nin; } public void setNin(String nin) { this.nin = nin; } public String getAdresse() { return adresse; } public void setAdresse(String adresse) { this.adresse = adresse; } public String getGroupage() { return groupage; } public void setGroupage(String groupage) { this.groupage = groupage; } @XmlTransient public List getConsultationList() { return consultationList; } public void setConsultationList(List consultationList) { this.consultationList = consultationList; } public String getCodePatient() { return codePatient; } public void setCodePatient(String codePatient) { this.codePatient = codePatient; } }