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.fp.businessobject; 017 018 import java.util.Map; 019 020 import org.kuali.kfs.sys.businessobject.AccountingLine; 021 import org.kuali.kfs.sys.businessobject.SourceAccountingLine; 022 import org.kuali.rice.kns.util.KualiDecimal; 023 import org.kuali.rice.kns.util.KualiInteger; 024 025 026 /** 027 * Special case <code>{@link SourceAccountingLine}</code> type for 028 * <code>{@link org.kuali.kfs.fp.document.BudgetAdjustmentDocument}</code> 029 */ 030 public class BudgetAdjustmentSourceAccountingLine extends SourceAccountingLine implements BudgetAdjustmentAccountingLine { 031 032 private String budgetAdjustmentPeriodCode; 033 private KualiDecimal currentBudgetAdjustmentAmount; 034 private KualiInteger baseBudgetAdjustmentAmount; 035 private KualiDecimal financialDocumentMonth1LineAmount; 036 private KualiDecimal financialDocumentMonth2LineAmount; 037 private KualiDecimal financialDocumentMonth3LineAmount; 038 private KualiDecimal financialDocumentMonth4LineAmount; 039 private KualiDecimal financialDocumentMonth5LineAmount; 040 private KualiDecimal financialDocumentMonth6LineAmount; 041 private KualiDecimal financialDocumentMonth7LineAmount; 042 private KualiDecimal financialDocumentMonth8LineAmount; 043 private KualiDecimal financialDocumentMonth9LineAmount; 044 private KualiDecimal financialDocumentMonth10LineAmount; 045 private KualiDecimal financialDocumentMonth11LineAmount; 046 private KualiDecimal financialDocumentMonth12LineAmount; 047 private boolean fringeBenefitIndicator; 048 049 public BudgetAdjustmentSourceAccountingLine() { 050 super(); 051 BudgetAdjustmentAccountingLineUtil.init(this); 052 } 053 054 /** 055 * @see org.kuali.rice.kns.bo.AccountingLineBase#getValuesMap() 056 */ 057 @Override 058 public Map getValuesMap() { 059 Map simpleValues = super.getValuesMap(); 060 simpleValues.remove("amount"); // remove the amount key; we'll use base and current instead 061 BudgetAdjustmentAccountingLineUtil.appendToValuesMap(simpleValues, this); 062 return simpleValues; 063 } 064 065 /** 066 * @see org.kuali.rice.kns.bo.AccountingLineBase#copyFrom(org.kuali.rice.kns.bo.AccountingLine) 067 */ 068 @Override 069 public void copyFrom(AccountingLine other) { 070 super.copyFrom(other); 071 BudgetAdjustmentAccountingLineUtil.copyFrom(this, other); 072 } 073 074 /** 075 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getMonthlyLinesTotal() 076 */ 077 public KualiDecimal getMonthlyLinesTotal() { 078 return BudgetAdjustmentAccountingLineUtil.getMonthlyLinesTotal(this); 079 } 080 081 /** 082 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getBaseBudgetAdjustmentAmount() 083 */ 084 public KualiInteger getBaseBudgetAdjustmentAmount() { 085 return baseBudgetAdjustmentAmount; 086 } 087 088 /** 089 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setBaseBudgetAdjustmentAmount(org.kuali.rice.kns.util.KualiDecimal) 090 */ 091 public void setBaseBudgetAdjustmentAmount(KualiInteger baseBudgetAdjustmentAmount) { 092 if (baseBudgetAdjustmentAmount != null) { 093 this.baseBudgetAdjustmentAmount = baseBudgetAdjustmentAmount; 094 } 095 } 096 097 public void setBaseBudgetAdjustmentAmount(KualiDecimal baseBudgetAdjustmentAmount) { 098 if (baseBudgetAdjustmentAmount != null) { 099 this.baseBudgetAdjustmentAmount = new KualiInteger(baseBudgetAdjustmentAmount.bigDecimalValue()); 100 } 101 } 102 103 /** 104 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getBudgetAdjustmentPeriodCode() 105 */ 106 public String getBudgetAdjustmentPeriodCode() { 107 return budgetAdjustmentPeriodCode; 108 } 109 110 /** 111 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setBudgetAdjustmentPeriodCode(java.lang.String) 112 */ 113 public void setBudgetAdjustmentPeriodCode(String budgetAdjustmentPeriodCode) { 114 this.budgetAdjustmentPeriodCode = budgetAdjustmentPeriodCode; 115 } 116 117 /** 118 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getCurrentBudgetAdjustmentAmount() 119 */ 120 public KualiDecimal getCurrentBudgetAdjustmentAmount() { 121 return currentBudgetAdjustmentAmount; 122 } 123 124 /** 125 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setCurrentBudgetAdjustmentAmount(org.kuali.rice.kns.util.KualiDecimal) 126 */ 127 public void setCurrentBudgetAdjustmentAmount(KualiDecimal currentBudgetAdjustmentAmount) { 128 if (currentBudgetAdjustmentAmount != null) { 129 this.currentBudgetAdjustmentAmount = currentBudgetAdjustmentAmount; 130 } 131 } 132 133 /** 134 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getFinancialDocumentMonth1LineAmount() 135 */ 136 public KualiDecimal getFinancialDocumentMonth1LineAmount() { 137 return financialDocumentMonth1LineAmount; 138 } 139 140 /** 141 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setFinancialDocumentMonth1LineAmount(org.kuali.rice.kns.util.KualiDecimal) 142 */ 143 public void setFinancialDocumentMonth1LineAmount(KualiDecimal financialDocumentMonth1LineAmount) { 144 if (financialDocumentMonth1LineAmount != null) { 145 this.financialDocumentMonth1LineAmount = financialDocumentMonth1LineAmount; 146 } 147 } 148 149 150 /** 151 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getFinancialDocumentMonth2LineAmount() 152 */ 153 public KualiDecimal getFinancialDocumentMonth2LineAmount() { 154 return financialDocumentMonth2LineAmount; 155 } 156 157 /** 158 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setFinancialDocumentMonth2LineAmount(org.kuali.rice.kns.util.KualiDecimal) 159 */ 160 public void setFinancialDocumentMonth2LineAmount(KualiDecimal financialDocumentMonth2LineAmount) { 161 if (financialDocumentMonth2LineAmount != null) { 162 this.financialDocumentMonth2LineAmount = financialDocumentMonth2LineAmount; 163 } 164 } 165 166 167 /** 168 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getFinancialDocumentMonth3LineAmount() 169 */ 170 public KualiDecimal getFinancialDocumentMonth3LineAmount() { 171 return financialDocumentMonth3LineAmount; 172 } 173 174 /** 175 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setFinancialDocumentMonth3LineAmount(org.kuali.rice.kns.util.KualiDecimal) 176 */ 177 public void setFinancialDocumentMonth3LineAmount(KualiDecimal financialDocumentMonth3LineAmount) { 178 if (financialDocumentMonth3LineAmount != null) { 179 this.financialDocumentMonth3LineAmount = financialDocumentMonth3LineAmount; 180 } 181 } 182 183 184 /** 185 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getFinancialDocumentMonth4LineAmount() 186 */ 187 public KualiDecimal getFinancialDocumentMonth4LineAmount() { 188 return financialDocumentMonth4LineAmount; 189 } 190 191 /** 192 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setFinancialDocumentMonth4LineAmount(org.kuali.rice.kns.util.KualiDecimal) 193 */ 194 public void setFinancialDocumentMonth4LineAmount(KualiDecimal financialDocumentMonth4LineAmount) { 195 if (financialDocumentMonth4LineAmount != null) { 196 this.financialDocumentMonth4LineAmount = financialDocumentMonth4LineAmount; 197 } 198 } 199 200 201 /** 202 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getFinancialDocumentMonth5LineAmount() 203 */ 204 public KualiDecimal getFinancialDocumentMonth5LineAmount() { 205 return financialDocumentMonth5LineAmount; 206 } 207 208 /** 209 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setFinancialDocumentMonth5LineAmount(org.kuali.rice.kns.util.KualiDecimal) 210 */ 211 public void setFinancialDocumentMonth5LineAmount(KualiDecimal financialDocumentMonth5LineAmount) { 212 if (financialDocumentMonth5LineAmount != null) { 213 this.financialDocumentMonth5LineAmount = financialDocumentMonth5LineAmount; 214 } 215 } 216 217 /** 218 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getFinancialDocumentMonth6LineAmount() 219 */ 220 public KualiDecimal getFinancialDocumentMonth6LineAmount() { 221 return financialDocumentMonth6LineAmount; 222 } 223 224 /** 225 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setFinancialDocumentMonth6LineAmount(org.kuali.rice.kns.util.KualiDecimal) 226 */ 227 public void setFinancialDocumentMonth6LineAmount(KualiDecimal financialDocumentMonth6LineAmount) { 228 if (financialDocumentMonth6LineAmount != null) { 229 this.financialDocumentMonth6LineAmount = financialDocumentMonth6LineAmount; 230 } 231 } 232 233 /** 234 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getFinancialDocumentMonth7LineAmount() 235 */ 236 public KualiDecimal getFinancialDocumentMonth7LineAmount() { 237 return financialDocumentMonth7LineAmount; 238 } 239 240 /** 241 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setFinancialDocumentMonth7LineAmount(org.kuali.rice.kns.util.KualiDecimal) 242 */ 243 public void setFinancialDocumentMonth7LineAmount(KualiDecimal financialDocumentMonth7LineAmount) { 244 if (financialDocumentMonth7LineAmount != null) { 245 this.financialDocumentMonth7LineAmount = financialDocumentMonth7LineAmount; 246 } 247 } 248 249 /** 250 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getFinancialDocumentMonth8LineAmount() 251 */ 252 public KualiDecimal getFinancialDocumentMonth8LineAmount() { 253 return financialDocumentMonth8LineAmount; 254 } 255 256 /** 257 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setFinancialDocumentMonth8LineAmount(org.kuali.rice.kns.util.KualiDecimal) 258 */ 259 public void setFinancialDocumentMonth8LineAmount(KualiDecimal financialDocumentMonth8LineAmount) { 260 if (financialDocumentMonth8LineAmount != null) { 261 this.financialDocumentMonth8LineAmount = financialDocumentMonth8LineAmount; 262 } 263 } 264 265 /** 266 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getFinancialDocumentMonth9LineAmount() 267 */ 268 public KualiDecimal getFinancialDocumentMonth9LineAmount() { 269 return financialDocumentMonth9LineAmount; 270 } 271 272 /** 273 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setFinancialDocumentMonth9LineAmount(org.kuali.rice.kns.util.KualiDecimal) 274 */ 275 public void setFinancialDocumentMonth9LineAmount(KualiDecimal financialDocumentMonth9LineAmount) { 276 if (financialDocumentMonth9LineAmount != null) { 277 this.financialDocumentMonth9LineAmount = financialDocumentMonth9LineAmount; 278 } 279 } 280 281 /** 282 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getFinancialDocumentMonth10LineAmount() 283 */ 284 public KualiDecimal getFinancialDocumentMonth10LineAmount() { 285 return financialDocumentMonth10LineAmount; 286 } 287 288 /** 289 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setFinancialDocumentMonth10LineAmount(org.kuali.rice.kns.util.KualiDecimal) 290 */ 291 public void setFinancialDocumentMonth10LineAmount(KualiDecimal financialDocumentMonth10LineAmount) { 292 if (financialDocumentMonth10LineAmount != null) { 293 this.financialDocumentMonth10LineAmount = financialDocumentMonth10LineAmount; 294 } 295 } 296 297 /** 298 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getFinancialDocumentMonth11LineAmount() 299 */ 300 public KualiDecimal getFinancialDocumentMonth11LineAmount() { 301 return financialDocumentMonth11LineAmount; 302 } 303 304 /** 305 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setFinancialDocumentMonth11LineAmount(org.kuali.rice.kns.util.KualiDecimal) 306 */ 307 public void setFinancialDocumentMonth11LineAmount(KualiDecimal financialDocumentMonth11LineAmount) { 308 if (financialDocumentMonth11LineAmount != null) { 309 this.financialDocumentMonth11LineAmount = financialDocumentMonth11LineAmount; 310 } 311 } 312 313 314 /** 315 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#getFinancialDocumentMonth12LineAmount() 316 */ 317 public KualiDecimal getFinancialDocumentMonth12LineAmount() { 318 return financialDocumentMonth12LineAmount; 319 } 320 321 /** 322 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#setFinancialDocumentMonth12LineAmount(org.kuali.rice.kns.util.KualiDecimal) 323 */ 324 public void setFinancialDocumentMonth12LineAmount(KualiDecimal financialDocumentMonth12LineAmount) { 325 if (financialDocumentMonth12LineAmount != null) { 326 this.financialDocumentMonth12LineAmount = financialDocumentMonth12LineAmount; 327 } 328 } 329 330 /** 331 * Gets the fringeBenefitIndicator attribute. 332 * 333 * @return Returns the fringeBenefitIndicator. 334 */ 335 public boolean isFringeBenefitIndicator() { 336 return fringeBenefitIndicator; 337 } 338 339 /** 340 * Sets the fringeBenefitIndicator attribute value. 341 * 342 * @param fringeBenefitIndicator The fringeBenefitIndicator to set. 343 */ 344 public void setFringeBenefitIndicator(boolean fringeBenefitIndicator) { 345 this.fringeBenefitIndicator = fringeBenefitIndicator; 346 } 347 348 /** 349 * @see org.kuali.kfs.fp.businessobject.BudgetAdjustmentAccountingLine#clearFinancialDocumentMonthLineAmounts() 350 */ 351 public void clearFinancialDocumentMonthLineAmounts() { 352 financialDocumentMonth1LineAmount = KualiDecimal.ZERO; 353 financialDocumentMonth2LineAmount = KualiDecimal.ZERO; 354 financialDocumentMonth3LineAmount = KualiDecimal.ZERO; 355 financialDocumentMonth4LineAmount = KualiDecimal.ZERO; 356 financialDocumentMonth5LineAmount = KualiDecimal.ZERO; 357 financialDocumentMonth6LineAmount = KualiDecimal.ZERO; 358 financialDocumentMonth7LineAmount = KualiDecimal.ZERO; 359 financialDocumentMonth8LineAmount = KualiDecimal.ZERO; 360 financialDocumentMonth9LineAmount = KualiDecimal.ZERO; 361 financialDocumentMonth10LineAmount = KualiDecimal.ZERO; 362 financialDocumentMonth11LineAmount = KualiDecimal.ZERO; 363 financialDocumentMonth12LineAmount = KualiDecimal.ZERO; 364 } 365 366 /** 367 * @see org.kuali.kfs.sys.businessobject.AccountingLineBase#isSourceAccountingLine() 368 */ 369 @Override 370 public boolean isSourceAccountingLine() { 371 return true; 372 } 373 374 /** 375 * @see org.kuali.kfs.sys.businessobject.AccountingLineBase#isTargetAccountingLine() 376 */ 377 @Override 378 public boolean isTargetAccountingLine() { 379 return false; 380 } 381 382 383 }