001 /*
002 * Copyright 2011 The Kuali Foundation.
003 *
004 * Licensed under the Educational Community License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.opensource.org/licenses/ecl2.php
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016
017 package org.kuali.kfs.module.ld.businessobject;
018
019 import java.util.LinkedHashMap;
020
021 import org.kuali.kfs.coa.businessobject.Chart;
022 import org.kuali.kfs.coa.businessobject.ObjectCode;
023 import org.kuali.kfs.integration.ld.LaborLedgerObject;
024 import org.kuali.kfs.integration.ld.LaborLedgerPositionObjectGroup;
025 import org.kuali.kfs.sys.businessobject.SystemOptions;
026 import org.kuali.rice.kns.bo.Inactivateable;
027 import org.kuali.rice.kns.bo.PersistableBusinessObjectBase;
028
029 /**
030 * Labor business object for LaborObject.
031 */
032 public class LaborObject extends PersistableBusinessObjectBase implements LaborLedgerObject, Inactivateable {
033 private Integer universityFiscalYear;
034 private String chartOfAccountsCode;
035 private String financialObjectCode;
036 private boolean detailPositionRequiredIndicator;
037 private boolean financialObjectHoursRequiredIndicator;
038 private String financialObjectPayTypeCode;
039 private String financialObjectFringeOrSalaryCode;
040 private String positionObjectGroupCode;
041 private boolean active;
042
043 private ObjectCode financialObject;
044 private Chart chartOfAccounts;
045 private PositionObjectGroup positionObjectGroup;
046 private SystemOptions option;
047
048 /**
049 * Default constructor.
050 */
051 public LaborObject() {
052
053 }
054
055 /**
056 * Gets the universityFiscalYear
057 *
058 * @return Returns the universityFiscalYear
059 */
060 public Integer getUniversityFiscalYear() {
061 return universityFiscalYear;
062 }
063
064 /**
065 * Sets the universityFiscalYear
066 *
067 * @param universityFiscalYear The universityFiscalYear to set.
068 */
069 public void setUniversityFiscalYear(Integer universityFiscalYear) {
070 this.universityFiscalYear = universityFiscalYear;
071 }
072
073 /**
074 * Gets the chartOfAccountsCode
075 *
076 * @return Returns the chartOfAccountsCode
077 */
078 public String getChartOfAccountsCode() {
079 return chartOfAccountsCode;
080 }
081
082 /**
083 * Sets the chartOfAccountsCode
084 *
085 * @param chartOfAccountsCode The chartOfAccountsCode to set.
086 */
087 public void setChartOfAccountsCode(String chartOfAccountsCode) {
088 this.chartOfAccountsCode = chartOfAccountsCode;
089 }
090
091 /**
092 * Gets the financialObjectCode
093 *
094 * @return Returns the financialObjectCode
095 */
096 public String getFinancialObjectCode() {
097 return financialObjectCode;
098 }
099
100 /**
101 * Sets the financialObjectCode
102 *
103 * @param financialObjectCode The financialObjectCode to set.
104 */
105 public void setFinancialObjectCode(String financialObjectCode) {
106 this.financialObjectCode = financialObjectCode;
107 }
108
109 /**
110 * Gets the detailPositionRequiredIndicator
111 *
112 * @return Returns the detailPositionRequiredIndicator
113 */
114 public boolean isDetailPositionRequiredIndicator() {
115 return detailPositionRequiredIndicator;
116 }
117
118 /**
119 * Sets the detailPositionRequiredIndicator
120 *
121 * @param detailPositionRequiredIndicator The detailPositionRequiredIndicator to set.
122 */
123 public void setDetailPositionRequiredIndicator(boolean detailPositionRequiredIndicator) {
124 this.detailPositionRequiredIndicator = detailPositionRequiredIndicator;
125 }
126
127 /**
128 * Gets the financialObjectHoursRequiredIndicator
129 *
130 * @return Returns the financialObjectHoursRequiredIndicator
131 */
132 public boolean isFinancialObjectHoursRequiredIndicator() {
133 return financialObjectHoursRequiredIndicator;
134 }
135
136 /**
137 * Sets the financialObjectHoursRequiredIndicator
138 *
139 * @param financialObjectHoursRequiredIndicator The financialObjectHoursRequiredIndicator to set.
140 */
141 public void setFinancialObjectHoursRequiredIndicator(boolean financialObjectHoursRequiredIndicator) {
142 this.financialObjectHoursRequiredIndicator = financialObjectHoursRequiredIndicator;
143 }
144
145 /**
146 * Gets the financialObjectPayTypeCode
147 *
148 * @return Returns the financialObjectPayTypeCode
149 */
150 public String getFinancialObjectPayTypeCode() {
151 return financialObjectPayTypeCode;
152 }
153
154 /**
155 * Sets the financialObjectPayTypeCode
156 *
157 * @param financialObjectPayTypeCode The financialObjectPayTypeCode to set.
158 */
159 public void setFinancialObjectPayTypeCode(String financialObjectPayTypeCode) {
160 this.financialObjectPayTypeCode = financialObjectPayTypeCode;
161 }
162
163 /**
164 * Gets the financialObjectFringeOrSalaryCode
165 *
166 * @return Returns the financialObjectFringeOrSalaryCode
167 */
168 public String getFinancialObjectFringeOrSalaryCode() {
169 return financialObjectFringeOrSalaryCode;
170 }
171
172 /**
173 * Sets the financialObjectFringeOrSalaryCode
174 *
175 * @param financialObjectFringeOrSalaryCode The financialObjectFringeOrSalaryCode to set.
176 */
177 public void setFinancialObjectFringeOrSalaryCode(String financialObjectFringeOrSalaryCode) {
178 this.financialObjectFringeOrSalaryCode = financialObjectFringeOrSalaryCode;
179 }
180
181 /**
182 * Gets the positionObjectGroupCode
183 *
184 * @return Returns the positionObjectGroupCode
185 */
186 public String getPositionObjectGroupCode() {
187 return positionObjectGroupCode;
188 }
189
190 /**
191 * Sets the positionObjectGroupCode
192 *
193 * @param positionObjectGroupCode The positionObjectGroupCode to set.
194 */
195 public void setPositionObjectGroupCode(String positionObjectGroupCode) {
196 this.positionObjectGroupCode = positionObjectGroupCode;
197 }
198
199 /**
200 * Gets the financialObject
201 *
202 * @return Returns the financialObject
203 */
204 public ObjectCode getFinancialObject() {
205 return financialObject;
206 }
207
208 /**
209 * Sets the financialObject
210 *
211 * @param financialObject The financialObject to set.
212 */
213 @Deprecated
214 public void setFinancialObject(ObjectCode financialObject) {
215 this.financialObject = financialObject;
216 }
217
218 /**
219 * Gets the chartOfAccounts
220 *
221 * @return Returns the chartOfAccounts
222 */
223 public Chart getChartOfAccounts() {
224 return chartOfAccounts;
225 }
226
227 /**
228 * Sets the chartOfAccounts
229 *
230 * @param chartOfAccounts The chartOfAccounts to set.
231 */
232 @Deprecated
233 public void setChartOfAccounts(Chart chartOfAccounts) {
234 this.chartOfAccounts = chartOfAccounts;
235 }
236
237 /**
238 * Gets the positionObjectGroup attribute.
239 *
240 * @return Returns the positionObjectGroup.
241 */
242 public PositionObjectGroup getPositionObjectGroup() {
243 return positionObjectGroup;
244 }
245
246 /**
247 * Sets the positionObjectGroup attribute value.
248 *
249 * @param positionObjectGroup The positionObjectGroup to set.
250 */
251 @Deprecated
252 public void setPositionObjectGroup(PositionObjectGroup positionObjectGroup) {
253 this.positionObjectGroup = positionObjectGroup;
254 }
255
256 /**
257 * @see org.kuali.kfs.bo.LaborLedgerObject#getLaborLedgerPositionObjectGroup()
258 */
259 public LaborLedgerPositionObjectGroup getLaborLedgerPositionObjectGroup() {
260 return this.positionObjectGroup;
261 }
262
263 /**
264 * @see org.kuali.kfs.bo.LaborLedgerObject#setLaborLedgerPositionObjectGroup(org.kuali.kfs.bo.LaborLedgerPositionObjectGroup)
265 */
266 @Deprecated
267 public void setLaborLedgerPositionObjectGroup(LaborLedgerPositionObjectGroup laborLedgerPositionObjectGroup) {
268 this.positionObjectGroup = (PositionObjectGroup) laborLedgerPositionObjectGroup;
269 }
270
271 /**
272 * Gets the option
273 *
274 * @return Returns the option.
275 */
276 public SystemOptions getOption() {
277 return option;
278 }
279
280 /**
281 * Sets the option
282 *
283 * @param option The option to set.
284 */
285 public void setOption(SystemOptions option) {
286 this.option = option;
287 }
288
289 /**
290 * Gets the active attribute.
291 *
292 * @return Returns the active.
293 */
294 public boolean isActive() {
295 return active;
296 }
297
298 /**
299 * Sets the active attribute value.
300 *
301 * @param active The active to set.
302 */
303 public void setActive(boolean active) {
304 this.active = active;
305 }
306
307 /**
308 * This method (a hack by any other name...) returns a string so that an Labor Object Code can have a link to view its own
309 * inquiry page after a look up
310 *
311 * @return the String "View Labor Object Code"
312 */
313 public String getLaborObjectCodeViewer() {
314 return "View Labor Object Code";
315 }
316
317 /**
318 * construct the key list of the business object.
319 *
320 * @see org.kuali.rice.kns.bo.BusinessObjectBase#toStringMapper()
321 */
322 protected LinkedHashMap toStringMapper() {
323 LinkedHashMap m = new LinkedHashMap();
324 if (this.universityFiscalYear != null) {
325 m.put("universityFiscalYear", this.universityFiscalYear.toString());
326 }
327 m.put("chartOfAccountsCode", this.chartOfAccountsCode);
328 m.put("financialObjectCode", this.financialObjectCode);
329
330 return m;
331 }
332 }