X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2Forg%2Fmxchange%2Fjcontactsbusiness%2FCompanyContact.java;h=99012d4b45373e5b9f4e165e5c3380b53c1d34c1;hb=9b87a7c465cbe4f26f6806b463c747a72408e6d8;hp=7685c6c9fd669d4be4938fe9034874e5e6751165;hpb=d444657a17a8213a41e060708fe221612eaf8406;p=jcontacts-business-core.git diff --git a/src/org/mxchange/jcontactsbusiness/CompanyContact.java b/src/org/mxchange/jcontactsbusiness/CompanyContact.java index 7685c6c..99012d4 100644 --- a/src/org/mxchange/jcontactsbusiness/CompanyContact.java +++ b/src/org/mxchange/jcontactsbusiness/CompanyContact.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2015 Roland Haeder + * Copyright (C) 2016 Roland Haeder * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -16,7 +16,10 @@ */ package org.mxchange.jcontactsbusiness; +import java.util.Calendar; import java.util.List; +import java.util.Objects; +import javax.persistence.Basic; import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; @@ -24,31 +27,36 @@ import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.JoinColumn; -import javax.persistence.OneToMany; import javax.persistence.OneToOne; import javax.persistence.Table; +import javax.persistence.Temporal; +import javax.persistence.TemporalType; +import javax.persistence.Transient; import org.mxchange.jcontactsbusiness.basicdata.BusinessBasicData; import org.mxchange.jcontactsbusiness.basicdata.CompanyBasicData; import org.mxchange.jcontactsbusiness.branch.BranchOffice; -import org.mxchange.jcontactsbusiness.branch.CompanyBranchOffice; import org.mxchange.jcontactsbusiness.employee.CompanyEmployee; import org.mxchange.jcontactsbusiness.employee.Employee; import org.mxchange.jcontactsbusiness.headquarters.CompanyHeadQuartersData; import org.mxchange.jcontactsbusiness.headquarters.HeadQuartersData; +import org.mxchange.jusercore.model.user.LoginUser; +import org.mxchange.jusercore.model.user.User; /** * A POJO for business contacts *

- * @author Roland Haeder + * @author Roland Haeder */ @Entity (name = "company_contacts") @Table (name = "company_contacts") -public class CompanyContact implements BusinessContact, Comparable { +@SuppressWarnings ("PersistenceUnitPresent") +public class CompanyContact implements BusinessContact { /** * Serial number */ - private static final long serialVersionUID = 478_378_178_748_691L; + @Transient + private static final long serialVersionUID = 470_375_172_748_691L; /** * Reference to basic data @@ -58,11 +66,10 @@ public class CompanyContact implements BusinessContact, Comparable branches; + @Transient + private List brancheOffices; /** * Reference to contact person @@ -75,7 +82,7 @@ public class CompanyContact implements BusinessContact, Comparable employees; + @Basic (optional = false) + @Temporal (TemporalType.TIMESTAMP) + @Column (name = "company_entry_created", nullable = false, updatable = false) + private Calendar contactCreated; + + /** + * User owner instance + */ + @JoinColumn (name = "company_user_id", nullable = false, updatable = false) + @OneToOne (targetEntity = LoginUser.class, cascade = CascadeType.REFRESH, optional = false) + private User contactUserOwner; /** * Reference to headquarters data @@ -101,8 +116,16 @@ public class CompanyContact implements BusinessContact, Comparable getBranches () { - return this.branches; + @SuppressWarnings ("ReturnOfCollectionOrArrayField") + public List getBrancheOffices () { + return this.brancheOffices; } @Override - public void setBranches (final List branches) { - this.branches = branches; + @SuppressWarnings ("AssignmentToCollectionOrArrayFieldFromParameter") + public void setBrancheOffices (final List brancheOffices) { + this.brancheOffices = brancheOffices; } @Override @@ -156,13 +181,25 @@ public class CompanyContact implements BusinessContact, Comparable getEmployees () { - return this.employees; + @SuppressWarnings ("ReturnOfDateField") + public Calendar getContactCreated () { + return this.contactCreated; + } + + @Override + @SuppressWarnings ("AssignmentToDateFieldFromParameter") + public void setContactCreated (final Calendar contactCreated) { + this.contactCreated = contactCreated; + } + + @Override + public User getContactUserOwner () { + return this.contactUserOwner; } @Override - public void setEmployees (final List employees) { - this.employees = employees; + public void setContactUserOwner (final User contactUserOwner) { + this.contactUserOwner = contactUserOwner; } @Override @@ -174,4 +211,11 @@ public class CompanyContact implements BusinessContact, Comparable