001/* 002 * Copyright 2005-2006 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 */ 016package org.kuali.ole.fp.businessobject; 017 018import java.sql.Timestamp; 019import java.util.LinkedHashMap; 020 021import org.kuali.rice.core.api.util.type.KualiDecimal; 022import org.kuali.rice.krad.bo.PersistableBusinessObjectBase; 023 024/** 025 * This class represents an Internal Billing Item business object. 026 */ 027public class InternalBillingItem extends PersistableBusinessObjectBase { 028 029 private static final long serialVersionUID = -2830091652446423539L; 030 private String documentNumber; 031 private Integer itemSequenceId; 032 private String itemStockNumber; 033 private String itemStockDescription; 034 private Timestamp itemServiceDate; 035 private Integer itemQuantity; 036 private KualiDecimal itemUnitAmount; 037 private String unitOfMeasureCode; 038 039 /** 040 * Constructs a InternalBillingItem. 041 */ 042 public InternalBillingItem() { 043 setItemUnitAmount(KualiDecimal.ZERO); 044 } 045 046 047 /** 048 * Gets the documentNumber attribute. 049 * 050 * @return Returns the documentNumber. 051 */ 052 public String getDocumentNumber() { 053 return documentNumber; 054 } 055 056 057 /** 058 * Sets the documentNumber attribute value. 059 * 060 * @param documentNumber The documentNumber to set. 061 */ 062 public void setDocumentNumber(String documentNumber) { 063 this.documentNumber = documentNumber; 064 } 065 066 067 /** 068 * Gets the itemQuantity attribute. 069 * 070 * @return Returns the itemQuantity. 071 */ 072 public Integer getItemQuantity() { 073 return itemQuantity; 074 } 075 076 077 /** 078 * Sets the itemQuantity attribute value. 079 * 080 * @param itemQuantity The itemQuantity to set. 081 */ 082 public void setItemQuantity(Integer itemQuantity) { 083 this.itemQuantity = itemQuantity; 084 } 085 086 087 /** 088 * Gets the itemSequenceId attribute. 089 * 090 * @return Returns the itemSequenceId. 091 */ 092 public Integer getItemSequenceId() { 093 return itemSequenceId; 094 } 095 096 097 /** 098 * Sets the itemSequenceId attribute value. 099 * 100 * @param itemSequenceId The itemSequenceId to set. 101 */ 102 public void setItemSequenceId(Integer itemSequenceId) { 103 this.itemSequenceId = itemSequenceId; 104 } 105 106 107 /** 108 * Gets the itemServiceDate attribute. 109 * 110 * @return Returns the itemServiceDate. 111 */ 112 public Timestamp getItemServiceDate() { 113 return itemServiceDate; 114 } 115 116 117 /** 118 * Sets the itemServiceDate attribute value. 119 * 120 * @param itemServiceDate The itemServiceDate to set. 121 */ 122 public void setItemServiceDate(Timestamp itemServiceDate) { 123 this.itemServiceDate = itemServiceDate; 124 } 125 126 127 /** 128 * Gets the itemStockDescription attribute. 129 * 130 * @return Returns the itemStockDescription. 131 */ 132 public String getItemStockDescription() { 133 return itemStockDescription; 134 } 135 136 137 /** 138 * Sets the itemStockDescription attribute value. 139 * 140 * @param itemStockDescription The itemStockDescription to set. 141 */ 142 public void setItemStockDescription(String itemStockDescription) { 143 this.itemStockDescription = itemStockDescription; 144 } 145 146 147 /** 148 * Gets the itemStockNumber attribute. 149 * 150 * @return Returns the itemStockNumber. 151 */ 152 public String getItemStockNumber() { 153 return itemStockNumber; 154 } 155 156 157 /** 158 * Sets the itemStockNumber attribute value. 159 * 160 * @param itemStockNumber The itemStockNumber to set. 161 */ 162 public void setItemStockNumber(String itemStockNumber) { 163 this.itemStockNumber = itemStockNumber; 164 } 165 166 167 /** 168 * Gets the itemUnitAmount attribute. 169 * 170 * @return Returns the itemUnitAmount. 171 */ 172 public KualiDecimal getItemUnitAmount() { 173 return itemUnitAmount; 174 } 175 176 177 /** 178 * Sets the itemUnitAmount attribute value. 179 * 180 * @param itemUnitAmount The itemUnitAmount to set. 181 */ 182 public void setItemUnitAmount(KualiDecimal itemUnitAmount) { 183 this.itemUnitAmount = itemUnitAmount; 184 } 185 186 187 /** 188 * Gets the unitOfMeasureCode attribute. 189 * 190 * @return Returns the unitOfMeasureCode. 191 */ 192 public String getUnitOfMeasureCode() { 193 return unitOfMeasureCode; 194 } 195 196 197 /** 198 * Sets the unitOfMeasureCode attribute value. 199 * 200 * @param unitOfMeasureCode The unitOfMeasureCode to set. 201 */ 202 public void setUnitOfMeasureCode(String unitOfMeasureCode) { 203 this.unitOfMeasureCode = unitOfMeasureCode; 204 } 205 206 207 /** 208 * @return the total amount for this item 209 */ 210 public KualiDecimal getTotal() { 211 KualiDecimal total = new KualiDecimal(itemQuantity.toString()); 212 return total.multiply(itemUnitAmount); 213 } 214 215 216 /** 217 * @see org.kuali.rice.krad.bo.BusinessObjectBase#toStringMapper() 218 */ 219 protected LinkedHashMap toStringMapper_RICE20_REFACTORME() { 220 LinkedHashMap m = new LinkedHashMap(); 221 222 m.put("docHeaderId", getDocumentNumber()); 223 m.put("itemSequenceId", getItemSequenceId()); 224 225 return m; 226 } 227}