From a1445b1bdf2fe9dbb788e2178bc5e3d74590f710 Mon Sep 17 00:00:00 2001
From: =?utf8?q?Roland=20H=C3=A4der?= <roland@mxchange.org>
Date: Sat, 19 Aug 2017 20:53:28 +0200
Subject: [PATCH] Please cherry-pick: - added administrative and general
 backing bean for company employees + added   JNDI lookup, still at wrong
 place - Employees have an instance back to business basic data which makes it
   impossible for creation (no fancy AJAX stuff now) of business basic data  
 with founder and/or contact person - separated package of businessdata to
 business/basicdata so above   business/company_employee package is nicely
 possible
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit

Signed-off-by: Roland Häder <roland@mxchange.org>
---
 ...ncialsAdminBusinessDataWebRequestBean.java | 112 ++++++++++++++++--
 ...AdminBusinessDataWebRequestController.java |   2 +-
 .../FinancialsBusinessDataWebSessionBean.java |   8 +-
 ...cialsBusinessDataWebSessionController.java |   2 +-
 ...alsAdminCompanyEmployeeWebRequestBean.java |  74 ++++++++++++
 ...inCompanyEmployeeWebRequestController.java |  28 +++++
 ...nancialsCompanyEmployeeWebRequestBean.java | 101 ++++++++++++++++
 ...lsCompanyEmployeeWebSessionController.java |  28 +++++
 .../admin_form_business_basic_data.tpl        |  44 +------
 9 files changed, 342 insertions(+), 57 deletions(-)
 rename src/java/org/mxchange/jfinancials/beans/{businessdata => business/basicdata}/FinancialsAdminBusinessDataWebRequestBean.java (74%)
 rename src/java/org/mxchange/jfinancials/beans/{businessdata => business/basicdata}/FinancialsAdminBusinessDataWebRequestController.java (94%)
 rename src/java/org/mxchange/jfinancials/beans/{businessdata => business/basicdata}/FinancialsBusinessDataWebSessionBean.java (96%)
 rename src/java/org/mxchange/jfinancials/beans/{businessdata => business/basicdata}/FinancialsBusinessDataWebSessionController.java (95%)
 create mode 100644 src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsAdminCompanyEmployeeWebRequestBean.java
 create mode 100644 src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsAdminCompanyEmployeeWebRequestController.java
 create mode 100644 src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsCompanyEmployeeWebRequestBean.java
 create mode 100644 src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsCompanyEmployeeWebSessionController.java

diff --git a/src/java/org/mxchange/jfinancials/beans/businessdata/FinancialsAdminBusinessDataWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/business/basicdata/FinancialsAdminBusinessDataWebRequestBean.java
similarity index 74%
rename from src/java/org/mxchange/jfinancials/beans/businessdata/FinancialsAdminBusinessDataWebRequestBean.java
rename to src/java/org/mxchange/jfinancials/beans/business/basicdata/FinancialsAdminBusinessDataWebRequestBean.java
index e3887226..52800d78 100644
--- a/src/java/org/mxchange/jfinancials/beans/businessdata/FinancialsAdminBusinessDataWebRequestBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/business/basicdata/FinancialsAdminBusinessDataWebRequestBean.java
@@ -14,7 +14,7 @@
  * You should have received a copy of the GNU Affero General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
-package org.mxchange.jfinancials.beans.businessdata;
+package org.mxchange.jfinancials.beans.business.basicdata;
 
 import javax.annotation.PostConstruct;
 import javax.enterprise.context.SessionScoped;
@@ -23,10 +23,12 @@ import javax.inject.Named;
 import javax.naming.Context;
 import javax.naming.InitialContext;
 import javax.naming.NamingException;
-import org.mxchange.jcontactsbusiness.basicdata.BusinessDataAdminSessionBeanRemote;
+import org.mxchange.jcontactsbusiness.basicdata.AdminBusinessDataSessionBeanRemote;
 import org.mxchange.jcontactsbusiness.employee.Employee;
+import org.mxchange.jcontactsbusiness.headquarters.HeadQuartersData;
 import org.mxchange.jcountry.data.Country;
 import org.mxchange.jfinancials.beans.BaseFinancialsController;
+import org.mxchange.jusercore.model.user.User;
 
 /**
  * An administrative business contact bean (controller)
@@ -45,23 +47,48 @@ public class FinancialsAdminBusinessDataWebRequestBean extends BaseFinancialsCon
 	/**
 	 * Remote contact bean
 	 */
-	private BusinessDataAdminSessionBeanRemote adminBusinessDataBean;
+	private AdminBusinessDataSessionBeanRemote adminBusinessDataBean;
 
 	/**
 	 * Comments for this company
 	 */
 	private String companyComments;
 
+	/**
+	 * An employee as contact person with this company
+	 */
+	private Employee companyContactEmployee;
+
 	/**
 	 * Companies (main) email address (example: info@company.example)
 	 */
 	private String companyEmailAddress;
 
+	/**
+	 * Head quarter data for this company
+	 */
+	private HeadQuartersData companyHeadQuarters;
+
 	/**
 	 * Company name
 	 */
 	private String companyName;
 
+	/**
+	 * Tax number
+	 */
+	private String companyTaxNumber;
+
+	/**
+	 * Web site URL
+	 */
+	private String companyWebsiteUrl;
+
+	/**
+	 * Owning user instance (which this company is assigned to)
+	 */
+	private User contactCompanyUserOwner;
+
 	/**
 	 * Area code for fax number
 	 */
@@ -92,11 +119,6 @@ public class FinancialsAdminBusinessDataWebRequestBean extends BaseFinancialsCon
 	 */
 	private Long landLineNumber;
 
-	/**
-	 * An employee as contact person with this company
-	 */
-	private Employee companyContactEmployee;
-
 	/**
 	 * Constructor
 	 */
@@ -159,6 +181,24 @@ public class FinancialsAdminBusinessDataWebRequestBean extends BaseFinancialsCon
 		this.companyEmailAddress = companyEmailAddress;
 	}
 
+	/**
+	 * Getter for headquarters data
+	 * <p>
+	 * @return Headquarters data
+	 */
+	public HeadQuartersData getCompanyHeadQuarters () {
+		return this.companyHeadQuarters;
+	}
+
+	/**
+	 * Setter for headquarters data
+	 * <p>
+	 * @param companyHeadQuarters Headquarters data
+	 */
+	public void setCompanyHeadQuarters (final HeadQuartersData companyHeadQuarters) {
+		this.companyHeadQuarters = companyHeadQuarters;
+	}
+
 	/**
 	 * Getter for company name
 	 * <p>
@@ -177,6 +217,60 @@ public class FinancialsAdminBusinessDataWebRequestBean extends BaseFinancialsCon
 		this.companyName = companyName;
 	}
 
+	/**
+	 * Getter for company tax number
+	 * <p>
+	 * @return Company tax number
+	 */
+	public String getCompanyTaxNumber () {
+		return this.companyTaxNumber;
+	}
+
+	/**
+	 * Setter for company tax number
+	 * <p>
+	 * @param companyTaxNumber Company tax number
+	 */
+	public void setCompanyTaxNumber (final String companyTaxNumber) {
+		this.companyTaxNumber = companyTaxNumber;
+	}
+
+	/**
+	 * Getter for company web site URL
+	 * <p>
+	 * @return Company web site URL
+	 */
+	public String getCompanyWebsiteUrl () {
+		return this.companyWebsiteUrl;
+	}
+
+	/**
+	 * Getter for company web site URL
+	 * <p>
+	 * @param companyWebsiteUrl Company web site URL
+	 */
+	public void setCompanyWebsiteUrl (final String companyWebsiteUrl) {
+		this.companyWebsiteUrl = companyWebsiteUrl;
+	}
+
+	/**
+	 * Getter for owning user instance
+	 * <p>
+	 * @return Owning user instance
+	 */
+	public User getContactCompanyUserOwner () {
+		return this.contactCompanyUserOwner;
+	}
+
+	/**
+	 * Setter for owning user instance
+	 * <p>
+	 * @param contactCompanyUserOwner Owning user instance
+	 */
+	public void setContactCompanyUserOwner (final User contactCompanyUserOwner) {
+		this.contactCompanyUserOwner = contactCompanyUserOwner;
+	}
+
 	/**
 	 * Getter for fax number's area code
 	 * <p>
@@ -296,7 +390,7 @@ public class FinancialsAdminBusinessDataWebRequestBean extends BaseFinancialsCon
 			Context context = new InitialContext();
 
 			// Try to lookup
-			this.adminBusinessDataBean = (BusinessDataAdminSessionBeanRemote) context.lookup("java:global/jfinancials-ejb/adminBusinessData!org.mxchange.jcontactsbusiness.basicdata.BusinessDataAdminSessionBeanRemote"); //NOI18N
+			this.adminBusinessDataBean = (AdminBusinessDataSessionBeanRemote) context.lookup("java:global/jfinancials-ejb/adminBusinessData!org.mxchange.jcontactsbusiness.basicdata.BusinessDataAdminSessionBeanRemote"); //NOI18N
 		} catch (final NamingException e) {
 			// Throw again
 			throw new FaceletException(e);
diff --git a/src/java/org/mxchange/jfinancials/beans/businessdata/FinancialsAdminBusinessDataWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/business/basicdata/FinancialsAdminBusinessDataWebRequestController.java
similarity index 94%
rename from src/java/org/mxchange/jfinancials/beans/businessdata/FinancialsAdminBusinessDataWebRequestController.java
rename to src/java/org/mxchange/jfinancials/beans/business/basicdata/FinancialsAdminBusinessDataWebRequestController.java
index be4a7705..a718313b 100644
--- a/src/java/org/mxchange/jfinancials/beans/businessdata/FinancialsAdminBusinessDataWebRequestController.java
+++ b/src/java/org/mxchange/jfinancials/beans/business/basicdata/FinancialsAdminBusinessDataWebRequestController.java
@@ -14,7 +14,7 @@
  * You should have received a copy of the GNU Affero General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
-package org.mxchange.jfinancials.beans.businessdata;
+package org.mxchange.jfinancials.beans.business.basicdata;
 
 import java.io.Serializable;
 
diff --git a/src/java/org/mxchange/jfinancials/beans/businessdata/FinancialsBusinessDataWebSessionBean.java b/src/java/org/mxchange/jfinancials/beans/business/basicdata/FinancialsBusinessDataWebSessionBean.java
similarity index 96%
rename from src/java/org/mxchange/jfinancials/beans/businessdata/FinancialsBusinessDataWebSessionBean.java
rename to src/java/org/mxchange/jfinancials/beans/business/basicdata/FinancialsBusinessDataWebSessionBean.java
index 02adbd7d..d26b46c8 100644
--- a/src/java/org/mxchange/jfinancials/beans/businessdata/FinancialsBusinessDataWebSessionBean.java
+++ b/src/java/org/mxchange/jfinancials/beans/business/basicdata/FinancialsBusinessDataWebSessionBean.java
@@ -14,7 +14,7 @@
  * You should have received a copy of the GNU Affero General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
-package org.mxchange.jfinancials.beans.businessdata;
+package org.mxchange.jfinancials.beans.business.basicdata;
 
 import java.util.List;
 import javax.annotation.PostConstruct;
@@ -26,11 +26,11 @@ import javax.naming.Context;
 import javax.naming.InitialContext;
 import javax.naming.NamingException;
 import org.mxchange.jcontactsbusiness.basicdata.BusinessBasicData;
-import org.mxchange.jcontactsbusiness.basicdata.BusinessDataAdminSessionBeanRemote;
 import org.mxchange.jcontactsbusiness.basicdata.BusinessDataSessionBeanRemote;
 import org.mxchange.jcountry.data.Country;
 import org.mxchange.jfinancials.beans.BaseFinancialsController;
 import org.mxchange.jfinancials.beans.user.login.FinancialsUserLoginWebSessionController;
+import org.mxchange.jcontactsbusiness.basicdata.AdminBusinessDataSessionBeanRemote;
 
 /**
  * A business contact bean (controller)
@@ -49,7 +49,7 @@ public class FinancialsBusinessDataWebSessionBean extends BaseFinancialsControll
 	/**
 	 * Remote contact bean
 	 */
-	private BusinessDataAdminSessionBeanRemote adminBusinessDataBean;
+	private AdminBusinessDataSessionBeanRemote adminBusinessDataBean;
 
 	/**
 	 * A list of all registered companies (globally)
@@ -302,7 +302,7 @@ public class FinancialsBusinessDataWebSessionBean extends BaseFinancialsControll
 			this.businessDataBean = (BusinessDataSessionBeanRemote) context.lookup("java:global/jfinancials-ejb/businessData!org.mxchange.jcontactsbusiness.basicdata.BusinessDataSessionBeanRemote"); //NOI18N
 
 			// Try to lookup
-			this.adminBusinessDataBean = (BusinessDataAdminSessionBeanRemote) context.lookup("java:global/jfinancials-ejb/adminBusinessData!org.mxchange.jcontactsbusiness.basicdata.BusinessDataAdminSessionBeanRemote"); //NOI18N
+			this.adminBusinessDataBean = (AdminBusinessDataSessionBeanRemote) context.lookup("java:global/jfinancials-ejb/adminBusinessData!org.mxchange.jcontactsbusiness.basicdata.BusinessDataAdminSessionBeanRemote"); //NOI18N
 		} catch (final NamingException e) {
 			// Throw again
 			throw new FaceletException(e);
diff --git a/src/java/org/mxchange/jfinancials/beans/businessdata/FinancialsBusinessDataWebSessionController.java b/src/java/org/mxchange/jfinancials/beans/business/basicdata/FinancialsBusinessDataWebSessionController.java
similarity index 95%
rename from src/java/org/mxchange/jfinancials/beans/businessdata/FinancialsBusinessDataWebSessionController.java
rename to src/java/org/mxchange/jfinancials/beans/business/basicdata/FinancialsBusinessDataWebSessionController.java
index c2a9775f..d3ed5b3f 100644
--- a/src/java/org/mxchange/jfinancials/beans/businessdata/FinancialsBusinessDataWebSessionController.java
+++ b/src/java/org/mxchange/jfinancials/beans/business/basicdata/FinancialsBusinessDataWebSessionController.java
@@ -14,7 +14,7 @@
  * You should have received a copy of the GNU Affero General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
-package org.mxchange.jfinancials.beans.businessdata;
+package org.mxchange.jfinancials.beans.business.basicdata;
 
 import java.io.Serializable;
 import java.util.List;
diff --git a/src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsAdminCompanyEmployeeWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsAdminCompanyEmployeeWebRequestBean.java
new file mode 100644
index 00000000..ae5a4879
--- /dev/null
+++ b/src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsAdminCompanyEmployeeWebRequestBean.java
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2017 RRoland Häder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jfinancials.beans.business.employee;
+
+import javax.annotation.PostConstruct;
+import javax.enterprise.context.RequestScoped;
+import javax.faces.view.facelets.FaceletException;
+import javax.inject.Named;
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+import org.mxchange.jcontactsbusiness.employee.AdminCompanyEmployeeSessionBeanRemote;
+import org.mxchange.jfinancials.beans.BaseFinancialsController;
+
+/**
+ * A request-scoped bean for administrative purposes for company employees.
+ * <p>
+ * @author Roland Häder<roland@mxchange.org>
+ */
+@Named ("adminCompanyEmployeeController")
+@RequestScoped
+public class FinancialsAdminCompanyEmployeeWebRequestBean extends BaseFinancialsController implements FinancialsAdminCompanyEmployeeWebRequestController {
+
+	/**
+	 * Serial number
+	 */
+	private static final long serialVersionUID = 12_886_968_547_360L;
+
+	/**
+	 * EJB for administrative company employee purposes
+	 */
+	private AdminCompanyEmployeeSessionBeanRemote adminCompanyEmployeeBean;
+
+	/**
+	 * Default constructor
+	 */
+	public FinancialsAdminCompanyEmployeeWebRequestBean () {
+		// Call super constructor
+		super();
+	}
+
+	/**
+	 * Initialization method
+	 */
+	@PostConstruct
+	public void init () {
+		// Try it
+		try {
+			// Get initial context
+			Context context = new InitialContext();
+
+			// Try to lookup
+			this.adminCompanyEmployeeBean = (AdminCompanyEmployeeSessionBeanRemote) context.lookup("java:global/jfinancials-ejb/adminCompanyEmployee!org.mxchange.jcontactsbusiness.employee.AdminCompanyEmployeeSessionBeanRemote"); //NOI18N
+		} catch (final NamingException e) {
+			// Throw again
+			throw new FaceletException(e);
+		}
+	}
+
+}
diff --git a/src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsAdminCompanyEmployeeWebRequestController.java b/src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsAdminCompanyEmployeeWebRequestController.java
new file mode 100644
index 00000000..d8bb8d7b
--- /dev/null
+++ b/src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsAdminCompanyEmployeeWebRequestController.java
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2017 Roland Häder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jfinancials.beans.business.employee;
+
+import java.io.Serializable;
+
+/**
+ * An interface for request-scoped administrative company employee beans
+ * <p>
+ * @author Roland Häder<roland@mxchange.org>
+ */
+public interface FinancialsAdminCompanyEmployeeWebRequestController extends Serializable {
+
+}
diff --git a/src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsCompanyEmployeeWebRequestBean.java b/src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsCompanyEmployeeWebRequestBean.java
new file mode 100644
index 00000000..aae15940
--- /dev/null
+++ b/src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsCompanyEmployeeWebRequestBean.java
@@ -0,0 +1,101 @@
+/*
+ * Copyright (C) 2017 RRoland Häder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jfinancials.beans.business.employee;
+
+import java.util.LinkedList;
+import java.util.List;
+import javax.annotation.PostConstruct;
+import javax.enterprise.context.SessionScoped;
+import javax.faces.view.facelets.FaceletException;
+import javax.inject.Named;
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+import org.mxchange.jcontactsbusiness.employee.CompanyEmployeeSessionBeanRemote;
+import org.mxchange.jcontactsbusiness.employee.Employee;
+import org.mxchange.jfinancials.beans.BaseFinancialsController;
+
+/**
+ * A request-scoped bean for general purposes for company employees.
+ * <p>
+ * @author Roland Häder<roland@mxchange.org>
+ */
+@Named ("companyEmployeeController")
+@SessionScoped
+public class FinancialsCompanyEmployeeWebRequestBean extends BaseFinancialsController implements FinancialsCompanyEmployeeWebSessionController {
+
+	/**
+	 * Serial number
+	 */
+	private static final long serialVersionUID = 12_886_968_547_361L;
+
+	/**
+	 * EJB for general company employee purposes
+	 */
+	private CompanyEmployeeSessionBeanRemote companyEmployeeBean;
+
+	/**
+	 * List of all company employees
+	 */
+	private final List<Employee> companyEmployees;
+
+	/**
+	 * Default constructor
+	 */
+	public FinancialsCompanyEmployeeWebRequestBean () {
+		// Call super constructor
+		super();
+
+		// Init list instance
+		this.companyEmployees = new LinkedList<>();
+	}
+
+	/**
+	 * Returns a list of all company employees
+	 * <p>
+	 * @return List of all company employees
+	 */
+	@SuppressWarnings ("ReturnOfCollectionOrArrayField")
+	public List<Employee> allCompanyEmployees () {
+		return this.companyEmployees;
+	}
+
+	/**
+	 * Initialization method
+	 */
+	@PostConstruct
+	public void init () {
+		// Try it
+		try {
+			// Get initial context
+			Context context = new InitialContext();
+
+			// Try to lookup
+			this.companyEmployeeBean = (CompanyEmployeeSessionBeanRemote) context.lookup("java:global/jfinancials-ejb/adminCompanyEmployee!org.mxchange.jcontactsbusiness.employee.CompanyEmployeeSessionBeanRemote"); //NOI18N
+		} catch (final NamingException e) {
+			// Throw again
+			throw new FaceletException(e);
+		}
+
+		// Get all entries from remote bean
+		List<Employee> employees = this.companyEmployeeBean.allCompanyEmployees();
+
+		// Copy it to main list
+		this.companyEmployees.addAll(employees);
+	}
+
+}
diff --git a/src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsCompanyEmployeeWebSessionController.java b/src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsCompanyEmployeeWebSessionController.java
new file mode 100644
index 00000000..80e14ad1
--- /dev/null
+++ b/src/java/org/mxchange/jfinancials/beans/business/employee/FinancialsCompanyEmployeeWebSessionController.java
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2017 Roland Häder
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jfinancials.beans.business.employee;
+
+import java.io.Serializable;
+
+/**
+ * An interface for request-scoped general company employee beans
+ * <p>
+ * @author Roland Häder<roland@mxchange.org>
+ */
+public interface FinancialsCompanyEmployeeWebSessionController extends Serializable {
+
+}
diff --git a/web/WEB-INF/templates/admin/business_basic_data/admin_form_business_basic_data.tpl b/web/WEB-INF/templates/admin/business_basic_data/admin_form_business_basic_data.tpl
index ab49e92d..1e5f856d 100644
--- a/web/WEB-INF/templates/admin/business_basic_data/admin_form_business_basic_data.tpl
+++ b/web/WEB-INF/templates/admin/business_basic_data/admin_form_business_basic_data.tpl
@@ -46,46 +46,6 @@
 				<h:message for="companyEmailAddress" errorClass="errors" warnClass="warnings" fatalClass="errors" />
 			</h:panelGroup>
 
-			<h:panelGroup styleClass="table_row" layout="block">
-				<div class="table_left_medium">
-					<h:outputLabel for="companyContactEmployee" value="#{msg.ADMIN_SELECT_BUSINESS_DATA_COMPANY_CONTACT_EMPLOYEE}" />
-				</div>
-
-				<div class="table_right_medium">
-					<h:selectOneMenu styleClass="select" id="companyContactEmployee" value="#{adminBusinessDataController.companyContactEmployee}">
-						<f:converter converterId="CompanyEmployeeConverter" />
-						<f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
-						<f:selectItems value="#{adminCompanyEmployeeController.allCompanyEmployees()}" var="companyEmployee" itemValue="#{companyEmployee}" itemLabel="#{companyEmployee.foo})" />
-					</h:selectOneMenu>
-				</div>
-
-				<div class="clear"></div>
-			</h:panelGroup>
-
-			<h:panelGroup styleClass="error_container" layout="block">
-				<h:message for="companyContactEmployee" errorClass="errors" warnClass="warnings" fatalClass="errors" />
-			</h:panelGroup>
-
-			<h:panelGroup styleClass="table_row" layout="block">
-				<div class="table_left_medium">
-					<h:outputLabel for="companyFounder" value="#{msg.ADMIN_SELECT_BUSINESS_DATA_COMPANY_FOUNDER}" />
-				</div>
-
-				<div class="table_right_medium">
-					<h:selectOneMenu styleClass="select" id="companyFounder" value="#{adminBusinessDataController.companyFounder}">
-						<f:converter converterId="CompanyEmployeeConverter" />
-						<f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
-						<f:selectItems value="#{adminCompanyEmployeeController.allCompanyEmployees()}" var="companyEmployee" itemValue="#{companyEmployee}" itemLabel="#{companyEmployee.foo})" />
-					</h:selectOneMenu>
-				</div>
-
-				<div class="clear"></div>
-			</h:panelGroup>
-
-			<h:panelGroup styleClass="error_container" layout="block">
-				<h:message for="companyFounder" errorClass="errors" warnClass="warnings" fatalClass="errors" />
-			</h:panelGroup>
-
 			<h:panelGroup styleClass="table_row" layout="block">
 				<div class="table_left_medium">
 					<h:outputLabel for="companyLogo" value="#{msg.ADMIN_SELECT_BUSINESS_DATA_COMPANY_FOUNDER}" />
@@ -143,7 +103,7 @@
 					<h:selectOneMenu styleClass="select" id="contactCompanyUserOwner" value="#{adminBusinessDataController.contactCompanyUserOwner}">
 						<f:converter converterId="UserConverter" />
 						<f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
-						<f:selectItems value="#{userController.allUsers()}" var="companyUserOwner" itemValue="#{companyUserOwner}" itemLabel="#{companyUserOwner.foo})" />
+						<f:selectItems value="#{userController.allUsers()}" var="companyUserOwner" itemValue="#{companyUserOwner}" itemLabel="#{companyUserOwner.userContact.contactFirstName} #{companyUserOwner.userContact.contactFamilyName} (#{companyUserOwner.userName})" />
 					</h:selectOneMenu>
 				</div>
 
@@ -163,7 +123,7 @@
 					<h:selectOneMenu styleClass="select" id="companyHeadQuarters" value="#{adminBusinessDataController.companyHeadQuarters}">
 						<f:converter converterId="CompanyEmployeeConverter" />
 						<f:selectItem itemValue="" itemLabel="#{msg.NONE_SELECTED}" />
-						<f:selectItems value="#{adminCompanyHeadquartersController.allCompanyHeadquarters()}" var="companyHeadQuarters" itemValue="#{companyHeadQuarters}" itemLabel="#{companyHeadQuarters.foo})" />
+						<f:selectItems value="#{companyHeadquartersController.allCompanyHeadquarters()}" var="companyHeadQuarters" itemValue="#{companyHeadQuarters}" itemLabel="#{companyHeadQuarters.foo}" />
 					</h:selectOneMenu>
 				</div>
 
-- 
2.39.5