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.bc.businessobject;
018    
019    import java.util.LinkedHashMap;
020    
021    import org.kuali.kfs.coa.businessobject.Account;
022    import org.kuali.kfs.coa.businessobject.BalanceType;
023    import org.kuali.kfs.coa.businessobject.Chart;
024    import org.kuali.kfs.coa.businessobject.ObjectCode;
025    import org.kuali.kfs.coa.businessobject.ObjectType;
026    import org.kuali.kfs.coa.businessobject.SubAccount;
027    import org.kuali.kfs.coa.businessobject.SubObjectCode;
028    import org.kuali.kfs.gl.businessobject.Balance;
029    import org.kuali.kfs.sys.KFSPropertyConstants;
030    import org.kuali.rice.kns.bo.PersistableBusinessObjectBase;
031    import org.kuali.rice.kns.util.KualiInteger;
032    
033    /**
034     * 
035     */
036    public class BudgetConstructionMonthly extends PersistableBusinessObjectBase {
037    
038        private String documentNumber;
039        private Integer universityFiscalYear;
040        private String chartOfAccountsCode;
041        private String accountNumber;
042        private String subAccountNumber;
043        private String financialObjectCode;
044        private String financialSubObjectCode;
045        private String financialBalanceTypeCode;
046        private String financialObjectTypeCode;
047        private KualiInteger financialDocumentMonth1LineAmount;
048        private KualiInteger financialDocumentMonth2LineAmount;
049        private KualiInteger financialDocumentMonth3LineAmount;
050        private KualiInteger financialDocumentMonth4LineAmount;
051        private KualiInteger financialDocumentMonth5LineAmount;
052        private KualiInteger financialDocumentMonth6LineAmount;
053        private KualiInteger financialDocumentMonth7LineAmount;
054        private KualiInteger financialDocumentMonth8LineAmount;
055        private KualiInteger financialDocumentMonth9LineAmount;
056        private KualiInteger financialDocumentMonth10LineAmount;
057        private KualiInteger financialDocumentMonth11LineAmount;
058        private KualiInteger financialDocumentMonth12LineAmount;
059    
060        private PendingBudgetConstructionGeneralLedger pendingBudgetConstructionGeneralLedger;
061        private Balance financialBalance;
062        private ObjectCode financialObject;
063        private Account account;
064        private Chart chartOfAccounts;
065        private SubAccount subAccount;
066        private SubObjectCode financialSubObject;
067        private BalanceType balanceType;
068        private ObjectType objectType;
069    
070        /**
071         * Default constructor.
072         */
073        public BudgetConstructionMonthly() {
074    
075        }
076    
077        /**
078         * Gets the documentNumber attribute.
079         * 
080         * @return Returns the documentNumber
081         */
082        public String getDocumentNumber() {
083            return documentNumber;
084        }
085    
086        /**
087         * Sets the documentNumber attribute.
088         * 
089         * @param documentNumber The documentNumber to set.
090         */
091        public void setDocumentNumber(String documentNumber) {
092            this.documentNumber = documentNumber;
093        }
094    
095    
096        /**
097         * Gets the universityFiscalYear attribute.
098         * 
099         * @return Returns the universityFiscalYear
100         */
101        public Integer getUniversityFiscalYear() {
102            return universityFiscalYear;
103        }
104    
105        /**
106         * Sets the universityFiscalYear attribute.
107         * 
108         * @param universityFiscalYear The universityFiscalYear to set.
109         */
110        public void setUniversityFiscalYear(Integer universityFiscalYear) {
111            this.universityFiscalYear = universityFiscalYear;
112        }
113    
114    
115        /**
116         * Gets the chartOfAccountsCode attribute.
117         * 
118         * @return Returns the chartOfAccountsCode
119         */
120        public String getChartOfAccountsCode() {
121            return chartOfAccountsCode;
122        }
123    
124        /**
125         * Sets the chartOfAccountsCode attribute.
126         * 
127         * @param chartOfAccountsCode The chartOfAccountsCode to set.
128         */
129        public void setChartOfAccountsCode(String chartOfAccountsCode) {
130            this.chartOfAccountsCode = chartOfAccountsCode;
131        }
132    
133    
134        /**
135         * Gets the accountNumber attribute.
136         * 
137         * @return Returns the accountNumber
138         */
139        public String getAccountNumber() {
140            return accountNumber;
141        }
142    
143        /**
144         * Sets the accountNumber attribute.
145         * 
146         * @param accountNumber The accountNumber to set.
147         */
148        public void setAccountNumber(String accountNumber) {
149            this.accountNumber = accountNumber;
150        }
151    
152    
153        /**
154         * Gets the subAccountNumber attribute.
155         * 
156         * @return Returns the subAccountNumber
157         */
158        public String getSubAccountNumber() {
159            return subAccountNumber;
160        }
161    
162        /**
163         * Sets the subAccountNumber attribute.
164         * 
165         * @param subAccountNumber The subAccountNumber to set.
166         */
167        public void setSubAccountNumber(String subAccountNumber) {
168            this.subAccountNumber = subAccountNumber;
169        }
170    
171    
172        /**
173         * Gets the financialObjectCode attribute.
174         * 
175         * @return Returns the financialObjectCode
176         */
177        public String getFinancialObjectCode() {
178            return financialObjectCode;
179        }
180    
181        /**
182         * Sets the financialObjectCode attribute.
183         * 
184         * @param financialObjectCode The financialObjectCode to set.
185         */
186        public void setFinancialObjectCode(String financialObjectCode) {
187            this.financialObjectCode = financialObjectCode;
188        }
189    
190    
191        /**
192         * Gets the financialSubObjectCode attribute.
193         * 
194         * @return Returns the financialSubObjectCode
195         */
196        public String getFinancialSubObjectCode() {
197            return financialSubObjectCode;
198        }
199    
200        /**
201         * Sets the financialSubObjectCode attribute.
202         * 
203         * @param financialSubObjectCode The financialSubObjectCode to set.
204         */
205        public void setFinancialSubObjectCode(String financialSubObjectCode) {
206            this.financialSubObjectCode = financialSubObjectCode;
207        }
208    
209    
210        /**
211         * Gets the financialBalanceTypeCode attribute.
212         * 
213         * @return Returns the financialBalanceTypeCode
214         */
215        public String getFinancialBalanceTypeCode() {
216            return financialBalanceTypeCode;
217        }
218    
219        /**
220         * Sets the financialBalanceTypeCode attribute.
221         * 
222         * @param financialBalanceTypeCode The financialBalanceTypeCode to set.
223         */
224        public void setFinancialBalanceTypeCode(String financialBalanceTypeCode) {
225            this.financialBalanceTypeCode = financialBalanceTypeCode;
226        }
227    
228    
229        /**
230         * Gets the financialObjectTypeCode attribute.
231         * 
232         * @return Returns the financialObjectTypeCode
233         */
234        public String getFinancialObjectTypeCode() {
235            return financialObjectTypeCode;
236        }
237    
238        /**
239         * Sets the financialObjectTypeCode attribute.
240         * 
241         * @param financialObjectTypeCode The financialObjectTypeCode to set.
242         */
243        public void setFinancialObjectTypeCode(String financialObjectTypeCode) {
244            this.financialObjectTypeCode = financialObjectTypeCode;
245        }
246    
247    
248        /**
249         * Gets the financialDocumentMonth10LineAmount attribute.
250         * 
251         * @return Returns the financialDocumentMonth10LineAmount.
252         */
253        public KualiInteger getFinancialDocumentMonth10LineAmount() {
254            return financialDocumentMonth10LineAmount;
255        }
256    
257        /**
258         * Sets the financialDocumentMonth10LineAmount attribute value.
259         * 
260         * @param financialDocumentMonth10LineAmount The financialDocumentMonth10LineAmount to set.
261         */
262        public void setFinancialDocumentMonth10LineAmount(KualiInteger financialDocumentMonth10LineAmount) {
263            this.financialDocumentMonth10LineAmount = financialDocumentMonth10LineAmount;
264        }
265    
266        /**
267         * Gets the financialDocumentMonth11LineAmount attribute.
268         * 
269         * @return Returns the financialDocumentMonth11LineAmount.
270         */
271        public KualiInteger getFinancialDocumentMonth11LineAmount() {
272            return financialDocumentMonth11LineAmount;
273        }
274    
275        /**
276         * Sets the financialDocumentMonth11LineAmount attribute value.
277         * 
278         * @param financialDocumentMonth11LineAmount The financialDocumentMonth11LineAmount to set.
279         */
280        public void setFinancialDocumentMonth11LineAmount(KualiInteger financialDocumentMonth11LineAmount) {
281            this.financialDocumentMonth11LineAmount = financialDocumentMonth11LineAmount;
282        }
283    
284        /**
285         * Gets the financialDocumentMonth12LineAmount attribute.
286         * 
287         * @return Returns the financialDocumentMonth12LineAmount.
288         */
289        public KualiInteger getFinancialDocumentMonth12LineAmount() {
290            return financialDocumentMonth12LineAmount;
291        }
292    
293        /**
294         * Sets the financialDocumentMonth12LineAmount attribute value.
295         * 
296         * @param financialDocumentMonth12LineAmount The financialDocumentMonth12LineAmount to set.
297         */
298        public void setFinancialDocumentMonth12LineAmount(KualiInteger financialDocumentMonth12LineAmount) {
299            this.financialDocumentMonth12LineAmount = financialDocumentMonth12LineAmount;
300        }
301    
302        /**
303         * Gets the financialDocumentMonth1LineAmount attribute.
304         * 
305         * @return Returns the financialDocumentMonth1LineAmount.
306         */
307        public KualiInteger getFinancialDocumentMonth1LineAmount() {
308            return financialDocumentMonth1LineAmount;
309        }
310    
311        /**
312         * Sets the financialDocumentMonth1LineAmount attribute value.
313         * 
314         * @param financialDocumentMonth1LineAmount The financialDocumentMonth1LineAmount to set.
315         */
316        public void setFinancialDocumentMonth1LineAmount(KualiInteger financialDocumentMonth1LineAmount) {
317            this.financialDocumentMonth1LineAmount = financialDocumentMonth1LineAmount;
318        }
319    
320        /**
321         * Gets the financialDocumentMonth2LineAmount attribute.
322         * 
323         * @return Returns the financialDocumentMonth2LineAmount.
324         */
325        public KualiInteger getFinancialDocumentMonth2LineAmount() {
326            return financialDocumentMonth2LineAmount;
327        }
328    
329        /**
330         * Sets the financialDocumentMonth2LineAmount attribute value.
331         * 
332         * @param financialDocumentMonth2LineAmount The financialDocumentMonth2LineAmount to set.
333         */
334        public void setFinancialDocumentMonth2LineAmount(KualiInteger financialDocumentMonth2LineAmount) {
335            this.financialDocumentMonth2LineAmount = financialDocumentMonth2LineAmount;
336        }
337    
338        /**
339         * Gets the financialDocumentMonth3LineAmount attribute.
340         * 
341         * @return Returns the financialDocumentMonth3LineAmount.
342         */
343        public KualiInteger getFinancialDocumentMonth3LineAmount() {
344            return financialDocumentMonth3LineAmount;
345        }
346    
347        /**
348         * Sets the financialDocumentMonth3LineAmount attribute value.
349         * 
350         * @param financialDocumentMonth3LineAmount The financialDocumentMonth3LineAmount to set.
351         */
352        public void setFinancialDocumentMonth3LineAmount(KualiInteger financialDocumentMonth3LineAmount) {
353            this.financialDocumentMonth3LineAmount = financialDocumentMonth3LineAmount;
354        }
355    
356        /**
357         * Gets the financialDocumentMonth4LineAmount attribute.
358         * 
359         * @return Returns the financialDocumentMonth4LineAmount.
360         */
361        public KualiInteger getFinancialDocumentMonth4LineAmount() {
362            return financialDocumentMonth4LineAmount;
363        }
364    
365        /**
366         * Sets the financialDocumentMonth4LineAmount attribute value.
367         * 
368         * @param financialDocumentMonth4LineAmount The financialDocumentMonth4LineAmount to set.
369         */
370        public void setFinancialDocumentMonth4LineAmount(KualiInteger financialDocumentMonth4LineAmount) {
371            this.financialDocumentMonth4LineAmount = financialDocumentMonth4LineAmount;
372        }
373    
374        /**
375         * Gets the financialDocumentMonth5LineAmount attribute.
376         * 
377         * @return Returns the financialDocumentMonth5LineAmount.
378         */
379        public KualiInteger getFinancialDocumentMonth5LineAmount() {
380            return financialDocumentMonth5LineAmount;
381        }
382    
383        /**
384         * Sets the financialDocumentMonth5LineAmount attribute value.
385         * 
386         * @param financialDocumentMonth5LineAmount The financialDocumentMonth5LineAmount to set.
387         */
388        public void setFinancialDocumentMonth5LineAmount(KualiInteger financialDocumentMonth5LineAmount) {
389            this.financialDocumentMonth5LineAmount = financialDocumentMonth5LineAmount;
390        }
391    
392        /**
393         * Gets the financialDocumentMonth6LineAmount attribute.
394         * 
395         * @return Returns the financialDocumentMonth6LineAmount.
396         */
397        public KualiInteger getFinancialDocumentMonth6LineAmount() {
398            return financialDocumentMonth6LineAmount;
399        }
400    
401        /**
402         * Sets the financialDocumentMonth6LineAmount attribute value.
403         * 
404         * @param financialDocumentMonth6LineAmount The financialDocumentMonth6LineAmount to set.
405         */
406        public void setFinancialDocumentMonth6LineAmount(KualiInteger financialDocumentMonth6LineAmount) {
407            this.financialDocumentMonth6LineAmount = financialDocumentMonth6LineAmount;
408        }
409    
410        /**
411         * Gets the financialDocumentMonth7LineAmount attribute.
412         * 
413         * @return Returns the financialDocumentMonth7LineAmount.
414         */
415        public KualiInteger getFinancialDocumentMonth7LineAmount() {
416            return financialDocumentMonth7LineAmount;
417        }
418    
419        /**
420         * Sets the financialDocumentMonth7LineAmount attribute value.
421         * 
422         * @param financialDocumentMonth7LineAmount The financialDocumentMonth7LineAmount to set.
423         */
424        public void setFinancialDocumentMonth7LineAmount(KualiInteger financialDocumentMonth7LineAmount) {
425            this.financialDocumentMonth7LineAmount = financialDocumentMonth7LineAmount;
426        }
427    
428        /**
429         * Gets the financialDocumentMonth8LineAmount attribute.
430         * 
431         * @return Returns the financialDocumentMonth8LineAmount.
432         */
433        public KualiInteger getFinancialDocumentMonth8LineAmount() {
434            return financialDocumentMonth8LineAmount;
435        }
436    
437        /**
438         * Sets the financialDocumentMonth8LineAmount attribute value.
439         * 
440         * @param financialDocumentMonth8LineAmount The financialDocumentMonth8LineAmount to set.
441         */
442        public void setFinancialDocumentMonth8LineAmount(KualiInteger financialDocumentMonth8LineAmount) {
443            this.financialDocumentMonth8LineAmount = financialDocumentMonth8LineAmount;
444        }
445    
446        /**
447         * Gets the financialDocumentMonth9LineAmount attribute.
448         * 
449         * @return Returns the financialDocumentMonth9LineAmount.
450         */
451        public KualiInteger getFinancialDocumentMonth9LineAmount() {
452            return financialDocumentMonth9LineAmount;
453        }
454    
455        /**
456         * Sets the financialDocumentMonth9LineAmount attribute value.
457         * 
458         * @param financialDocumentMonth9LineAmount The financialDocumentMonth9LineAmount to set.
459         */
460        public void setFinancialDocumentMonth9LineAmount(KualiInteger financialDocumentMonth9LineAmount) {
461            this.financialDocumentMonth9LineAmount = financialDocumentMonth9LineAmount;
462        }
463    
464        /**
465         * Gets the total of all the month line amounts
466         * 
467         * @return Returns the financialDocumentMonth9LineAmount.
468         */
469        public KualiInteger getFinancialDocumentMonthTotalLineAmount() {
470    
471            KualiInteger financialDocumentMonthTotalLineAmount = this.financialDocumentMonth1LineAmount;
472            financialDocumentMonthTotalLineAmount = financialDocumentMonthTotalLineAmount.add(this.financialDocumentMonth2LineAmount);
473            financialDocumentMonthTotalLineAmount = financialDocumentMonthTotalLineAmount.add(this.financialDocumentMonth3LineAmount);
474            financialDocumentMonthTotalLineAmount = financialDocumentMonthTotalLineAmount.add(this.financialDocumentMonth4LineAmount);
475            financialDocumentMonthTotalLineAmount = financialDocumentMonthTotalLineAmount.add(this.financialDocumentMonth5LineAmount);
476            financialDocumentMonthTotalLineAmount = financialDocumentMonthTotalLineAmount.add(this.financialDocumentMonth6LineAmount);
477            financialDocumentMonthTotalLineAmount = financialDocumentMonthTotalLineAmount.add(this.financialDocumentMonth7LineAmount);
478            financialDocumentMonthTotalLineAmount = financialDocumentMonthTotalLineAmount.add(this.financialDocumentMonth8LineAmount);
479            financialDocumentMonthTotalLineAmount = financialDocumentMonthTotalLineAmount.add(this.financialDocumentMonth9LineAmount);
480            financialDocumentMonthTotalLineAmount = financialDocumentMonthTotalLineAmount.add(this.financialDocumentMonth10LineAmount);
481            financialDocumentMonthTotalLineAmount = financialDocumentMonthTotalLineAmount.add(this.financialDocumentMonth11LineAmount);
482            financialDocumentMonthTotalLineAmount = financialDocumentMonthTotalLineAmount.add(this.financialDocumentMonth12LineAmount);
483                
484            return financialDocumentMonthTotalLineAmount;
485        }
486    
487        /**
488         * Gets the pendingBudgetConstructionGeneralLedger attribute.
489         * 
490         * @return Returns the pendingBudgetConstructionGeneralLedger
491         */
492        public PendingBudgetConstructionGeneralLedger getPendingBudgetConstructionGeneralLedger() {
493            return pendingBudgetConstructionGeneralLedger;
494        }
495    
496        /**
497         * Sets the pendingBudgetConstructionGeneralLedger attribute.
498         * 
499         * @param pendingBudgetConstructionGeneralLedger The pendingBudgetConstructionGeneralLedger to set.
500         * @deprecated
501         */
502        public void setPendingBudgetConstructionGeneralLedger(PendingBudgetConstructionGeneralLedger pendingBudgetConstructionGeneralLedger) {
503            this.pendingBudgetConstructionGeneralLedger = pendingBudgetConstructionGeneralLedger;
504        }
505    
506        /**
507         * Gets the financialBalance attribute.
508         * 
509         * @return Returns the financialBalance
510         */
511        public Balance getFinancialBalance() {
512            return financialBalance;
513        }
514    
515        /**
516         * Sets the financialBalance attribute.
517         * 
518         * @param financialBalance The financialBalance to set.
519         * @deprecated
520         */
521        public void setFinancialBalance(Balance financialBalance) {
522            this.financialBalance = financialBalance;
523        }
524    
525        /**
526         * Gets the financialObject attribute.
527         * 
528         * @return Returns the financialObject
529         */
530        public ObjectCode getFinancialObject() {
531            return financialObject;
532        }
533    
534        /**
535         * Sets the financialObject attribute.
536         * 
537         * @param financialObject The financialObject to set.
538         * @deprecated
539         */
540        public void setFinancialObject(ObjectCode financialObject) {
541            this.financialObject = financialObject;
542        }
543    
544        /**
545         * Gets the account attribute.
546         * 
547         * @return Returns the account
548         */
549        public Account getAccount() {
550            return account;
551        }
552    
553        /**
554         * Sets the account attribute.
555         * 
556         * @param account The account to set.
557         * @deprecated
558         */
559        public void setAccount(Account account) {
560            this.account = account;
561        }
562    
563        /**
564         * Gets the chartOfAccounts attribute.
565         * 
566         * @return Returns the chartOfAccounts
567         */
568        public Chart getChartOfAccounts() {
569            return chartOfAccounts;
570        }
571    
572        /**
573         * Sets the chartOfAccounts attribute.
574         * 
575         * @param chartOfAccounts The chartOfAccounts to set.
576         * @deprecated
577         */
578        public void setChartOfAccounts(Chart chartOfAccounts) {
579            this.chartOfAccounts = chartOfAccounts;
580        }
581    
582        /**
583         * Gets the financialSubObject attribute.
584         * 
585         * @return Returns the financialSubObject.
586         */
587        public SubObjectCode getFinancialSubObject() {
588            return financialSubObject;
589        }
590    
591        /**
592         * Sets the financialSubObject attribute value.
593         * 
594         * @param financialSubObject The financialSubObject to set.
595         * @deprecated
596         */
597        public void setFinancialSubObject(SubObjectCode financialSubObject) {
598            this.financialSubObject = financialSubObject;
599        }
600    
601        /**
602         * Gets the subAccount attribute.
603         * 
604         * @return Returns the subAccount.
605         */
606        public SubAccount getSubAccount() {
607            return subAccount;
608        }
609    
610        /**
611         * Sets the subAccount attribute value.
612         * 
613         * @param subAccount The subAccount to set.
614         * @deprecated
615         */
616        public void setSubAccount(SubAccount subAccount) {
617            this.subAccount = subAccount;
618        }
619    
620        /**
621         * Gets the balanceType attribute.
622         * 
623         * @return Returns the balanceType.
624         */
625        public BalanceType getBalanceType() {
626            return balanceType;
627        }
628    
629        /**
630         * Sets the balanceType attribute value.
631         * 
632         * @param balanceType The balanceType to set.
633         */
634        public void setBalanceType(BalanceType balanceType) {
635            this.balanceType = balanceType;
636        }
637    
638        /**
639         * Gets the objectType attribute.
640         * 
641         * @return Returns the objectType.
642         */
643        public ObjectType getObjectType() {
644            return objectType;
645        }
646    
647        /**
648         * Sets the objectType attribute value.
649         * 
650         * @param objectType The objectType to set.
651         */
652        public void setObjectType(ObjectType objectType) {
653            this.objectType = objectType;
654        }
655    
656        /**
657         * @see org.kuali.rice.kns.bo.BusinessObjectBase#toStringMapper()
658         */
659        protected LinkedHashMap toStringMapper() {
660            LinkedHashMap m = new LinkedHashMap();
661            m.put(KFSPropertyConstants.DOCUMENT_NUMBER, this.documentNumber);
662            if (this.universityFiscalYear != null) {
663                m.put("universityFiscalYear", this.universityFiscalYear.toString());
664            }
665            m.put("chartOfAccountsCode", this.chartOfAccountsCode);
666            m.put("accountNumber", this.accountNumber);
667            m.put("subAccountNumber", this.subAccountNumber);
668            m.put("financialObjectCode", this.financialObjectCode);
669            m.put("financialSubObjectCode", this.financialSubObjectCode);
670            m.put("financialBalanceTypeCode", this.financialBalanceTypeCode);
671            m.put("financialObjectTypeCode", this.financialObjectTypeCode);
672            return m;
673        }
674    
675    
676    }