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 017 package org.kuali.kfs.module.purap.businessobject; 018 019 import java.sql.Date; 020 import java.sql.Timestamp; 021 import java.util.LinkedHashMap; 022 023 import org.kuali.kfs.module.purap.document.PurchaseOrderDocument; 024 import org.kuali.kfs.sys.context.SpringContext; 025 import org.kuali.rice.kns.bo.Country; 026 import org.kuali.rice.kns.bo.PersistableBusinessObjectBase; 027 import org.kuali.rice.kns.service.CountryService; 028 import org.kuali.rice.kns.util.ObjectUtils; 029 030 /** 031 * Purchase Order Vendor Quote Business Object. 032 */ 033 public class PurchaseOrderVendorQuote extends PersistableBusinessObjectBase { 034 035 private String documentNumber; 036 private Integer purchaseOrderVendorQuoteIdentifier; 037 private Integer vendorHeaderGeneratedIdentifier; 038 private Integer vendorDetailAssignedIdentifier; 039 private String vendorName; 040 private String vendorLine1Address; 041 private String vendorLine2Address; 042 private String vendorCityName; 043 private String vendorStateCode; 044 private String vendorPostalCode; 045 private String vendorPhoneNumber; 046 private String vendorFaxNumber; 047 private String vendorEmailAddress; 048 private String vendorAttentionName; 049 private String purchaseOrderQuoteTransmitTypeCode; 050 private Timestamp purchaseOrderQuoteTransmitTimestamp; 051 private Date purchaseOrderQuotePriceExpirationDate; 052 private String purchaseOrderQuoteStatusCode; 053 private Timestamp purchaseOrderQuoteAwardTimestamp; 054 private String purchaseOrderQuoteRankNumber; 055 private String vendorCountryCode; 056 private String vendorAddressInternationalProvinceName; 057 private boolean isTransmitPrintDisplayed = false; 058 059 private PurchaseOrderDocument purchaseOrder; 060 private PurchaseOrderQuoteStatus purchaseOrderQuoteStatus; 061 private Country vendorCountry; 062 063 //non-persisted variables 064 protected boolean isPdfDisplayedToUserOnce; 065 066 /** 067 * Default constructor. 068 */ 069 public PurchaseOrderVendorQuote() { 070 071 } 072 073 public String getDocumentNumber() { 074 return documentNumber; 075 } 076 077 public void setDocumentNumber(String documentNumber) { 078 this.documentNumber = documentNumber; 079 } 080 081 public Integer getPurchaseOrderVendorQuoteIdentifier() { 082 return purchaseOrderVendorQuoteIdentifier; 083 } 084 085 public Country getVendorCountry() { 086 vendorCountry = SpringContext.getBean(CountryService.class).getByPrimaryIdIfNecessary(vendorCountryCode, vendorCountry); 087 return vendorCountry; 088 } 089 090 public void setVendorCountry(Country vendorCountry) { 091 this.vendorCountry = vendorCountry; 092 } 093 094 public void setPurchaseOrderVendorQuoteIdentifier(Integer purchaseOrderVendorQuoteIdentifier) { 095 this.purchaseOrderVendorQuoteIdentifier = purchaseOrderVendorQuoteIdentifier; 096 } 097 098 public Integer getVendorHeaderGeneratedIdentifier() { 099 return vendorHeaderGeneratedIdentifier; 100 } 101 102 public void setVendorHeaderGeneratedIdentifier(Integer vendorHeaderGeneratedIdentifier) { 103 this.vendorHeaderGeneratedIdentifier = vendorHeaderGeneratedIdentifier; 104 } 105 106 public Integer getVendorDetailAssignedIdentifier() { 107 return vendorDetailAssignedIdentifier; 108 } 109 110 public void setVendorDetailAssignedIdentifier(Integer vendorDetailAssignedIdentifier) { 111 this.vendorDetailAssignedIdentifier = vendorDetailAssignedIdentifier; 112 } 113 114 public String getVendorAddressInternationalProvinceName() { 115 return vendorAddressInternationalProvinceName; 116 } 117 118 public void setVendorAddressInternationalProvinceName(String vendorAddressInternationalProvinceName) { 119 this.vendorAddressInternationalProvinceName = vendorAddressInternationalProvinceName; 120 } 121 122 public String getVendorNumber() { 123 String vendorNumber = ""; 124 if (ObjectUtils.isNotNull(this.vendorHeaderGeneratedIdentifier)) { 125 vendorNumber = this.vendorHeaderGeneratedIdentifier.toString(); 126 } 127 if (ObjectUtils.isNotNull(this.vendorDetailAssignedIdentifier)) { 128 vendorNumber += "-" + this.vendorDetailAssignedIdentifier.toString(); 129 } 130 return vendorNumber; 131 } 132 133 public void setVendorNumber(String vendorNumber) { 134 // do nothing 135 } 136 137 public String getVendorName() { 138 return vendorName; 139 } 140 141 public void setVendorName(String vendorName) { 142 this.vendorName = vendorName; 143 } 144 145 public String getVendorLine1Address() { 146 return vendorLine1Address; 147 } 148 149 public void setVendorLine1Address(String vendorLine1Address) { 150 this.vendorLine1Address = vendorLine1Address; 151 } 152 153 public String getVendorLine2Address() { 154 return vendorLine2Address; 155 } 156 157 public void setVendorLine2Address(String vendorLine2Address) { 158 this.vendorLine2Address = vendorLine2Address; 159 } 160 161 public String getVendorCityName() { 162 return vendorCityName; 163 } 164 165 public void setVendorCityName(String vendorCityName) { 166 this.vendorCityName = vendorCityName; 167 } 168 169 public String getVendorStateCode() { 170 return vendorStateCode; 171 } 172 173 public void setVendorStateCode(String vendorStateCode) { 174 this.vendorStateCode = vendorStateCode; 175 } 176 177 public String getVendorPostalCode() { 178 return vendorPostalCode; 179 } 180 181 public void setVendorPostalCode(String vendorPostalCode) { 182 this.vendorPostalCode = vendorPostalCode; 183 } 184 185 public String getVendorPhoneNumber() { 186 return vendorPhoneNumber; 187 } 188 189 public void setVendorPhoneNumber(String vendorPhoneNumber) { 190 this.vendorPhoneNumber = vendorPhoneNumber; 191 } 192 193 public String getVendorFaxNumber() { 194 return vendorFaxNumber; 195 } 196 197 public void setVendorFaxNumber(String vendorFaxNumber) { 198 this.vendorFaxNumber = vendorFaxNumber; 199 } 200 201 public String getVendorEmailAddress() { 202 return vendorEmailAddress; 203 } 204 205 public void setVendorEmailAddress(String vendorEmailAddress) { 206 this.vendorEmailAddress = vendorEmailAddress; 207 } 208 209 public String getVendorAttentionName() { 210 return vendorAttentionName; 211 } 212 213 public void setVendorAttentionName(String vendorAttentionName) { 214 this.vendorAttentionName = vendorAttentionName; 215 } 216 217 public String getPurchaseOrderQuoteTransmitTypeCode() { 218 return purchaseOrderQuoteTransmitTypeCode; 219 } 220 221 public void setPurchaseOrderQuoteTransmitTypeCode(String purchaseOrderQuoteTransmitTypeCode) { 222 this.purchaseOrderQuoteTransmitTypeCode = purchaseOrderQuoteTransmitTypeCode; 223 } 224 225 public Timestamp getPurchaseOrderQuoteTransmitTimestamp() { 226 return purchaseOrderQuoteTransmitTimestamp; 227 } 228 229 public void setPurchaseOrderQuoteTransmitTimestamp(Timestamp purchaseOrderQuoteTransmitTimestamp) { 230 this.purchaseOrderQuoteTransmitTimestamp = purchaseOrderQuoteTransmitTimestamp; 231 } 232 233 public Date getPurchaseOrderQuotePriceExpirationDate() { 234 return purchaseOrderQuotePriceExpirationDate; 235 } 236 237 public void setPurchaseOrderQuotePriceExpirationDate(Date purchaseOrderQuotePriceExpirationDate) { 238 this.purchaseOrderQuotePriceExpirationDate = purchaseOrderQuotePriceExpirationDate; 239 } 240 241 public String getPurchaseOrderQuoteStatusCode() { 242 return purchaseOrderQuoteStatusCode; 243 } 244 245 public void setPurchaseOrderQuoteStatusCode(String purchaseOrderQuoteStatusCode) { 246 this.purchaseOrderQuoteStatusCode = purchaseOrderQuoteStatusCode; 247 } 248 249 public Timestamp getPurchaseOrderQuoteAwardTimestamp() { 250 return purchaseOrderQuoteAwardTimestamp; 251 } 252 253 public void setPurchaseOrderQuoteAwardTimestamp(Timestamp purchaseOrderQuoteAwardTimestamp) { 254 this.purchaseOrderQuoteAwardTimestamp = purchaseOrderQuoteAwardTimestamp; 255 } 256 257 public String getPurchaseOrderQuoteRankNumber() { 258 return purchaseOrderQuoteRankNumber; 259 } 260 261 public void setPurchaseOrderQuoteRankNumber(String purchaseOrderQuoteRankNumber) { 262 this.purchaseOrderQuoteRankNumber = purchaseOrderQuoteRankNumber; 263 } 264 265 public PurchaseOrderDocument getPurchaseOrder() { 266 return purchaseOrder; 267 } 268 269 /** 270 * Sets the purchaseOrder attribute. 271 * 272 * @param purchaseOrder The purchaseOrder to set. 273 * @deprecated 274 */ 275 public void setPurchaseOrder(PurchaseOrderDocument purchaseOrder) { 276 this.purchaseOrder = purchaseOrder; 277 } 278 279 public PurchaseOrderQuoteStatus getPurchaseOrderQuoteStatus() { 280 return purchaseOrderQuoteStatus; 281 } 282 283 /** 284 * Sets the purchaseOrderQuoteStatus attribute. 285 * 286 * @param purchaseOrderQuoteStatus The purchaseOrderQuoteStatus to set. 287 * @deprecated 288 */ 289 public void setPurchaseOrderQuoteStatus(PurchaseOrderQuoteStatus purchaseOrderQuoteStatus) { 290 this.purchaseOrderQuoteStatus = purchaseOrderQuoteStatus; 291 } 292 293 public String getVendorCountryCode() { 294 return vendorCountryCode; 295 } 296 297 public void setVendorCountryCode(String vendorCountryCode) { 298 this.vendorCountryCode = vendorCountryCode; 299 } 300 301 public boolean isTransmitPrintDisplayed() { 302 return isTransmitPrintDisplayed; 303 } 304 305 public void setTransmitPrintDisplayed(boolean isTransmitPrintDisplayed) { 306 this.isTransmitPrintDisplayed = isTransmitPrintDisplayed; 307 } 308 309 /** 310 * @see org.kuali.rice.kns.bo.BusinessObjectBase#toStringMapper() 311 */ 312 protected LinkedHashMap toStringMapper() { 313 LinkedHashMap m = new LinkedHashMap(); 314 m.put("documentNumber", this.documentNumber); 315 if (this.purchaseOrderVendorQuoteIdentifier != null) { 316 m.put("purchaseOrderVendorQuoteIdentifier", this.purchaseOrderVendorQuoteIdentifier.toString()); 317 } 318 return m; 319 } 320 321 /** 322 * Method to determine if the the pdf has already been displayed to the user 323 * one time. If false, its set to true and locks this out. 324 * 325 * @return 326 */ 327 public boolean isPdfDisplayedToUserOnce() { 328 boolean valueToReturn = isPdfDisplayedToUserOnce; 329 330 //if not displayed, we will return false, but subsequent calls will return true. 331 if (valueToReturn == false){ 332 isPdfDisplayedToUserOnce = true; 333 } 334 335 return valueToReturn; 336 } 337 338 public void setPdfDisplayedToUserOnce(boolean isPdfDisplayedToUserOnce) { 339 this.isPdfDisplayedToUserOnce = isPdfDisplayedToUserOnce; 340 } 341 342 }