package org.lightadmin.test.model;
import org.hibernate.validator.constraints.NotEmpty;
import org.lightadmin.demo.model.AbstractEntity;
import org.lightadmin.demo.model.EmailAddress;
import javax.persistence.*;
import java.util.Set;
@Entity
public class TestCustomer extends AbstractEntity {
@Column(length = 64)
@NotEmpty
private String firstname;
@Column(length = 64)
@NotEmpty
private String lastname;
@Column(unique = true)
@Embedded
private EmailAddress emailAddress;
@ManyToMany
@JoinTable(name = "testcustomer_discount",
joinColumns =
@JoinColumn(name = "customer_id", referencedColumnName = "ID"),
inverseJoinColumns =
@JoinColumn(name = "discount_program_id", referencedColumnName = "ID")
)
private Set<TestDiscountProgram> discountPrograms;
public TestCustomer() {
}
public String getFirstname() {
return firstname;
}
public String getLastname() {
return lastname;
}
public void setLastname(String lastname) {
this.lastname = lastname;
}
public EmailAddress getEmailAddress() {
return emailAddress;
}
public void setEmailAddress(EmailAddress emailAddress) {
this.emailAddress = emailAddress;
}
public Set<TestDiscountProgram> getDiscountPrograms() {
return discountPrograms;
}
public void setDiscountPrograms(Set<TestDiscountProgram> discountPrograms) {
this.discountPrograms = discountPrograms;
}
}