View Javadoc
1   /*
2    * Copyright 2005 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  
17  package org.kuali.ole.fp.businessobject;
18  
19  import java.util.LinkedHashMap;
20  
21  import org.kuali.ole.fp.businessobject.options.TaxIncomeClassValuesFinder;
22  import org.kuali.ole.sys.OLEPropertyConstants;
23  import org.kuali.rice.core.api.util.type.KualiDecimal;
24  import org.kuali.rice.krad.bo.PersistableBusinessObjectBase;
25  
26  /**
27   * This class is used to represent a disbursement voucher non-resident alien tax.
28   */
29  public class DisbursementVoucherNonResidentAlienTax extends PersistableBusinessObjectBase {
30  
31      private String documentNumber;
32      private KualiDecimal federalIncomeTaxPercent;
33      private KualiDecimal stateIncomeTaxPercent;
34      private String incomeClassCode;
35      private String postalCountryCode;
36      private boolean incomeTaxTreatyExemptCode;
37      private boolean foreignSourceIncomeCode;
38      private boolean incomeTaxGrossUpCode;
39      private String referenceFinancialSystemOriginationCode;
40      private String referenceFinancialDocumentNumber;
41      private String financialDocumentAccountingLineText;
42      private String taxNQIId;
43      private boolean taxOtherExemptIndicator;
44      private boolean taxUSAIDPerDiemIndicator;
45      protected KualiDecimal taxSpecialW4Amount;
46  
47      private TaxIncomeClassCode incomeClass;
48  
49      /**
50       * Default no-arg constructor.
51       */
52      public DisbursementVoucherNonResidentAlienTax() {
53  
54      }
55  
56      /**
57       * Gets the documentNumber attribute.
58       * 
59       * @return Returns the documentNumber
60       */
61      public String getDocumentNumber() {
62          return documentNumber;
63      }
64  
65  
66      /**
67       * Sets the documentNumber attribute.
68       * 
69       * @param documentNumber The documentNumber to set.
70       */
71      public void setDocumentNumber(String documentNumber) {
72          this.documentNumber = documentNumber;
73      }
74  
75      /**
76       * Gets the federalIncomeTaxPercent attribute.
77       * 
78       * @return Returns the federalIncomeTaxPercent
79       */
80      public KualiDecimal getFederalIncomeTaxPercent() {
81          return federalIncomeTaxPercent;
82      }
83  
84  
85      /**
86       * Sets the federalIncomeTaxPercent attribute.
87       * 
88       * @param federalIncomeTaxPercent The federalIncomeTaxPercent to set.
89       */
90      public void setFederalIncomeTaxPercent(KualiDecimal federalIncomeTaxPercent) {
91          this.federalIncomeTaxPercent = federalIncomeTaxPercent;
92      }
93  
94      /**
95       * Gets the stateIncomeTaxPercent attribute.
96       * 
97       * @return Returns the stateIncomeTaxPercent
98       */
99      public KualiDecimal getStateIncomeTaxPercent() {
100         return stateIncomeTaxPercent;
101     }
102 
103 
104     /**
105      * Sets the stateIncomeTaxPercent attribute.
106      * 
107      * @param stateIncomeTaxPercent The stateIncomeTaxPercent to set.
108      */
109     public void setStateIncomeTaxPercent(KualiDecimal stateIncomeTaxPercent) {
110         this.stateIncomeTaxPercent = stateIncomeTaxPercent;
111     }
112 
113     /**
114      * Gets the incomeClassCode attribute.
115      * 
116      * @return Returns the incomeClassCode
117      */
118     public String getIncomeClassCode() {
119         return incomeClassCode;
120     }
121 
122 
123     /**
124      * Sets the incomeClassCode attribute.
125      * 
126      * @param incomeClassCode The incomeClassCode to set.
127      */
128     public void setIncomeClassCode(String incomeClassCode) {
129         this.incomeClassCode = incomeClassCode;
130     }
131 
132     /**
133      * Gets the postalCountryCode attribute.
134      * 
135      * @return Returns the postalCountryCode
136      */
137     public String getPostalCountryCode() {
138         return postalCountryCode;
139     }
140 
141 
142     /**
143      * Sets the postalCountryCode attribute.
144      * 
145      * @param postalCountryCode The postalCountryCode to set.
146      */
147     public void setPostalCountryCode(String postalCountryCode) {
148         this.postalCountryCode = postalCountryCode;
149     }
150 
151     /**
152      * Gets the incomeTaxTreatyExemptCode attribute.
153      * 
154      * @return Returns the incomeTaxTreatyExemptCode
155      */
156     public boolean isIncomeTaxTreatyExemptCode() {
157         return incomeTaxTreatyExemptCode;
158     }
159 
160 
161     /**
162      * Sets the incomeTaxTreatyExemptCode attribute.
163      * 
164      * @param incomeTaxTreatyExemptCode The incomeTaxTreatyExemptCode to set.
165      */
166     public void setIncomeTaxTreatyExemptCode(boolean incomeTaxTreatyExemptCode) {
167         this.incomeTaxTreatyExemptCode = incomeTaxTreatyExemptCode;
168     }
169 
170     /**
171      * Gets the foreignSourceIncomeCode attribute.
172      * 
173      * @return Returns the foreignSourceIncomeCode
174      */
175     public boolean isForeignSourceIncomeCode() {
176         return foreignSourceIncomeCode;
177     }
178 
179 
180     /**
181      * Sets the foreignSourceIncomeCode attribute.
182      * 
183      * @param foreignSourceIncomeCode The foreignSourceIncomeCode to set.
184      */
185     public void setForeignSourceIncomeCode(boolean foreignSourceIncomeCode) {
186         this.foreignSourceIncomeCode = foreignSourceIncomeCode;
187     }
188 
189     /**
190      * Gets the incomeTaxGrossUpCode attribute.
191      * 
192      * @return Returns the incomeTaxGrossUpCode
193      */
194     public boolean isIncomeTaxGrossUpCode() {
195         return incomeTaxGrossUpCode;
196     }
197 
198 
199     /**
200      * Sets the incomeTaxGrossUpCode attribute.
201      * 
202      * @param incomeTaxGrossUpCode The incomeTaxGrossUpCode to set.
203      */
204     public void setIncomeTaxGrossUpCode(boolean incomeTaxGrossUpCode) {
205         this.incomeTaxGrossUpCode = incomeTaxGrossUpCode;
206     }
207 
208     /**
209      * Gets the referenceFinancialSystemOriginationCode attribute.
210      * 
211      * @return Returns the referenceFinancialSystemOriginationCode
212      */
213     public String getReferenceFinancialSystemOriginationCode() {
214         return referenceFinancialSystemOriginationCode;
215     }
216 
217 
218     /**
219      * Sets the referenceFinancialSystemOriginationCode attribute.
220      * 
221      * @param referenceFinancialSystemOriginationCode The referenceFinancialSystemOriginationCode to set.
222      */
223     public void setReferenceFinancialSystemOriginationCode(String referenceFinancialSystemOriginationCode) {
224         this.referenceFinancialSystemOriginationCode = referenceFinancialSystemOriginationCode;
225     }
226 
227     /**
228      * Gets the referenceFinancialDocumentNumber attribute.
229      * 
230      * @return Returns the referenceFinancialDocumentNumber
231      */
232     public String getReferenceFinancialDocumentNumber() {
233         return referenceFinancialDocumentNumber;
234     }
235 
236 
237     /**
238      * Sets the referenceFinancialDocumentNumber attribute.
239      * 
240      * @param referenceFinancialDocumentNumber The referenceFinancialDocumentNumber to set.
241      */
242     public void setReferenceFinancialDocumentNumber(String referenceFinancialDocumentNumber) {
243         this.referenceFinancialDocumentNumber = referenceFinancialDocumentNumber;
244     }
245 
246     /**
247      * @return Returns the financialDocumentAccountingLineText.
248      */
249     public String getFinancialDocumentAccountingLineText() {
250         return financialDocumentAccountingLineText;
251     }
252 
253     /**
254      * @param financialDocumentAccountingLineText The financialDocumentAccountingLineText to set.
255      */
256     public void setFinancialDocumentAccountingLineText(String financialDocumentAccountingLineText) {
257         this.financialDocumentAccountingLineText = financialDocumentAccountingLineText;
258     }
259 
260     /**
261      * Gets the taxNQIId attribute.
262      * 
263      * @return Returns the taxNQIId.
264      */
265     public String getTaxNQIId() {
266         return taxNQIId;
267     }
268 
269     /**
270      * Gets the taxOtherExemptIndicator attribute.
271      * 
272      * @return Returns the taxOtherExemptIndicator.
273      */
274     public boolean isTaxOtherExemptIndicator() {
275         return taxOtherExemptIndicator;
276     }
277 
278     /**
279      * Gets the taxUSAIDPerDiemIndicator attribute.
280      * 
281      * @return Returns the taxUSAIDPerDiemIndicator.
282      */
283     public boolean isTaxUSAIDPerDiemIndicator() {
284         return taxUSAIDPerDiemIndicator;
285     }
286 
287     /**
288      * Gets the taxSpecialW4Amount attribute.
289      * 
290      * @return Returns the taxSpecialW4Amount.
291      */
292     public KualiDecimal getTaxSpecialW4Amount() {
293         return taxSpecialW4Amount;
294     }
295 
296     /**
297      * Sets the taxNQIId attribute value.
298      * 
299      * @param taxNQIId The taxNQIId to set.
300      */
301     public void setTaxNQIId(String taxNQIId) {
302         this.taxNQIId = taxNQIId;
303     }
304 
305     /**
306      * Sets the taxOtherExemptIndicator attribute value.
307      * 
308      * @param taxOtherExemptIndicator The taxOtherExemptIndicator to set.
309      */
310     public void setTaxOtherExemptIndicator(boolean taxOtherExemptIndicator) {
311         this.taxOtherExemptIndicator = taxOtherExemptIndicator;
312     }
313 
314     /**
315      * Sets the taxUSAIDPerDiemIndicator attribute value.
316      * 
317      * @param taxUSAIDPerDiemIndicator The taxUSAIDPerDiemIndicator to set.
318      */
319     public void setTaxUSAIDPerDiemIndicator(boolean taxUSAIDPerDiemIndicator) {
320         this.taxUSAIDPerDiemIndicator = taxUSAIDPerDiemIndicator;
321     }
322 
323     /**
324      * Sets the taxSpecialW4Amount attribute value.
325      * 
326      * @param taxSpecialW4Amount The taxSpecialW4Amount to set.
327      */
328     public void setTaxSpecialW4Amount(KualiDecimal taxSpecialW4Amount) {
329         this.taxSpecialW4Amount = taxSpecialW4Amount;
330     }
331 
332     /**
333      * Gets the incomeClass attribute.
334      * 
335      * @return Returns the incomeClass
336      */
337     public TaxIncomeClassCode getIncomeClass() {
338         return incomeClass;
339     }
340 
341 
342     /**
343      * Sets the incomeClass attribute.
344      * 
345      * @param incomeClass The incomeClass to set.
346      * @deprecated
347      */
348     @Deprecated
349     public void setIncomeClass(TaxIncomeClassCode incomeClass) {
350         this.incomeClass = incomeClass;
351     }
352 
353     /**
354      * Return select read-only label for income class
355      * 
356      * @return
357      */
358     public String getIncomeClassName() {
359         return new TaxIncomeClassValuesFinder().getKeyLabel(incomeClassCode);
360     }
361 
362     /**
363      * Sets the incomeClassName attribute.
364      * 
365      * @param name The incomeClass name to set.
366      */
367     public void setincomeClassName(String name) {
368     }
369 
370     /**
371      * @see org.kuali.rice.krad.bo.BusinessObjectBase#toStringMapper()
372      */
373     @SuppressWarnings("rawtypes")
374     protected LinkedHashMap toStringMapper_RICE20_REFACTORME() {
375         LinkedHashMap m = new LinkedHashMap();
376         m.put(OLEPropertyConstants.DOCUMENT_NUMBER, this.documentNumber);
377         return m;
378     }
379 
380 }