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.math.BigDecimal;
020    import java.sql.Date;
021    import java.sql.Timestamp;
022    import java.util.LinkedHashMap;
023    
024    import org.kuali.kfs.coa.businessobject.Account;
025    import org.kuali.kfs.coa.businessobject.AccountingPeriod;
026    import org.kuali.kfs.coa.businessobject.BalanceType;
027    import org.kuali.kfs.coa.businessobject.Chart;
028    import org.kuali.kfs.coa.businessobject.ObjectCode;
029    import org.kuali.kfs.coa.businessobject.ObjectType;
030    import org.kuali.kfs.coa.businessobject.ProjectCode;
031    import org.kuali.kfs.coa.businessobject.SubAccount;
032    import org.kuali.kfs.coa.businessobject.SubObjectCode;
033    import org.kuali.kfs.gl.businessobject.Entry;
034    import org.kuali.kfs.gl.businessobject.TransientBalanceInquiryAttributes;
035    import org.kuali.kfs.integration.ld.LaborLedgerEntry;
036    import org.kuali.kfs.integration.ld.LaborLedgerObject;
037    import org.kuali.kfs.sys.KFSPropertyConstants;
038    import org.kuali.kfs.sys.businessobject.OriginationCode;
039    import org.kuali.kfs.sys.businessobject.SystemOptions;
040    import org.kuali.kfs.sys.context.SpringContext;
041    import org.kuali.rice.kew.doctype.bo.DocumentTypeEBO;
042    import org.kuali.rice.kew.service.impl.KEWModuleService;
043    import org.kuali.rice.kns.util.KualiDecimal;
044    
045    /**
046     * Labor business object for LedgerEntry
047     */
048    public class LedgerEntry extends Entry implements LaborLedgerEntry {
049    
050        private Integer universityFiscalYear;
051        private String chartOfAccountsCode;
052        private String accountNumber;
053        private String subAccountNumber;
054        private String financialObjectCode;
055        private String financialSubObjectCode;
056        private String financialBalanceTypeCode;
057        private String financialObjectTypeCode;
058        private String universityFiscalPeriodCode;
059        private String financialDocumentTypeCode;
060        private String financialSystemOriginationCode;
061        private String documentNumber;
062        private Integer transactionLedgerEntrySequenceNumber;
063        private String positionNumber;
064        private String projectCode;
065        private String transactionLedgerEntryDescription;
066        private KualiDecimal transactionLedgerEntryAmount;
067        private String transactionDebitCreditCode;
068        private Date transactionDate;
069        private String organizationDocumentNumber;
070        private String organizationReferenceId;
071        private String referenceFinancialDocumentTypeCode;
072        private String referenceFinancialSystemOriginationCode;
073        private String referenceFinancialDocumentNumber;
074        private Date financialDocumentReversalDate;
075        private String transactionEncumbranceUpdateCode;
076        private Date transactionPostingDate;
077        private Date payPeriodEndDate;
078        private BigDecimal transactionTotalHours;
079        private Integer payrollEndDateFiscalYear;
080        private String payrollEndDateFiscalPeriodCode;
081        private String emplid;
082        private Integer employeeRecord;
083        private String earnCode;
084        private String payGroup;
085        private String salaryAdministrationPlan;
086        private String grade;
087        private String runIdentifier;
088        private String laborLedgerOriginalChartOfAccountsCode;
089        private String laborLedgerOriginalAccountNumber;
090        private String laborLedgerOriginalSubAccountNumber;
091        private String laborLedgerOriginalFinancialObjectCode;
092        private String laborLedgerOriginalFinancialSubObjectCode;
093        private String hrmsCompany;
094        private String setid;
095        private Timestamp transactionDateTimeStamp;
096    
097        private ObjectCode financialObject;
098        private Chart chartOfAccounts;
099        private Account account;
100        private SubAccount subAccount;
101        private SubObjectCode financialSubObject;
102        private ObjectType financialObjectType;
103        private BalanceType balanceType;
104        private AccountingPeriod universityFiscalPeriod;
105        private AccountingPeriod payrollEndDateFiscalPeriod;
106        private DocumentTypeEBO financialSystemDocumentTypeCode;
107        private DocumentTypeEBO referenceFinancialSystemDocumentTypeCode;
108        private SystemOptions option;
109        private OriginationCode referenceOriginationCode;
110        private ProjectCode project;
111        private OriginationCode financialSystemOrigination;
112        private LaborObject laborObject;
113    
114        /**
115         * Default constructor.
116         */
117        public LedgerEntry() {
118            super();
119            this.setDummyBusinessObject(new TransientBalanceInquiryAttributes());
120        }
121    
122        /**
123         * Constructs a LedgerEntry.java.
124         * 
125         * @param transaction the given transaction
126         */
127        public LedgerEntry(LaborTransaction transaction) {
128            super(transaction);
129            this.setEarnCode(transaction.getEarnCode());
130            this.setEmplid(transaction.getEmplid());
131            this.setEmployeeRecord(transaction.getEmployeeRecord());
132            this.setGrade(transaction.getGrade());
133            this.setHrmsCompany(transaction.getHrmsCompany());
134            this.setLaborLedgerOriginalAccountNumber(transaction.getLaborLedgerOriginalAccountNumber());
135            this.setLaborLedgerOriginalChartOfAccountsCode(transaction.getLaborLedgerOriginalChartOfAccountsCode());
136            this.setLaborLedgerOriginalFinancialObjectCode(transaction.getLaborLedgerOriginalFinancialObjectCode());
137            this.setLaborLedgerOriginalFinancialSubObjectCode(transaction.getLaborLedgerOriginalFinancialSubObjectCode());
138            this.setLaborLedgerOriginalSubAccountNumber(transaction.getLaborLedgerOriginalSubAccountNumber());
139            this.setPayGroup(transaction.getPayGroup());
140            this.setPayPeriodEndDate(transaction.getPayPeriodEndDate());
141            this.setPayrollEndDateFiscalPeriodCode(transaction.getPayrollEndDateFiscalPeriodCode());
142            this.setPayrollEndDateFiscalYear(transaction.getPayrollEndDateFiscalYear());
143            this.setPositionNumber(transaction.getPositionNumber());
144            this.setRunIdentifier(transaction.getRunIdentifier());
145            this.setProjectCode(transaction.getProjectCode());
146            this.setSetid(transaction.getSetid());
147            this.setSalaryAdministrationPlan(transaction.getSalaryAdministrationPlan());
148            this.setTransactionTotalHours(transaction.getTransactionTotalHours());
149        }
150    
151        /**
152         * Gets the universityFiscalYear
153         * 
154         * @return Returns the universityFiscalYear
155         */
156        public Integer getUniversityFiscalYear() {
157            return universityFiscalYear;
158        }
159    
160        /**
161         * Sets the universityFiscalYear
162         * 
163         * @param universityFiscalYear The universityFiscalYear to set.
164         */
165        public void setUniversityFiscalYear(Integer universityFiscalYear) {
166            this.universityFiscalYear = universityFiscalYear;
167        }
168    
169        /**
170         * Gets the chartOfAccountsCode
171         * 
172         * @return Returns the chartOfAccountsCode
173         */
174        public String getChartOfAccountsCode() {
175            return chartOfAccountsCode;
176        }
177    
178        /**
179         * Sets the chartOfAccountsCode
180         * 
181         * @param chartOfAccountsCode The chartOfAccountsCode to set.
182         */
183        public void setChartOfAccountsCode(String chartOfAccountsCode) {
184            this.chartOfAccountsCode = chartOfAccountsCode;
185        }
186    
187        /**
188         * Gets the accountNumber
189         * 
190         * @return Returns the accountNumber
191         */
192        public String getAccountNumber() {
193            return accountNumber;
194        }
195    
196        /**
197         * Sets the accountNumber
198         * 
199         * @param accountNumber The accountNumber to set.
200         */
201        public void setAccountNumber(String accountNumber) {
202            this.accountNumber = accountNumber;
203        }
204    
205        /**
206         * Gets the subAccountNumber
207         * 
208         * @return Returns the subAccountNumber
209         */
210        public String getSubAccountNumber() {
211            return subAccountNumber;
212        }
213    
214        /**
215         * Sets the subAccountNumber
216         * 
217         * @param subAccountNumber The subAccountNumber to set.
218         */
219        public void setSubAccountNumber(String subAccountNumber) {
220            this.subAccountNumber = subAccountNumber;
221        }
222    
223        /**
224         * Gets the financialObjectCode
225         * 
226         * @return Returns the financialObjectCode
227         */
228        public String getFinancialObjectCode() {
229            return financialObjectCode;
230        }
231    
232        /**
233         * Sets the financialObjectCode
234         * 
235         * @param financialObjectCode The financialObjectCode to set.
236         */
237        public void setFinancialObjectCode(String financialObjectCode) {
238            this.financialObjectCode = financialObjectCode;
239        }
240    
241        /**
242         * Gets the financialSubObjectCode
243         * 
244         * @return Returns the financialSubObjectCode
245         */
246        public String getFinancialSubObjectCode() {
247            return financialSubObjectCode;
248        }
249    
250        /**
251         * Sets the financialSubObjectCode
252         * 
253         * @param financialSubObjectCode The financialSubObjectCode to set.
254         */
255        public void setFinancialSubObjectCode(String financialSubObjectCode) {
256            this.financialSubObjectCode = financialSubObjectCode;
257        }
258    
259        /**
260         * Gets the financialBalanceTypeCode
261         * 
262         * @return Returns the financialBalanceTypeCode
263         */
264        public String getFinancialBalanceTypeCode() {
265            return financialBalanceTypeCode;
266        }
267    
268        /**
269         * Sets the financialBalanceTypeCode
270         * 
271         * @param financialBalanceTypeCode The financialBalanceTypeCode to set.
272         */
273        public void setFinancialBalanceTypeCode(String financialBalanceTypeCode) {
274            this.financialBalanceTypeCode = financialBalanceTypeCode;
275        }
276    
277        /**
278         * Gets the financialObjectTypeCode
279         * 
280         * @return Returns the financialObjectTypeCode
281         */
282        public String getFinancialObjectTypeCode() {
283            return financialObjectTypeCode;
284        }
285    
286        /**
287         * Sets the financialObjectTypeCode
288         * 
289         * @param financialObjectTypeCode The financialObjectTypeCode to set.
290         */
291        public void setFinancialObjectTypeCode(String financialObjectTypeCode) {
292            this.financialObjectTypeCode = financialObjectTypeCode;
293        }
294    
295        /**
296         * Gets the universityFiscalPeriodCode
297         * 
298         * @return Returns the universityFiscalPeriodCode
299         */
300        public String getUniversityFiscalPeriodCode() {
301            return universityFiscalPeriodCode;
302        }
303    
304        /**
305         * Sets the universityFiscalPeriodCode
306         * 
307         * @param universityFiscalPeriodCode The universityFiscalPeriodCode to set.
308         */
309        public void setUniversityFiscalPeriodCode(String universityFiscalPeriodCode) {
310            this.universityFiscalPeriodCode = universityFiscalPeriodCode;
311        }
312    
313        /**
314         * Gets the financialDocumentTypeCode
315         * 
316         * @return Returns the financialDocumentTypeCode
317         */
318        public String getFinancialDocumentTypeCode() {
319            return financialDocumentTypeCode;
320        }
321    
322        /**
323         * Gets the financialSystemOriginationCode
324         * 
325         * @return Returns the financialSystemOriginationCode.
326         */
327        public String getFinancialSystemOriginationCode() {
328            return financialSystemOriginationCode;
329        }
330    
331        /**
332         * Sets the financialSystemOriginationCode
333         * 
334         * @param financialSystemOriginationCode The financialSystemOriginationCode to set.
335         */
336        public void setFinancialSystemOriginationCode(String financialSystemOriginationCode) {
337            this.financialSystemOriginationCode = financialSystemOriginationCode;
338        }
339    
340        /**
341         * Sets the financialDocumentTypeCode
342         * 
343         * @param financialDocumentTypeCode The financialDocumentTypeCode to set.
344         */
345        public void setFinancialDocumentTypeCode(String financialDocumentTypeCode) {
346            this.financialDocumentTypeCode = financialDocumentTypeCode;
347        }
348    
349        /**
350         * Gets the documentNumber
351         * 
352         * @return Returns the documentNumber
353         */
354        public String getDocumentNumber() {
355            return documentNumber;
356        }
357    
358        /**
359         * Sets the documentNumber
360         * 
361         * @param documentNumber The documentNumber to set.
362         */
363        public void setDocumentNumber(String documentNumber) {
364            this.documentNumber = documentNumber;
365        }
366    
367        /**
368         * Gets the transactionLedgerEntrySequenceNumber
369         * 
370         * @return Returns the transactionLedgerEntrySequenceNumber
371         */
372        public Integer getTransactionLedgerEntrySequenceNumber() {
373            return transactionLedgerEntrySequenceNumber;
374        }
375    
376        /**
377         * Sets the transactionLedgerEntrySequenceNumber
378         * 
379         * @param transactionLedgerEntrySequenceNumber The transactionLedgerEntrySequenceNumber to set.
380         */
381        public void setTransactionLedgerEntrySequenceNumber(Integer transactionLedgerEntrySequenceNumber) {
382            this.transactionLedgerEntrySequenceNumber = transactionLedgerEntrySequenceNumber;
383        }
384    
385        /**
386         * Gets the positionNumber
387         * 
388         * @return Returns the positionNumber
389         */
390        public String getPositionNumber() {
391            return positionNumber;
392        }
393    
394        /**
395         * Sets the positionNumber
396         * 
397         * @param positionNumber The positionNumber to set.
398         */
399        public void setPositionNumber(String positionNumber) {
400            this.positionNumber = positionNumber;
401        }
402    
403        /**
404         * Gets the projectCode
405         * 
406         * @return Returns the projectCode
407         */
408        public String getProjectCode() {
409            return projectCode;
410        }
411    
412        /**
413         * Sets the projectCode
414         * 
415         * @param projectCode The projectCode to set.
416         */
417        public void setProjectCode(String projectCode) {
418            this.projectCode = projectCode;
419        }
420    
421        /**
422         * Gets the transactionLedgerEntryDescription
423         * 
424         * @return Returns the transactionLedgerEntryDescription
425         */
426        public String getTransactionLedgerEntryDescription() {
427            return transactionLedgerEntryDescription;
428        }
429    
430        /**
431         * Sets the transactionLedgerEntryDescription
432         * 
433         * @param transactionLedgerEntryDescription The transactionLedgerEntryDescription to set.
434         */
435        public void setTransactionLedgerEntryDescription(String transactionLedgerEntryDescription) {
436            this.transactionLedgerEntryDescription = transactionLedgerEntryDescription;
437        }
438    
439        /**
440         * Gets the transactionLedgerEntryAmount
441         * 
442         * @return Returns the transactionLedgerEntryAmount
443         */
444        public KualiDecimal getTransactionLedgerEntryAmount() {
445            return transactionLedgerEntryAmount;
446        }
447    
448        /**
449         * Sets the transactionLedgerEntryAmount
450         * 
451         * @param transactionLedgerEntryAmount The transactionLedgerEntryAmount to set.
452         */
453        public void setTransactionLedgerEntryAmount(KualiDecimal transactionLedgerEntryAmount) {
454            this.transactionLedgerEntryAmount = transactionLedgerEntryAmount;
455        }
456    
457        /**
458         * Gets the transactionDebitCreditCode
459         * 
460         * @return Returns the transactionDebitCreditCode
461         */
462        public String getTransactionDebitCreditCode() {
463            return transactionDebitCreditCode;
464        }
465    
466        /**
467         * Sets the transactionDebitCreditCode
468         * 
469         * @param transactionDebitCreditCode The transactionDebitCreditCode to set.
470         */
471        public void setTransactionDebitCreditCode(String transactionDebitCreditCode) {
472            this.transactionDebitCreditCode = transactionDebitCreditCode;
473        }
474    
475        /**
476         * Gets the transactionDate
477         * 
478         * @return Returns the transactionDate
479         */
480        public Date getTransactionDate() {
481            return transactionDate;
482        }
483    
484        /**
485         * Sets the transactionDate
486         * 
487         * @param transactionDate The transactionDate to set.
488         */
489        public void setTransactionDate(Date transactionDate) {
490            this.transactionDate = transactionDate;
491        }
492    
493        /**
494         * Gets the organizationDocumentNumber
495         * 
496         * @return Returns the organizationDocumentNumber
497         */
498        public String getOrganizationDocumentNumber() {
499            return organizationDocumentNumber;
500        }
501    
502        /**
503         * Sets the organizationDocumentNumber
504         * 
505         * @param organizationDocumentNumber The organizationDocumentNumber to set.
506         */
507        public void setOrganizationDocumentNumber(String organizationDocumentNumber) {
508            this.organizationDocumentNumber = organizationDocumentNumber;
509        }
510    
511        /**
512         * Gets the organizationReferenceId
513         * 
514         * @return Returns the organizationReferenceId
515         */
516        public String getOrganizationReferenceId() {
517            return organizationReferenceId;
518        }
519    
520        /**
521         * Sets the organizationReferenceId
522         * 
523         * @param organizationReferenceId The organizationReferenceId to set.
524         */
525        public void setOrganizationReferenceId(String organizationReferenceId) {
526            this.organizationReferenceId = organizationReferenceId;
527        }
528    
529        /**
530         * Gets the referenceFinancialDocumentTypeCode
531         * 
532         * @return Returns the referenceFinancialDocumentTypeCode
533         */
534        public String getReferenceFinancialDocumentTypeCode() {
535            return referenceFinancialDocumentTypeCode;
536        }
537    
538        /**
539         * Sets the referenceFinancialDocumentTypeCode
540         * 
541         * @param referenceFinancialDocumentTypeCode The referenceFinancialDocumentTypeCode to set.
542         */
543        public void setReferenceFinancialDocumentTypeCode(String referenceFinancialDocumentTypeCode) {
544            this.referenceFinancialDocumentTypeCode = referenceFinancialDocumentTypeCode;
545        }
546    
547        /**
548         * Gets the referenceFinancialSystemOriginationCode
549         * 
550         * @return Returns the referenceFinancialSystemOriginationCode
551         */
552        public String getReferenceFinancialSystemOriginationCode() {
553            return referenceFinancialSystemOriginationCode;
554        }
555    
556        /**
557         * Sets the referenceFinancialSystemOriginationCode
558         * 
559         * @param referenceFinancialSystemOriginationCode The referenceFinancialSystemOriginationCode to set.
560         */
561        public void setReferenceFinancialSystemOriginationCode(String referenceFinancialSystemOriginationCode) {
562            this.referenceFinancialSystemOriginationCode = referenceFinancialSystemOriginationCode;
563        }
564    
565        /**
566         * Gets the referenceFinancialDocumentNumber
567         * 
568         * @return Returns the referenceFinancialDocumentNumber
569         */
570        public String getReferenceFinancialDocumentNumber() {
571            return referenceFinancialDocumentNumber;
572        }
573    
574        /**
575         * Sets the referenceFinancialDocumentNumber
576         * 
577         * @param referenceFinancialDocumentNumber The referenceFinancialDocumentNumber to set.
578         */
579        public void setReferenceFinancialDocumentNumber(String referenceFinancialDocumentNumber) {
580            this.referenceFinancialDocumentNumber = referenceFinancialDocumentNumber;
581        }
582    
583        /**
584         * Gets the financialDocumentReversalDate
585         * 
586         * @return Returns the financialDocumentReversalDate
587         */
588        public Date getFinancialDocumentReversalDate() {
589            return financialDocumentReversalDate;
590        }
591    
592        /**
593         * Sets the financialDocumentReversalDate
594         * 
595         * @param financialDocumentReversalDate The financialDocumentReversalDate to set.
596         */
597        public void setFinancialDocumentReversalDate(Date financialDocumentReversalDate) {
598            this.financialDocumentReversalDate = financialDocumentReversalDate;
599        }
600    
601        /**
602         * Gets the transactionEncumbranceUpdateCode
603         * 
604         * @return Returns the transactionEncumbranceUpdateCode
605         */
606        public String getTransactionEncumbranceUpdateCode() {
607            return transactionEncumbranceUpdateCode;
608        }
609    
610        /**
611         * Sets the transactionEncumbranceUpdateCode
612         * 
613         * @param transactionEncumbranceUpdateCode The transactionEncumbranceUpdateCode to set.
614         */
615        public void setTransactionEncumbranceUpdateCode(String transactionEncumbranceUpdateCode) {
616            this.transactionEncumbranceUpdateCode = transactionEncumbranceUpdateCode;
617        }
618    
619        /**
620         * Gets the transactionPostingDate
621         * 
622         * @return Returns the transactionPostingDate
623         */
624        public Date getTransactionPostingDate() {
625            return transactionPostingDate;
626        }
627    
628        /**
629         * Sets the transactionPostingDate
630         * 
631         * @param transactionPostingDate The transactionPostingDate to set.
632         */
633        public void setTransactionPostingDate(Date transactionPostingDate) {
634            this.transactionPostingDate = transactionPostingDate;
635        }
636    
637        /**
638         * Gets the payPeriodEndDate
639         * 
640         * @return Returns the payPeriodEndDate
641         */
642        public Date getPayPeriodEndDate() {
643            return payPeriodEndDate;
644        }
645    
646        /**
647         * Sets the payPeriodEndDate
648         * 
649         * @param payPeriodEndDate The payPeriodEndDate to set.
650         */
651        public void setPayPeriodEndDate(Date payPeriodEndDate) {
652            this.payPeriodEndDate = payPeriodEndDate;
653        }
654    
655        /**
656         * Gets the transactionTotalHours
657         * 
658         * @return Returns the transactionTotalHours
659         */
660        public BigDecimal getTransactionTotalHours() {
661            return transactionTotalHours;
662        }
663    
664        /**
665         * Sets the transactionTotalHours
666         * 
667         * @param transactionTotalHours The transactionTotalHours to set.
668         */
669        public void setTransactionTotalHours(BigDecimal transactionTotalHours) {
670            this.transactionTotalHours = transactionTotalHours;
671        }
672    
673        /**
674         * Gets the payrollEndDateFiscalYear
675         * 
676         * @return Returns the payrollEndDateFiscalYear
677         */
678        public Integer getPayrollEndDateFiscalYear() {
679            return payrollEndDateFiscalYear;
680        }
681    
682        /**
683         * Sets the payrollEndDateFiscalYear
684         * 
685         * @param payrollEndDateFiscalYear The payrollEndDateFiscalYear to set.
686         */
687        public void setPayrollEndDateFiscalYear(Integer payrollEndDateFiscalYear) {
688            this.payrollEndDateFiscalYear = payrollEndDateFiscalYear;
689        }
690    
691        /**
692         * Gets the payrollEndDateFiscalPeriodCode
693         * 
694         * @return Returns the payrollEndDateFiscalPeriodCode
695         */
696        public String getPayrollEndDateFiscalPeriodCode() {
697            return payrollEndDateFiscalPeriodCode;
698        }
699    
700        /**
701         * Sets the payrollEndDateFiscalPeriodCode
702         * 
703         * @param payrollEndDateFiscalPeriodCode The payrollEndDateFiscalPeriodCode to set.
704         */
705        public void setPayrollEndDateFiscalPeriodCode(String payrollEndDateFiscalPeriodCode) {
706            this.payrollEndDateFiscalPeriodCode = payrollEndDateFiscalPeriodCode;
707        }
708    
709        /**
710         * Gets the emplid
711         * 
712         * @return Returns the emplid
713         */
714        public String getEmplid() {
715            return emplid;
716        }
717    
718        /**
719         * Sets the emplid
720         * 
721         * @param emplid The emplid to set.
722         */
723        public void setEmplid(String emplid) {
724            this.emplid = emplid;
725        }
726    
727        /**
728         * Gets the employeeRecord
729         * 
730         * @return Returns the employeeRecord
731         */
732        public Integer getEmployeeRecord() {
733            return employeeRecord;
734        }
735    
736        /**
737         * Sets the employeeRecord
738         * 
739         * @param employeeRecord The employeeRecord to set.
740         */
741        public void setEmployeeRecord(Integer employeeRecord) {
742            this.employeeRecord = employeeRecord;
743        }
744    
745        /**
746         * Gets the earnCode
747         * 
748         * @return Returns the earnCode
749         */
750        public String getEarnCode() {
751            return earnCode;
752        }
753    
754        /**
755         * Sets the earnCode
756         * 
757         * @param earnCode The earnCode to set.
758         */
759        public void setEarnCode(String earnCode) {
760            this.earnCode = earnCode;
761        }
762    
763        /**
764         * Gets the payGroup
765         * 
766         * @return Returns the payGroup
767         */
768        public String getPayGroup() {
769            return payGroup;
770        }
771    
772        /**
773         * Sets the payGroup
774         * 
775         * @param payGroup The payGroup to set.
776         */
777        public void setPayGroup(String payGroup) {
778            this.payGroup = payGroup;
779        }
780    
781        /**
782         * Gets the salaryAdministrationPlan
783         * 
784         * @return Returns the salaryAdministrationPlan
785         */
786        public String getSalaryAdministrationPlan() {
787            return salaryAdministrationPlan;
788        }
789    
790        /**
791         * Sets the salaryAdministrationPlan
792         * 
793         * @param salaryAdministrationPlan The salaryAdministrationPlan to set.
794         */
795        public void setSalaryAdministrationPlan(String salaryAdministrationPlan) {
796            this.salaryAdministrationPlan = salaryAdministrationPlan;
797        }
798    
799        /**
800         * Gets the grade
801         * 
802         * @return Returns the grade
803         */
804        public String getGrade() {
805            return grade;
806        }
807    
808        /**
809         * Sets the grade
810         * 
811         * @param grade The grade to set.
812         */
813        public void setGrade(String grade) {
814            this.grade = grade;
815        }
816    
817        /**
818         * Gets the runIdentifier
819         * 
820         * @return Returns the runIdentifier
821         */
822        public String getRunIdentifier() {
823            return runIdentifier;
824        }
825    
826        /**
827         * Sets the runIdentifier
828         * 
829         * @param runIdentifier The runIdentifier to set.
830         */
831        public void setRunIdentifier(String runIdentifier) {
832            this.runIdentifier = runIdentifier;
833        }
834    
835        /**
836         * Gets the laborLedgerOriginalChartOfAccountsCode
837         * 
838         * @return Returns the laborLedgerOriginalChartOfAccountsCode
839         */
840        public String getLaborLedgerOriginalChartOfAccountsCode() {
841            return laborLedgerOriginalChartOfAccountsCode;
842        }
843    
844        /**
845         * Sets the laborLedgerOriginalChartOfAccountsCode
846         * 
847         * @param laborLedgerOriginalChartOfAccountsCode The laborLedgerOriginalChartOfAccountsCode to set.
848         */
849        public void setLaborLedgerOriginalChartOfAccountsCode(String laborLedgerOriginalChartOfAccountsCode) {
850            this.laborLedgerOriginalChartOfAccountsCode = laborLedgerOriginalChartOfAccountsCode;
851        }
852    
853        /**
854         * Gets the laborLedgerOriginalAccountNumber
855         * 
856         * @return Returns the laborLedgerOriginalAccountNumber
857         */
858        public String getLaborLedgerOriginalAccountNumber() {
859            return laborLedgerOriginalAccountNumber;
860        }
861    
862        /**
863         * Sets the laborLedgerOriginalAccountNumber
864         * 
865         * @param laborLedgerOriginalAccountNumber The laborLedgerOriginalAccountNumber to set.
866         */
867        public void setLaborLedgerOriginalAccountNumber(String laborLedgerOriginalAccountNumber) {
868            this.laborLedgerOriginalAccountNumber = laborLedgerOriginalAccountNumber;
869        }
870    
871        /**
872         * Gets the laborLedgerOriginalSubAccountNumber
873         * 
874         * @return Returns the laborLedgerOriginalSubAccountNumber
875         */
876        public String getLaborLedgerOriginalSubAccountNumber() {
877            return laborLedgerOriginalSubAccountNumber;
878        }
879    
880        /**
881         * Sets the laborLedgerOriginalSubAccountNumber
882         * 
883         * @param laborLedgerOriginalSubAccountNumber The laborLedgerOriginalSubAccountNumber to set.
884         */
885        public void setLaborLedgerOriginalSubAccountNumber(String laborLedgerOriginalSubAccountNumber) {
886            this.laborLedgerOriginalSubAccountNumber = laborLedgerOriginalSubAccountNumber;
887        }
888    
889        /**
890         * Gets the laborLedgerOriginalFinancialObjectCode
891         * 
892         * @return Returns the laborLedgerOriginalFinancialObjectCode
893         */
894        public String getLaborLedgerOriginalFinancialObjectCode() {
895            return laborLedgerOriginalFinancialObjectCode;
896        }
897    
898        /**
899         * Sets the laborLedgerOriginalFinancialObjectCode
900         * 
901         * @param laborLedgerOriginalFinancialObjectCode The laborLedgerOriginalFinancialObjectCode to set.
902         */
903        public void setLaborLedgerOriginalFinancialObjectCode(String laborLedgerOriginalFinancialObjectCode) {
904            this.laborLedgerOriginalFinancialObjectCode = laborLedgerOriginalFinancialObjectCode;
905        }
906    
907        /**
908         * Gets the laborLedgerOriginalFinancialSubObjectCode
909         * 
910         * @return Returns the laborLedgerOriginalFinancialSubObjectCode
911         */
912        public String getLaborLedgerOriginalFinancialSubObjectCode() {
913            return laborLedgerOriginalFinancialSubObjectCode;
914        }
915    
916        /**
917         * Sets the laborLedgerOriginalFinancialSubObjectCode
918         * 
919         * @param laborLedgerOriginalFinancialSubObjectCode The laborLedgerOriginalFinancialSubObjectCode to set.
920         */
921        public void setLaborLedgerOriginalFinancialSubObjectCode(String laborLedgerOriginalFinancialSubObjectCode) {
922            this.laborLedgerOriginalFinancialSubObjectCode = laborLedgerOriginalFinancialSubObjectCode;
923        }
924    
925        /**
926         * Gets the hrmsCompany
927         * 
928         * @return Returns the hrmsCompany
929         */
930        public String getHrmsCompany() {
931            return hrmsCompany;
932        }
933    
934        /**
935         * Sets the hrmsCompany
936         * 
937         * @param hrmsCompany The hrmsCompany to set.
938         */
939        public void setHrmsCompany(String hrmsCompany) {
940            this.hrmsCompany = hrmsCompany;
941        }
942    
943        /**
944         * Gets the setid
945         * 
946         * @return Returns the setid
947         */
948        public String getSetid() {
949            return setid;
950        }
951    
952        /**
953         * Sets the setid
954         * 
955         * @param setid The setid to set.
956         */
957        public void setSetid(String setid) {
958            this.setid = setid;
959        }
960    
961        /**
962         * Gets the transactionDateTimeStamp
963         * 
964         * @return Returns the transactionDateTimeStamp
965         */
966        public Timestamp getTransactionDateTimeStamp() {
967            return transactionDateTimeStamp;
968        }
969    
970        /**
971         * Sets the transactionDateTimeStamp
972         * 
973         * @param transactionDateTimeStamp The transactionDateTimeStamp to set.
974         */
975        public void setTransactionDateTimeStamp(Timestamp transactionDateTimeStamp) {
976            this.transactionDateTimeStamp = transactionDateTimeStamp;
977        }
978    
979        /**
980         * Gets the financialObject
981         * 
982         * @return Returns the financialObject
983         */
984        public ObjectCode getFinancialObject() {
985            return financialObject;
986        }
987    
988        /**
989         * Sets the financialObject
990         * 
991         * @param financialObject The financialObject to set.
992         */
993        @Deprecated
994        public void setFinancialObject(ObjectCode financialObject) {
995            this.financialObject = financialObject;
996        }
997    
998        /**
999         * Gets the chartOfAccounts
1000         * 
1001         * @return Returns the chartOfAccounts
1002         */
1003        public Chart getChartOfAccounts() {
1004            return chartOfAccounts;
1005        }
1006    
1007        /**
1008         * Sets the chartOfAccounts
1009         * 
1010         * @param chartOfAccounts The chartOfAccounts to set.
1011         */
1012        @Deprecated
1013        public void setChartOfAccounts(Chart chartOfAccounts) {
1014            this.chartOfAccounts = chartOfAccounts;
1015        }
1016    
1017        /**
1018         * Gets the account
1019         * 
1020         * @return Returns the account
1021         */
1022        public Account getAccount() {
1023            return account;
1024        }
1025    
1026        /**
1027         * Sets the account
1028         * 
1029         * @param account The account to set.
1030         */
1031        @Deprecated
1032        public void setAccount(Account account) {
1033            this.account = account;
1034        }
1035    
1036        /**
1037         * Gets the universityFiscalPeriod
1038         * 
1039         * @return Returns the universityFiscalPeriod.
1040         */
1041        public AccountingPeriod getUniversityFiscalPeriod() {
1042            return universityFiscalPeriod;
1043        }
1044    
1045        /**
1046         * Sets the universityFiscalPeriod
1047         * 
1048         * @param universityFiscalPeriod The universityFiscalPeriod to set.
1049         */
1050        @Deprecated
1051        public void setUniversityFiscalPeriod(AccountingPeriod universityFiscalPeriod) {
1052            this.universityFiscalPeriod = universityFiscalPeriod;
1053        }
1054    
1055        /**
1056         * Gets the balanceType
1057         * 
1058         * @return Returns the balanceType.
1059         */
1060        public BalanceType getBalanceType() {
1061            return balanceType;
1062        }
1063    
1064        /**
1065         * Sets the balanceType
1066         * 
1067         * @param balanceType The balanceType to set.
1068         */
1069        @Deprecated
1070        public void setBalanceType(BalanceType balanceType) {
1071            this.balanceType = balanceType;
1072        }
1073    
1074        /**
1075         * Gets the financialSystemDocumentTypeCode attribute. 
1076         * @return Returns the financialSystemDocumentTypeCode.
1077         */
1078        public DocumentTypeEBO getFinancialSystemDocumentTypeCode() {
1079            return financialSystemDocumentTypeCode = SpringContext.getBean(KEWModuleService.class).retrieveExternalizableBusinessObjectIfNecessary(this, financialSystemDocumentTypeCode, "financialSystemDocumentTypeCode");
1080        }
1081    
1082        /**
1083         * Gets the referenceFinancialSystemDocumentTypeCode attribute. 
1084         * @return Returns the referenceFinancialSystemDocumentTypeCode.
1085         */
1086        public DocumentTypeEBO getReferenceFinancialSystemDocumentTypeCode() {
1087            return referenceFinancialSystemDocumentTypeCode = SpringContext.getBean(KEWModuleService.class).retrieveExternalizableBusinessObjectIfNecessary(this, referenceFinancialSystemDocumentTypeCode, "referenceFinancialSystemDocumentTypeCode");
1088        }
1089    
1090        /**
1091         * Gets the financialObjectType
1092         * 
1093         * @return Returns the financialObjectType.
1094         */
1095        public ObjectType getFinancialObjectType() {
1096            return financialObjectType;
1097        }
1098    
1099        /**
1100         * Sets the financialObjectType
1101         * 
1102         * @param financialObjectType The financialObjectType to set.
1103         */
1104        @Deprecated
1105        public void setFinancialObjectType(ObjectType financialObjectType) {
1106            this.financialObjectType = financialObjectType;
1107        }
1108    
1109        /**
1110         * Gets the financialSubObject
1111         * 
1112         * @return Returns the financialSubObject.
1113         */
1114        public SubObjectCode getFinancialSubObject() {
1115            return financialSubObject;
1116        }
1117    
1118        /**
1119         * Sets the financialSubObject
1120         * 
1121         * @param financialSubObject The financialSubObject to set.
1122         */
1123        @Deprecated
1124        public void setFinancialSubObject(SubObjectCode financialSubObject) {
1125            this.financialSubObject = financialSubObject;
1126        }
1127    
1128        /**
1129         * Gets the option
1130         * 
1131         * @return Returns the option.
1132         */
1133        public SystemOptions getOption() {
1134            return option;
1135        }
1136    
1137        /**
1138         * Sets the option
1139         * 
1140         * @param option The option to set.
1141         */
1142        @Deprecated
1143        public void setOption(SystemOptions option) {
1144            this.option = option;
1145        }
1146    
1147        /**
1148         * Gets the payrollEndDateFiscalPeriod
1149         * 
1150         * @return Returns the payrollEndDateFiscalPeriod.
1151         */
1152        public AccountingPeriod getPayrollEndDateFiscalPeriod() {
1153            return payrollEndDateFiscalPeriod;
1154        }
1155    
1156        /**
1157         * Sets the payrollEndDateFiscalPeriod
1158         * 
1159         * @param payrollEndDateFiscalPeriod The payrollEndDateFiscalPeriod to set.
1160         */
1161        @Deprecated
1162        public void setPayrollEndDateFiscalPeriod(AccountingPeriod payrollEndDateFiscalPeriod) {
1163            this.payrollEndDateFiscalPeriod = payrollEndDateFiscalPeriod;
1164        }
1165    
1166        /**
1167         * Gets the project
1168         * 
1169         * @return Returns the project.
1170         */
1171        public ProjectCode getProject() {
1172            return project;
1173        }
1174    
1175        /**
1176         * Sets the project
1177         * 
1178         * @param project The project to set.
1179         */
1180        @Deprecated
1181        public void setProject(ProjectCode project) {
1182            this.project = project;
1183        }
1184    
1185        /**
1186         * Gets the referenceOriginationCode
1187         * 
1188         * @return Returns the referenceOriginationCode.
1189         */
1190        public OriginationCode getReferenceOriginationCode() {
1191            return referenceOriginationCode;
1192        }
1193    
1194        /**
1195         * Sets the referenceOriginationCode
1196         * 
1197         * @param referenceOriginationCode The referenceOriginationCode to set.
1198         */
1199        @Deprecated
1200        public void setReferenceOriginationCode(OriginationCode referenceOriginationCode) {
1201            this.referenceOriginationCode = referenceOriginationCode;
1202        }
1203    
1204        /**
1205         * Gets the subAccount
1206         * 
1207         * @return Returns the subAccount.
1208         */
1209        public SubAccount getSubAccount() {
1210            return subAccount;
1211        }
1212    
1213        /**
1214         * Sets the subAccount
1215         * 
1216         * @param subAccount The subAccount to set.
1217         */
1218        @Deprecated
1219        public void setSubAccount(SubAccount subAccount) {
1220            this.subAccount = subAccount;
1221        }
1222    
1223        /**
1224         * Gets the financialSystemOrigination
1225         * 
1226         * @return Returns the financialSystemOrigination.
1227         */
1228        public OriginationCode getFinancialSystemOrigination() {
1229            return financialSystemOrigination;
1230        }
1231    
1232        /**
1233         * Sets the financialSystemOrigination
1234         * 
1235         * @param financialSystemOrigination The financialSystemOrigination to set.
1236         */
1237        @Deprecated
1238        public void setFinancialSystemOrigination(OriginationCode financialSystemOrigination) {
1239            this.financialSystemOrigination = financialSystemOrigination;
1240        }
1241    
1242        /**
1243         * @see org.kuali.kfs.bo.LaborLedgerEntry#getLaborLedgerObject()
1244         */
1245        public LaborLedgerObject getLaborLedgerObject() {
1246            return this.laborObject;
1247        }
1248    
1249        /**
1250         * @see org.kuali.kfs.bo.LaborLedgerEntry#setLaborLedgerObject(org.kuali.kfs.bo.LaborLedgerObject)
1251         */
1252        @Deprecated
1253        public void setLaborLedgerObject(LaborLedgerObject laborLedgerObject) {
1254            this.laborObject = (LaborObject) laborLedgerObject;
1255        }
1256    
1257        /**
1258         * Gets the laborObject attribute.
1259         * 
1260         * @return Returns the laborObject.
1261         */
1262        public LaborObject getLaborObject() {
1263            return laborObject;
1264        }
1265    
1266        /**
1267         * Sets the laborObject attribute value.
1268         * 
1269         * @param laborObject The laborObject to set.
1270         */
1271        @Deprecated
1272        public void setLaborObject(LaborObject laborObject) {
1273            this.laborObject = laborObject;
1274        }
1275    
1276        /**
1277         * construct the key list of the business object.
1278         * 
1279         * @see org.kuali.rice.kns.bo.BusinessObjectBase#toStringMapper()
1280         */
1281        @SuppressWarnings("unchecked")
1282        protected LinkedHashMap toStringMapper() {
1283            LinkedHashMap m = new LinkedHashMap();
1284            if (this.universityFiscalYear != null) {
1285                m.put("universityFiscalYear", this.universityFiscalYear.toString());
1286            }
1287            m.put("chartOfAccountsCode", this.chartOfAccountsCode);
1288            m.put("accountNumber", this.accountNumber);
1289            m.put("subAccountNumber", this.subAccountNumber);
1290            m.put("financialObjectCode", this.financialObjectCode);
1291            m.put("financialSubObjectCode", this.financialSubObjectCode);
1292            m.put("financialBalanceTypeCode", this.financialBalanceTypeCode);
1293            m.put("financialObjectTypeCode", this.financialObjectTypeCode);
1294            m.put("universityFiscalPeriodCode", this.universityFiscalPeriodCode);
1295            m.put("financialDocumentTypeCode", this.financialDocumentTypeCode);
1296            m.put(KFSPropertyConstants.DOCUMENT_NUMBER, this.documentNumber);
1297            if (this.transactionLedgerEntrySequenceNumber != null) {
1298                m.put("transactionLedgerEntrySequenceNumber", this.transactionLedgerEntrySequenceNumber.toString());
1299            }
1300    
1301            return m;
1302        }
1303    }