package com.microstar.tap3.db;
// Generated Jun 12, 2017 8:29:18 AM by Hibernate Tools 4.3.1.Final

import org.hibernate.annotations.GenericGenerator;
import javax.persistence.GeneratedValue;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;

/**
 * Contact generated by hbm2java
 */
@Entity
@Table(name = "Contact", uniqueConstraints = { @UniqueConstraint(columnNames = "SFDCId"),
		@UniqueConstraint(columnNames = "UserId") })
public class Contact implements java.io.Serializable
{

	private String	id;
	private String	contactTypeId;
	private String	customerId;
	private String	prefix;
	private String	firstName;
	private String	lastName;
	private String	suffix;
	private String	jobTitle;
	private String	deskPhone;
	private String	deskPhoneExt;
	private String	cellPhone;
	private String	emailAddress;
	private boolean	receiveOrderUpdates;
	private boolean	receiveInvoice;
	private boolean	receiveBill;
	private boolean	receiveNewsletter;
	private String	sfdcid;
	private String	notes;
	private boolean	receiveEmptyKegCountRequests;
	private boolean	receiveAckRequests;
	private int		receiveAckRequestDelayHrs;
	private boolean	deleted;
	private boolean	defaultForType;
	private String	userId;
	private String 	addressId;

	public Contact()
	{
	}

	public Contact(String id, String contactTypeId, String lastName, boolean receiveOrderUpdates,
			boolean receiveInvoice, boolean receiveBill, boolean receiveNewsletter,
			boolean receiveEmptyKegCountRequests, boolean receiveAckRequests, int receiveAckRequestDelayHrs,
			boolean deleted, boolean defaultForType)
	{
		this.id = id;
		this.contactTypeId = contactTypeId;
		this.lastName = lastName;
		this.receiveOrderUpdates = receiveOrderUpdates;
		this.receiveInvoice = receiveInvoice;
		this.receiveBill = receiveBill;
		this.receiveNewsletter = receiveNewsletter;
		this.receiveEmptyKegCountRequests = receiveEmptyKegCountRequests;
		this.receiveAckRequests = receiveAckRequests;
		this.receiveAckRequestDelayHrs = receiveAckRequestDelayHrs;
		this.deleted = deleted;
		this.defaultForType = defaultForType;
	}

	public Contact(String id, String contactTypeId, String customerId, String prefix, String firstName, String lastName,
			String suffix, String jobTitle, String deskPhone, String deskPhoneExt, String cellPhone,
			String emailAddress, boolean receiveOrderUpdates, boolean receiveInvoice, boolean receiveBill,
			boolean receiveNewsletter, String sfdcid, String notes, boolean receiveEmptyKegCountRequests,
			boolean receiveAckRequests, int receiveAckRequestDelayHrs, boolean deleted, boolean defaultForType,
			String userId)
	{
		this.id = id;
		this.contactTypeId = contactTypeId;
		this.customerId = customerId;
		this.prefix = prefix;
		this.firstName = firstName;
		this.lastName = lastName;
		this.suffix = suffix;
		this.jobTitle = jobTitle;
		this.deskPhone = deskPhone;
		this.deskPhoneExt = deskPhoneExt;
		this.cellPhone = cellPhone;
		this.emailAddress = emailAddress;
		this.receiveOrderUpdates = receiveOrderUpdates;
		this.receiveInvoice = receiveInvoice;
		this.receiveBill = receiveBill;
		this.receiveNewsletter = receiveNewsletter;
		this.sfdcid = sfdcid;
		this.notes = notes;
		this.receiveEmptyKegCountRequests = receiveEmptyKegCountRequests;
		this.receiveAckRequests = receiveAckRequests;
		this.receiveAckRequestDelayHrs = receiveAckRequestDelayHrs;
		this.deleted = deleted;
		this.defaultForType = defaultForType;
		this.userId = userId;
	}

	@Id @GeneratedValue(generator = "uuid") @GenericGenerator(name = "uuid", strategy = "uuid2")

	@Column(name = "id", unique = true, nullable = false, length = 36)
	public String getId()
	{
		return this.id;
	}

	public void setId(String id)
	{
		this.id = id;
	}

	@Column(name = "ContactTypeId", nullable = false, length = 36)
	public String getContactTypeId()
	{
		return this.contactTypeId;
	}

	public void setContactTypeId(String contactTypeId)
	{
		this.contactTypeId = contactTypeId;
	}

	@Column(name = "CustomerId", length = 36)
	public String getCustomerId()
	{
		return this.customerId;
	}

	public void setCustomerId(String customerId)
	{
		this.customerId = customerId;
	}

	@Column(name = "Prefix", length = 5)
	public String getPrefix()
	{
		return this.prefix;
	}

	public void setPrefix(String prefix)
	{
		this.prefix = prefix;
	}

	@Column(name = "FirstName", length = 30)
	public String getFirstName()
	{
		return this.firstName;
	}

	public void setFirstName(String firstName)
	{
		this.firstName = firstName;
	}

	@Column(name = "LastName", nullable = false, length = 50)
	public String getLastName()
	{
		return this.lastName;
	}

	public void setLastName(String lastName)
	{
		this.lastName = lastName;
	}

	@Column(name = "Suffix", length = 4)
	public String getSuffix()
	{
		return this.suffix;
	}

	public void setSuffix(String suffix)
	{
		this.suffix = suffix;
	}

	@Column(name = "JobTitle", length = 20)
	public String getJobTitle()
	{
		return this.jobTitle;
	}

	public void setJobTitle(String jobTitle)
	{
		this.jobTitle = jobTitle;
	}

	@Column(name = "DeskPhone", length = 15)
	public String getDeskPhone()
	{
		return this.deskPhone;
	}

	public void setDeskPhone(String deskPhone)
	{
		this.deskPhone = deskPhone;
	}

	@Column(name = "DeskPhoneExt", length = 10)
	public String getDeskPhoneExt()
	{
		return this.deskPhoneExt;
	}

	public void setDeskPhoneExt(String deskPhoneExt)
	{
		this.deskPhoneExt = deskPhoneExt;
	}

	@Column(name = "CellPhone", length = 15)
	public String getCellPhone()
	{
		return this.cellPhone;
	}

	public void setCellPhone(String cellPhone)
	{
		this.cellPhone = cellPhone;
	}

	@Column(name = "EmailAddress", length = 100)
	public String getEmailAddress()
	{
		return this.emailAddress;
	}

	public void setEmailAddress(String emailAddress)
	{
		this.emailAddress = emailAddress;
	}

	@Column(name = "ReceiveOrderUpdates", nullable = false)
	public boolean isReceiveOrderUpdates()
	{
		return this.receiveOrderUpdates;
	}

	public void setReceiveOrderUpdates(boolean receiveOrderUpdates)
	{
		this.receiveOrderUpdates = receiveOrderUpdates;
	}

	@Column(name = "ReceiveInvoice", nullable = false)
	public boolean isReceiveInvoice()
	{
		return this.receiveInvoice;
	}

	public void setReceiveInvoice(boolean receiveInvoice)
	{
		this.receiveInvoice = receiveInvoice;
	}

	@Column(name = "ReceiveBill", nullable = false)
	public boolean isReceiveBill()
	{
		return this.receiveBill;
	}

	public void setReceiveBill(boolean receiveBill)
	{
		this.receiveBill = receiveBill;
	}

	@Column(name = "ReceiveNewsletter", nullable = false)
	public boolean isReceiveNewsletter()
	{
		return this.receiveNewsletter;
	}

	public void setReceiveNewsletter(boolean receiveNewsletter)
	{
		this.receiveNewsletter = receiveNewsletter;
	}

	@Column(name = "SFDCId", unique = true, length = 20)
	public String getSfdcid()
	{
		return this.sfdcid;
	}

	public void setSfdcid(String sfdcid)
	{
		this.sfdcid = sfdcid;
	}

	@Column(name = "Notes", length = 16777215)
	public String getNotes()
	{
		return this.notes;
	}

	public void setNotes(String notes)
	{
		this.notes = notes;
	}

	@Column(name = "ReceiveEmptyKegCountRequests", nullable = false)
	public boolean isReceiveEmptyKegCountRequests()
	{
		return this.receiveEmptyKegCountRequests;
	}

	public void setReceiveEmptyKegCountRequests(boolean receiveEmptyKegCountRequests)
	{
		this.receiveEmptyKegCountRequests = receiveEmptyKegCountRequests;
	}

	@Column(name = "ReceiveAckRequests", nullable = false)
	public boolean isReceiveAckRequests()
	{
		return this.receiveAckRequests;
	}

	public void setReceiveAckRequests(boolean receiveAckRequests)
	{
		this.receiveAckRequests = receiveAckRequests;
	}

	@Column(name = "ReceiveAckRequestDelayHrs", nullable = false)
	public int getReceiveAckRequestDelayHrs()
	{
		return this.receiveAckRequestDelayHrs;
	}

	public void setReceiveAckRequestDelayHrs(int receiveAckRequestDelayHrs)
	{
		this.receiveAckRequestDelayHrs = receiveAckRequestDelayHrs;
	}

	@Column(name = "Deleted", nullable = false)
	public boolean isDeleted()
	{
		return this.deleted;
	}

	public void setDeleted(boolean deleted)
	{
		this.deleted = deleted;
	}

	@Column(name = "DefaultForType", nullable = false)
	public boolean isDefaultForType()
	{
		return this.defaultForType;
	}

	public void setDefaultForType(boolean defaultForType)
	{
		this.defaultForType = defaultForType;
	}

	@Column(name = "UserId", unique = true, length = 36)
	public String getUserId()
	{
		return this.userId;
	}

	public void setUserId(String userId)
	{
		this.userId = userId;
	}

	public String getAddressId() {
		return addressId;
	}

	public void setAddressId(String addressId) {
		this.addressId = addressId;
	}

}
