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