/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package com.sybit.education.taschengeldboerse.domain; import java.io.Serializable; import java.util.Objects; import javax.persistence.Basic; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.validation.constraints.AssertTrue; import javax.validation.constraints.Pattern; import javax.validation.constraints.Size; import org.hibernate.validator.constraints.NotEmpty; /** * * @author sat */ @Entity(name = "anbieter") public class Anbieter implements Serializable { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Basic(optional = false) @Column(name = "id") private Integer id; @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="Bitte eine gültige E-Mail angeben.") @Size(min = 5, message = "Bitte E-Mail angeben") @Column(unique = true) private String email; @Column(name = "Anrede") private String anrede; @Column(name = "Vorname") @NotEmpty(message="Bitte Vornamen angeben") private String vorname; @Column(name = "Name") @NotEmpty(message="Bitte Namen angeben") private String name; @Column(name = "Geburtsdatum") @NotEmpty(message="Bitte Geburtsdatum angeben") private String geburtsdatum; @Column(name = "Strasse") private String strasse; @Column(name = "PLZ") @NotEmpty(message="Bitte PLZ angeben") private String plz; @Column(name = "Wohnort") @NotEmpty(message="Bitte Wohnort angeben") private String wohnort; @Column(name = "Telefonnummer") private String telefonnummer; @Column(name = "Merkblatt") @AssertTrue(message="Das Merkblatt muss vor der Anmeldung zur Kenntnis genommen werden!") private boolean merkblatt; @Column(name = "Datenschutz") @AssertTrue(message="Die Datenschutzbedingungen müssen akzeptiert werden!") private boolean datenschutz; public Anbieter() { } public Anbieter(User user) { this.email = user.getEmail(); } public Integer getId() { return id; } public void setId(Integer ID) { this.id = ID; } public String getAnrede() { return anrede; } public void setAnrede(String Anrede) { this.anrede = Anrede; } public String getVorname() { return vorname; } public void setVorname(String Vorname) { this.vorname = Vorname; } public String getName() { return name; } public void setName(String Name) { this.name = Name; } public String getGeburtsdatum() { return geburtsdatum; } public void setGeburtsdatum(String geburtsdatum) { this.geburtsdatum = geburtsdatum; } public String getStrasse() { return strasse; } public void setStrasse(String Straße) { this.strasse = Straße; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getPlz() { return plz; } public void setPlz(String plz) { this.plz = plz; } public String getWohnort() { return wohnort; } public void setWohnort(String Wohnort) { this.wohnort = Wohnort; } public String getTelefonnummer() { return telefonnummer; } public void setTelefonnummer(String Telefonnummer) { this.telefonnummer = Telefonnummer; } public boolean isMerkblatt() { return merkblatt; } public void setMerkblatt(boolean Merkblatt) { this.merkblatt = Merkblatt; } public boolean isDatenschutz() { return datenschutz; } public void setDatenschutz(boolean Datenschutz) { this.datenschutz = Datenschutz; } @Override public int hashCode() { int hash = 7; hash = 43 * hash + Objects.hashCode(this.id); hash = 43 * hash + Objects.hashCode(this.anrede); hash = 43 * hash + Objects.hashCode(this.vorname); hash = 43 * hash + Objects.hashCode(this.name); hash = 43 * hash + Objects.hashCode(this.geburtsdatum); hash = 43 * hash + Objects.hashCode(this.strasse); hash = 43 * hash + Objects.hashCode(this.plz); hash = 43 * hash + Objects.hashCode(this.wohnort); hash = 43 * hash + Objects.hashCode(this.telefonnummer); hash = 43 * hash + Objects.hashCode(this.email); hash = 43 * hash + (this.merkblatt ? 1 : 0); hash = 43 * hash + (this.datenschutz ? 1 : 0); return hash; } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } final Anbieter other = (Anbieter) obj; if (this.merkblatt != other.merkblatt) { return false; } if (this.datenschutz != other.datenschutz) { return false; } if (!Objects.equals(this.anrede, other.anrede)) { return false; } if (!Objects.equals(this.vorname, other.vorname)) { return false; } if (!Objects.equals(this.name, other.name)) { return false; } if (!Objects.equals(this.strasse, other.strasse)) { return false; } if (!Objects.equals(this.plz, other.plz)) { return false; } if (!Objects.equals(this.wohnort, other.wohnort)) { return false; } if (!Objects.equals(this.telefonnummer, other.telefonnummer)) { return false; } if (!Objects.equals(this.email, other.email)) { return false; } if (!Objects.equals(this.id, other.id)) { return false; } if (!Objects.equals(this.geburtsdatum, other.geburtsdatum)) { return false; } return true; } @Override public String toString() { return "anbieter{" + "ID=" + id + ", Anrede=" + anrede + ", Vorname=" + vorname + ", Name=" + name + ", Geburtsdatum=" + geburtsdatum + ", Stra\u00dfe=" + strasse + ", PLZ=" + plz + ", Wohnort=" + wohnort + ", Telefonnummer=" + telefonnummer + ", Email=" + email + ", Merkblatt=" + merkblatt + ", Datenschutz=" + datenschutz + '}'; } }