View Javadoc

1   /**
2    * Copyright 2005-2011 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.opensource.org/licenses/ecl2.php
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.kuali.rice.kim.bo.ui;
17  
18  import org.hibernate.annotations.Fetch;
19  import org.hibernate.annotations.FetchMode;
20  import org.hibernate.annotations.GenericGenerator;
21  import org.hibernate.annotations.Parameter;
22  import org.hibernate.annotations.Type;
23  import org.kuali.rice.core.api.util.type.KualiDecimal;
24  import org.kuali.rice.kim.impl.identity.employment.EntityEmploymentStatusBo;
25  import org.kuali.rice.kim.impl.identity.employment.EntityEmploymentTypeBo;
26  
27  import javax.persistence.Column;
28  import javax.persistence.Entity;
29  import javax.persistence.FetchType;
30  import javax.persistence.GeneratedValue;
31  import javax.persistence.Id;
32  import javax.persistence.IdClass;
33  import javax.persistence.JoinColumn;
34  import javax.persistence.ManyToOne;
35  import javax.persistence.Table;
36  import javax.persistence.Transient;
37  
38  /**
39   * This is a description of what this class does - shyu don't forget to fill this in. 
40   * 
41   * @author Kuali Rice Team (rice.collab@kuali.org)
42   *
43   */
44  @IdClass(PersonDocumentEmploymentInfoId.class)
45  @Entity
46  @Table(name = "KRIM_PND_EMP_INFO_MT")
47  public class PersonDocumentEmploymentInfo extends KimDocumentBoActivatableEditableBase {
48  	@Id
49  	@GeneratedValue(generator="KRIM_ENTITY_EMP_ID_S")
50  	@GenericGenerator(name="KRIM_ENTITY_EMP_ID_S",strategy="org.kuali.rice.core.jpa.spring.RiceNumericStringSequenceStyleGenerator",parameters={
51  			@Parameter(name="sequence_name",value="KRIM_ENTITY_EMP_ID_S"),
52  			@Parameter(name="value_column",value="id")
53  		})
54  	@Column(name = "ENTITY_EMP_ID")
55  	protected String entityEmploymentId;
56  
57  	@Column(name = "ENTITY_AFLTN_ID")
58  	protected String entityAffiliationId;
59  
60  	@Column(name = "EMP_STAT_CD")
61  	protected String employmentStatusCode;
62  
63  	@Column(name = "EMP_TYP_CD")
64  	protected String employmentTypeCode;
65  
66  	@Column(name = "PRMRY_DEPT_CD")
67  	protected String primaryDepartmentCode;
68  	
69  	@Column(name = "BASE_SLRY_AMT")
70  	protected KualiDecimal baseSalaryAmount;
71  	@Column(name = "EMP_ID")
72  	protected String employeeId;
73  
74  	@Column(name = "EMP_REC_ID")
75  	protected String employmentRecordId;
76  
77  	@Type(type="yes_no")
78  	@Column(name="PRMRY_IND")
79  	protected boolean primary;
80  
81  	@ManyToOne(targetEntity=EntityEmploymentTypeBo.class, fetch = FetchType.EAGER, cascade = {})
82  	@JoinColumn(name = "EMP_TYP_CD", insertable = false, updatable = false)
83  	protected EntityEmploymentTypeBo employmentType;
84  
85  	@ManyToOne(targetEntity=EntityEmploymentStatusBo.class, fetch = FetchType.EAGER, cascade = {})
86  	@Fetch(value = FetchMode.SELECT)
87  	@JoinColumn(name = "EMP_STAT_CD", insertable = false, updatable = false)
88  	protected EntityEmploymentStatusBo employmentStatus;
89  	@Transient
90  	protected PersonDocumentAffiliation affiliation;
91  	
92  	public PersonDocumentEmploymentInfo() {
93  		this.active = true;
94  	}
95  
96  	/**
97  	 * @see org.kuali.rice.kim.api.identity.employment.EntityEmploymentContract#getBaseSalaryAmount()
98  	 */
99  	public KualiDecimal getBaseSalaryAmount() {
100 		return baseSalaryAmount;
101 	}
102 
103 	/**
104 	 * @see org.kuali.rice.kim.api.identity.employment.EntityEmploymentContract#getEmployeeStatusCode()
105 	 */
106 	public String getEmploymentStatusCode() {
107 		return employmentStatusCode;
108 	}
109 
110 	/**
111 	 * @see org.kuali.rice.kim.api.identity.employment.EntityEmploymentContract#getEmploymentTypeCode()
112 	 */
113 	public String getEmploymentTypeCode() {
114 		return employmentTypeCode;
115 	}
116 
117 	/**
118 	 * @see org.kuali.rice.kim.api.identity.employment.EntityEmploymentContract#getEntityAffiliationId()
119 	 */
120 	public String getEntityAffiliationId() {
121 		return entityAffiliationId;
122 	}
123 
124 	/**
125 	 * @see org.kuali.rice.kim.api.identity.employment.EntityEmploymentContract#getEntityEmploymentId()
126 	 */
127 	public String getEntityEmploymentId() {
128 		return entityEmploymentId;
129 	}
130 
131 	/**
132 	 * @see org.kuali.rice.kim.api.identity.employment.EntityEmploymentContract#isPrimary()
133 	 */
134 	public boolean isPrimary() {
135 		return primary;
136 	}
137 
138 	/**
139 	 * @see org.kuali.rice.kim.api.identity.employment.EntityEmploymentContract#setAffiliationId(java.lang.String)
140 	 */
141 	public void setEntityAffiliationId(String entityAffiliationId) {
142 		this.entityAffiliationId = entityAffiliationId;
143 	}
144 
145 	/**
146 	 * @see org.kuali.rice.kim.api.identity.employment.EntityEmploymentContract#setBaseSalaryAmount(java.math.BigDecimal)
147 	 */
148 	public void setBaseSalaryAmount(KualiDecimal baseSalaryAmount) {
149 		this.baseSalaryAmount = baseSalaryAmount;
150 	}
151 
152 	/**
153 	 * @see org.kuali.rice.kim.api.identity.employment.EntityEmploymentContract#setEmployeeStatusCode(java.lang.String)
154 	 */
155 	public void setEmploymentStatusCode(String employmentStatusCode) {
156 		this.employmentStatusCode = employmentStatusCode;
157 	}
158 
159 	/**
160 	 * @see org.kuali.rice.kim.api.identity.employment.EntityEmploymentContract#setEmploymentTypeCode(java.lang.String)
161 	 */
162 	public void setEmploymentTypeCode(String employmentTypeCode) {
163 		this.employmentTypeCode = employmentTypeCode;
164 	}
165 
166 	/**
167 	 * @see org.kuali.rice.kim.api.identity.employment.EntityEmploymentContract#setPrimary(boolean)
168 	 */
169 	public void setPrimary(boolean primary) {
170 		this.primary = primary;
171 	}
172 
173 	public void setEntityEmploymentId(String entityEmploymentId) {
174 		this.entityEmploymentId = entityEmploymentId;
175 	}
176 
177 	public EntityEmploymentTypeBo getEmploymentType() {
178 		return this.employmentType;
179 	}
180 
181 	public void setEmploymentType(EntityEmploymentTypeBo employmentType) {
182 		this.employmentType = employmentType;
183 	}
184 
185 	public EntityEmploymentStatusBo getEmploymentStatus() {
186 		return this.employmentStatus;
187 	}
188 
189 	public void setEmploymentStatus(EntityEmploymentStatusBo employmentStatus) {
190 		this.employmentStatus = employmentStatus;
191 	}
192 
193 	public String getPrimaryDepartmentCode() {
194 		return this.primaryDepartmentCode;
195 	}
196 
197 	public void setPrimaryDepartmentCode(String primaryDepartmentCode) {
198 		this.primaryDepartmentCode = primaryDepartmentCode;
199 	}
200 
201 	public PersonDocumentAffiliation getAffiliation() {
202 		return this.affiliation;
203 	}
204 
205 	public void setAffiliation(PersonDocumentAffiliation affiliation) {
206 		this.affiliation = affiliation;
207 	}
208 
209 	public String getEmployeeId() {
210 		return this.employeeId;
211 	}
212 
213 	public void setEmployeeId(String employeeId) {
214 		this.employeeId = employeeId;
215 	}
216 
217 	public String getEmploymentRecordId() {
218 		return this.employmentRecordId;
219 	}
220 
221 	public void setEmploymentRecordId(String employmentRecordId) {
222 		this.employmentRecordId = employmentRecordId;
223 	}
224 
225 }