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 package org.kuali.kfs.module.ar.businessobject;
017
018 import java.util.ArrayList;
019 import java.util.LinkedHashMap;
020 import java.util.List;
021
022 import org.kuali.kfs.coa.businessobject.Account;
023 import org.kuali.kfs.coa.businessobject.Chart;
024 import org.kuali.kfs.coa.businessobject.ObjectCode;
025 import org.kuali.kfs.coa.businessobject.ProjectCode;
026 import org.kuali.kfs.coa.businessobject.SubAccount;
027 import org.kuali.kfs.coa.businessobject.SubObjectCode;
028 import org.kuali.rice.kns.bo.PersistableBusinessObjectBase;
029 import org.kuali.rice.kns.util.KualiDecimal;
030
031 /**
032 * @author Kuali Nervous System Team (kualidev@oncourse.iu.edu)
033 */
034 public class NonInvoiced extends PersistableBusinessObjectBase {
035
036 private String documentNumber;
037 private Integer financialDocumentLineNumber;
038 private Integer financialDocumentPostingYear;
039 private String chartOfAccountsCode;
040 private String accountNumber;
041 private String subAccountNumber;
042 private String financialObjectCode;
043 private String financialSubObjectCode;
044 private String projectCode;
045 private KualiDecimal financialDocumentLineAmount;
046 private String financialDocumentOverrideCode;
047 private KualiDecimal nonInvoicedDistributionAmount = KualiDecimal.ZERO;
048
049 private AccountsReceivableDocumentHeader accountsReceivableDocumentHeader;
050 private ObjectCode financialObject;
051 private SubAccount subAccount;
052 private Chart chartOfAccounts;
053 private SubObjectCode financialSubObject;
054 private Account account;
055 private ProjectCode project;
056
057
058 List<NonInvoicedDistribution> nonInvoicedDistributions;
059
060 /**
061 * Default constructor.
062 */
063 public NonInvoiced() {
064 nonInvoicedDistributions = new ArrayList<NonInvoicedDistribution>();
065
066 }
067
068 /**
069 * Gets the documentNumber attribute.
070 *
071 * @return Returns the documentNumber
072 *
073 */
074 public String getDocumentNumber() {
075 return documentNumber;
076 }
077
078 /**
079 * Sets the documentNumber attribute.
080 *
081 * @param documentNumber The documentNumber to set.
082 *
083 */
084 public void setDocumentNumber(String documentNumber) {
085 this.documentNumber = documentNumber;
086 }
087
088
089 /**
090 * Gets the financialDocumentLineNumber attribute.
091 *
092 * @return Returns the financialDocumentLineNumber
093 *
094 */
095 public Integer getFinancialDocumentLineNumber() {
096 return financialDocumentLineNumber;
097 }
098
099 /**
100 * Sets the financialDocumentLineNumber attribute.
101 *
102 * @param financialDocumentLineNumber The financialDocumentLineNumber to set.
103 *
104 */
105 public void setFinancialDocumentLineNumber(Integer financialDocumentLineNumber) {
106 this.financialDocumentLineNumber = financialDocumentLineNumber;
107 }
108
109
110 /**
111 * Gets the financialDocumentPostingYear attribute.
112 *
113 * @return Returns the financialDocumentPostingYear
114 *
115 */
116 public Integer getFinancialDocumentPostingYear() {
117 return financialDocumentPostingYear;
118 }
119
120 /**
121 * Sets the financialDocumentPostingYear attribute.
122 *
123 * @param financialDocumentPostingYear The financialDocumentPostingYear to set.
124 *
125 */
126 public void setFinancialDocumentPostingYear(Integer financialDocumentPostingYear) {
127 this.financialDocumentPostingYear = financialDocumentPostingYear;
128 }
129
130
131 /**
132 * Gets the chartOfAccountsCode attribute.
133 *
134 * @return Returns the chartOfAccountsCode
135 *
136 */
137 public String getChartOfAccountsCode() {
138 return chartOfAccountsCode;
139 }
140
141 /**
142 * Sets the chartOfAccountsCode attribute.
143 *
144 * @param chartOfAccountsCode The chartOfAccountsCode to set.
145 *
146 */
147 public void setChartOfAccountsCode(String chartOfAccountsCode) {
148 this.chartOfAccountsCode = chartOfAccountsCode;
149 }
150
151
152 /**
153 * Gets the accountNumber attribute.
154 *
155 * @return Returns the accountNumber
156 *
157 */
158 public String getAccountNumber() {
159 return accountNumber;
160 }
161
162 /**
163 * Sets the accountNumber attribute.
164 *
165 * @param accountNumber The accountNumber to set.
166 *
167 */
168 public void setAccountNumber(String accountNumber) {
169 this.accountNumber = accountNumber;
170 }
171
172
173 /**
174 * Gets the subAccountNumber attribute.
175 *
176 * @return Returns the subAccountNumber
177 *
178 */
179 public String getSubAccountNumber() {
180 return subAccountNumber;
181 }
182
183 /**
184 * Sets the subAccountNumber attribute.
185 *
186 * @param subAccountNumber The subAccountNumber to set.
187 *
188 */
189 public void setSubAccountNumber(String subAccountNumber) {
190 this.subAccountNumber = subAccountNumber;
191 }
192
193
194 /**
195 * Gets the financialObjectCode attribute.
196 *
197 * @return Returns the financialObjectCode
198 *
199 */
200 public String getFinancialObjectCode() {
201 return financialObjectCode;
202 }
203
204 /**
205 * Sets the financialObjectCode attribute.
206 *
207 * @param financialObjectCode The financialObjectCode to set.
208 *
209 */
210 public void setFinancialObjectCode(String financialObjectCode) {
211 this.financialObjectCode = financialObjectCode;
212 }
213
214
215 /**
216 * Gets the financialSubObjectCode attribute.
217 *
218 * @return Returns the financialSubObjectCode
219 *
220 */
221 public String getFinancialSubObjectCode() {
222 return financialSubObjectCode;
223 }
224
225 /**
226 * Sets the financialSubObjectCode attribute.
227 *
228 * @param financialSubObjectCode The financialSubObjectCode to set.
229 *
230 */
231 public void setFinancialSubObjectCode(String financialSubObjectCode) {
232 this.financialSubObjectCode = financialSubObjectCode;
233 }
234
235
236 /**
237 * Gets the projectCode attribute.
238 *
239 * @return Returns the projectCode
240 *
241 */
242 public String getProjectCode() {
243 return projectCode;
244 }
245
246 /**
247 * Sets the projectCode attribute.
248 *
249 * @param projectCode The projectCode to set.
250 *
251 */
252 public void setProjectCode(String projectCode) {
253 this.projectCode = projectCode;
254 }
255
256
257 /**
258 * Gets the financialDocumentLineAmount attribute.
259 *
260 * @return Returns the financialDocumentLineAmount
261 *
262 */
263 public KualiDecimal getFinancialDocumentLineAmount() {
264 return financialDocumentLineAmount;
265 }
266
267 /**
268 * Sets the financialDocumentLineAmount attribute.
269 *
270 * @param financialDocumentLineAmount The financialDocumentLineAmount to set.
271 *
272 */
273 public void setFinancialDocumentLineAmount(KualiDecimal financialDocumentLineAmount) {
274 this.financialDocumentLineAmount = financialDocumentLineAmount;
275 }
276
277
278 /**
279 * Gets the financialDocumentOverrideCode attribute.
280 *
281 * @return Returns the financialDocumentOverrideCode
282 *
283 */
284 public String getFinancialDocumentOverrideCode() {
285 return financialDocumentOverrideCode;
286 }
287
288 /**
289 * Sets the financialDocumentOverrideCode attribute.
290 *
291 * @param financialDocumentOverrideCode The financialDocumentOverrideCode to set.
292 *
293 */
294 public void setFinancialDocumentOverrideCode(String financialDocumentOverrideCode) {
295 this.financialDocumentOverrideCode = financialDocumentOverrideCode;
296 }
297
298 /**
299 * Gets the accountsReceivableDocumentHeader attribute.
300 * @return Returns the accountsReceivableDocumentHeader.
301 */
302 public AccountsReceivableDocumentHeader getAccountsReceivableDocumentHeader() {
303 return accountsReceivableDocumentHeader;
304 }
305
306 /**
307 * Sets the accountsReceivableDocumentHeader attribute value.
308 * @param accountsReceivableDocumentHeader The accountsReceivableDocumentHeader to set.
309 * @deprecated
310 */
311 public void setAccountsReceivableDocumentHeader(AccountsReceivableDocumentHeader accountsReceivableDocumentHeader) {
312 this.accountsReceivableDocumentHeader = accountsReceivableDocumentHeader;
313 }
314
315 /**
316 * Gets the financialObject attribute.
317 *
318 * @return Returns the financialObject
319 *
320 */
321 public ObjectCode getFinancialObject() {
322 return financialObject;
323 }
324
325 /**
326 * Sets the financialObject attribute.
327 *
328 * @param financialObject The financialObject to set.
329 * @deprecated
330 */
331 public void setFinancialObject(ObjectCode financialObject) {
332 this.financialObject = financialObject;
333 }
334
335 /**
336 * Gets the subAccount attribute.
337 *
338 * @return Returns the subAccount
339 *
340 */
341 public SubAccount getSubAccount() {
342 return subAccount;
343 }
344
345 /**
346 * Sets the subAccount attribute.
347 *
348 * @param subAccount The subAccount to set.
349 * @deprecated
350 */
351 public void setSubAccount(SubAccount subAccount) {
352 this.subAccount = subAccount;
353 }
354
355 /**
356 * Gets the chartOfAccounts attribute.
357 *
358 * @return Returns the chartOfAccounts
359 *
360 */
361 public Chart getChartOfAccounts() {
362 return chartOfAccounts;
363 }
364
365 /**
366 * Sets the chartOfAccounts attribute.
367 *
368 * @param chartOfAccounts The chartOfAccounts to set.
369 * @deprecated
370 */
371 public void setChartOfAccounts(Chart chartOfAccounts) {
372 this.chartOfAccounts = chartOfAccounts;
373 }
374
375 /**
376 * Gets the financialSubObject attribute.
377 *
378 * @return Returns the financialSubObject
379 *
380 */
381 public SubObjectCode getFinancialSubObject() {
382 return financialSubObject;
383 }
384
385 /**
386 * Sets the financialSubObject attribute.
387 *
388 * @param financialSubObject The financialSubObject to set.
389 * @deprecated
390 */
391 public void setFinancialSubObject(SubObjectCode financialSubObject) {
392 this.financialSubObject = financialSubObject;
393 }
394
395 /**
396 * Gets the account attribute.
397 *
398 * @return Returns the account
399 *
400 */
401 public Account getAccount() {
402 return account;
403 }
404
405 /**
406 * Sets the account attribute.
407 *
408 * @param account The account to set.
409 * @deprecated
410 */
411 public void setAccount(Account account) {
412 this.account = account;
413 }
414
415 /**
416 * Gets the project attribute.
417 *
418 * @return Returns the project
419 *
420 */
421 public ProjectCode getProject() {
422 return project;
423 }
424
425 /**
426 * Sets the project attribute.
427 *
428 * @param project The project to set.
429 * @deprecated
430 */
431 public void setProject(ProjectCode project) {
432 this.project = project;
433 }
434
435 /**
436 * Gets the nonInvoicedDistributions attribute.
437 * @return Returns the nonInvoicedDistributions.
438 */
439 public List<NonInvoicedDistribution> getNonInvoicedDistributions() {
440 return nonInvoicedDistributions;
441 }
442
443 /**
444 * Sets the nonInvoicedDistributions attribute value.
445 * @param nonInvoicedDistributions The nonInvoicedDistributions to set.
446 */
447 public void setNonInvoicedDistributions(List<NonInvoicedDistribution> nonInvoicedDistributions) {
448 this.nonInvoicedDistributions = nonInvoicedDistributions;
449 }
450
451 /**
452 * @see org.kuali.rice.kns.bo.BusinessObjectBase#toStringMapper()
453 */
454 protected LinkedHashMap toStringMapper() {
455 LinkedHashMap m = new LinkedHashMap();
456 m.put("documentNumber", this.documentNumber);
457 if (this.financialDocumentLineNumber != null) {
458 m.put("financialDocumentLineNumber", this.financialDocumentLineNumber.toString());
459 }
460 return m;
461 }
462
463 /**
464 * Gets the nonInvoicedDistributionAmount attribute.
465 *
466 * @return Returns the nonInvoicedDistributionAmount
467 *
468 */
469 public KualiDecimal getNonInvoicedDistributionAmount() {
470 return nonInvoicedDistributionAmount;
471 }
472
473 /**
474 * Sets the remainingAmountForDistribution attribute.
475 *
476 * @param remainingAmountForDistribution The remainingAmountForDistribution to set.
477 *
478 */
479 public void setNonInvoicedDistributionAmount(KualiDecimal nonInvoicedDistributionAmount) {
480 this.nonInvoicedDistributionAmount = nonInvoicedDistributionAmount;
481 }
482
483 }