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.bc.businessobject; 017 018 import java.util.LinkedHashMap; 019 020 import org.kuali.kfs.coa.businessobject.Account; 021 import org.kuali.kfs.coa.businessobject.Chart; 022 import org.kuali.kfs.coa.businessobject.SubAccount; 023 import org.kuali.kfs.sys.businessobject.SystemOptions; 024 import org.kuali.kfs.sys.context.SpringContext; 025 import org.kuali.rice.kim.bo.Person; 026 import org.kuali.rice.kns.bo.PersistableBusinessObjectBase; 027 028 /** 029 * Holds information about a budget lock. 030 */ 031 public class BudgetConstructionLockSummary extends PersistableBusinessObjectBase { 032 private String lockType; 033 private String lockUserId; 034 private String documentNumber; 035 private Integer universityFiscalYear; 036 private String chartOfAccountsCode; 037 private String accountNumber; 038 private String subAccountNumber; 039 private String positionNumber; 040 private String positionDescription; 041 042 private Person lockUser; 043 private Chart chart; 044 private Account account; 045 private SubAccount subAccount; 046 private BudgetConstructionPosition budgetConstructionPosition; 047 private SystemOptions options; 048 049 /** 050 * Default Constructor. 051 */ 052 public BudgetConstructionLockSummary() { 053 054 } 055 056 /** 057 * Gets the lockType attribute. 058 * 059 * @return Returns the lockType. 060 */ 061 public String getLockType() { 062 return lockType; 063 } 064 065 /** 066 * Sets the lockType attribute value. 067 * 068 * @param lockType The lockType to set. 069 */ 070 public void setLockType(String lockType) { 071 this.lockType = lockType; 072 } 073 074 /** 075 * Gets the lockUserId attribute. 076 * 077 * @return Returns the lockUserId. 078 */ 079 public String getLockUserId() { 080 return lockUserId; 081 } 082 083 /** 084 * Sets the lockUserId attribute value. 085 * 086 * @param lockUserId The lockUserId to set. 087 */ 088 public void setLockUserId(String lockUserId) { 089 this.lockUserId = lockUserId; 090 } 091 092 /** 093 * Gets the accountNumber attribute. 094 * 095 * @return Returns the accountNumber. 096 */ 097 public String getAccountNumber() { 098 return accountNumber; 099 } 100 101 /** 102 * Sets the accountNumber attribute value. 103 * 104 * @param accountNumber The accountNumber to set. 105 */ 106 public void setAccountNumber(String accountNumber) { 107 this.accountNumber = accountNumber; 108 } 109 110 /** 111 * Gets the chartOfAccountsCode attribute. 112 * 113 * @return Returns the chartOfAccountsCode. 114 */ 115 public String getChartOfAccountsCode() { 116 return chartOfAccountsCode; 117 } 118 119 /** 120 * Sets the chartOfAccountsCode attribute value. 121 * 122 * @param chartOfAccountsCode The chartOfAccountsCode to set. 123 */ 124 public void setChartOfAccountsCode(String chartOfAccountsCode) { 125 this.chartOfAccountsCode = chartOfAccountsCode; 126 } 127 128 /** 129 * Gets the documentNumber attribute. 130 * 131 * @return Returns the documentNumber. 132 */ 133 public String getDocumentNumber() { 134 return documentNumber; 135 } 136 137 /** 138 * Sets the documentNumber attribute value. 139 * 140 * @param documentNumber The documentNumber to set. 141 */ 142 public void setDocumentNumber(String documentNumber) { 143 this.documentNumber = documentNumber; 144 } 145 146 /** 147 * Gets the positionDescription attribute. 148 * 149 * @return Returns the positionDescription. 150 */ 151 public String getPositionDescription() { 152 return positionDescription; 153 } 154 155 /** 156 * Sets the positionDescription attribute value. 157 * 158 * @param positionDescription The positionDescription to set. 159 */ 160 public void setPositionDescription(String positionDescription) { 161 this.positionDescription = positionDescription; 162 } 163 164 /** 165 * Gets the positionNumber attribute. 166 * 167 * @return Returns the positionNumber. 168 */ 169 public String getPositionNumber() { 170 return positionNumber; 171 } 172 173 /** 174 * Sets the positionNumber attribute value. 175 * 176 * @param positionNumber The positionNumber to set. 177 */ 178 public void setPositionNumber(String positionNumber) { 179 this.positionNumber = positionNumber; 180 } 181 182 /** 183 * Gets the subAccountNumber attribute. 184 * 185 * @return Returns the subAccountNumber. 186 */ 187 public String getSubAccountNumber() { 188 return subAccountNumber; 189 } 190 191 /** 192 * Sets the subAccountNumber attribute value. 193 * 194 * @param subAccountNumber The subAccountNumber to set. 195 */ 196 public void setSubAccountNumber(String subAccountNumber) { 197 this.subAccountNumber = subAccountNumber; 198 } 199 200 /** 201 * Gets the universityFiscalYear attribute. 202 * 203 * @return Returns the universityFiscalYear. 204 */ 205 public Integer getUniversityFiscalYear() { 206 return universityFiscalYear; 207 } 208 209 /** 210 * Sets the universityFiscalYear attribute value. 211 * 212 * @param universityFiscalYear The universityFiscalYear to set. 213 */ 214 public void setUniversityFiscalYear(Integer universityFiscalYear) { 215 this.universityFiscalYear = universityFiscalYear; 216 } 217 218 /** 219 * Gets the lockUser attribute. 220 * 221 * @return Returns the lockUser. 222 */ 223 public Person getLockUser() { 224 if (lockUserId != null) { 225 lockUser = SpringContext.getBean(org.kuali.rice.kim.service.PersonService.class).getPersonByPrincipalName(lockUserId); 226 if (lockUser == null) { 227 throw new RuntimeException("Could not find lock user " + lockUserId); 228 } 229 } 230 231 return lockUser; 232 } 233 234 /** 235 * Sets the lockUser attribute value. 236 * 237 * @param lockUser The lockUser to set. 238 */ 239 public void setLockUser(Person lockUser) { 240 this.lockUser = lockUser; 241 } 242 243 /** 244 * Gets the chart attribute. 245 * 246 * @return Returns the chart. 247 */ 248 public Chart getChart() { 249 return chart; 250 } 251 252 /** 253 * Sets the chart attribute value. 254 * 255 * @param chart The chart to set. 256 */ 257 public void setChart(Chart chart) { 258 this.chart = chart; 259 } 260 261 /** 262 * Gets the account attribute. 263 * 264 * @return Returns the account. 265 */ 266 public Account getAccount() { 267 return account; 268 } 269 270 /** 271 * Sets the account attribute value. 272 * 273 * @param account The account to set. 274 */ 275 public void setAccount(Account account) { 276 this.account = account; 277 } 278 279 /** 280 * Gets the subAccount attribute. 281 * 282 * @return Returns the subAccount. 283 */ 284 public SubAccount getSubAccount() { 285 return subAccount; 286 } 287 288 /** 289 * Sets the subAccount attribute value. 290 * 291 * @param subAccount The subAccount to set. 292 */ 293 public void setSubAccount(SubAccount subAccount) { 294 this.subAccount = subAccount; 295 } 296 297 /** 298 * Gets the budgetConstructionPosition attribute. 299 * 300 * @return Returns the budgetConstructionPosition. 301 */ 302 public BudgetConstructionPosition getBudgetConstructionPosition() { 303 return budgetConstructionPosition; 304 } 305 306 /** 307 * Sets the budgetConstructionPosition attribute value. 308 * 309 * @param budgetConstructionPosition The budgetConstructionPosition to set. 310 */ 311 public void setBudgetConstructionPosition(BudgetConstructionPosition budgetConstructionPosition) { 312 this.budgetConstructionPosition = budgetConstructionPosition; 313 } 314 315 /** 316 * Gets the options attribute. 317 * 318 * @return Returns the options. 319 */ 320 public SystemOptions getOptions() { 321 return options; 322 } 323 324 /** 325 * Sets the options attribute value. 326 * 327 * @param options The options to set. 328 */ 329 public void setOptions(SystemOptions options) { 330 this.options = options; 331 } 332 333 /** 334 * @see org.kuali.rice.kns.bo.BusinessObjectBase#toStringMapper() 335 */ 336 @Override 337 protected LinkedHashMap toStringMapper() { 338 LinkedHashMap m = new LinkedHashMap(); 339 m.put("lockType", this.lockType); 340 m.put("lockUserId", this.lockUserId); 341 342 return m; 343 } 344 345 } 346