001package org.kuali.ole.select.bo; 002 003import org.kuali.ole.coa.businessobject.OLECretePOAccountingLine; 004import org.kuali.ole.coa.businessobject.OleFundCode; 005import org.kuali.ole.select.document.OlePurchaseOrderDocument; 006import org.kuali.ole.sys.OLEConstants; 007import org.kuali.rice.core.api.config.property.ConfigContext; 008import org.kuali.rice.krad.bo.PersistableBusinessObjectBase; 009import org.kuali.rice.krad.service.KRADServiceLocator; 010import org.kuali.rice.krad.service.KRADServiceLocatorWeb; 011 012import java.util.ArrayList; 013import java.util.HashMap; 014import java.util.List; 015import java.util.Map; 016 017/** 018 * Created by sambasivam on 19/9/14. 019 * 020 * This class is used for displaying the results for create POs for eResource and instance. 021 */ 022public class OLECreatePO extends PersistableBusinessObjectBase implements Cloneable { 023 024 025 private String createPOId; 026 private boolean selectFlag; 027 private String poId; 028 private String gokbId; 029 private String title; 030 private String isbnNIssn; 031 private String price; 032 private String vendorId; 033 private String purposeId; 034 private String orderTypeId; 035 private String instanceId; 036 private String instanceFlag; 037 private String bibId; 038 private String redirectUrl; 039 private String oleERSIdentifier; 040 private List<OLECretePOAccountingLine> accountingLines = new ArrayList<>(); 041 private List<OleFundCode> fundCodes = new ArrayList<>(); 042 043 public String getCreatePOId() { 044 return createPOId; 045 } 046 047 public void setCreatePOId(String createPOId) { 048 this.createPOId = createPOId; 049 } 050 051 public boolean isSelectFlag() { 052 return selectFlag; 053 } 054 055 public void setSelectFlag(boolean selectFlag) { 056 this.selectFlag = selectFlag; 057 } 058 059 public String getPoId() { 060 return poId; 061 } 062 063 public void setPoId(String poId) { 064 this.poId = poId; 065 } 066 067 public String getGokbId() { 068 return gokbId; 069 } 070 071 public void setGokbId(String gokbId) { 072 this.gokbId = gokbId; 073 } 074 075 public String getTitle() { 076 return title; 077 } 078 079 public void setTitle(String title) { 080 this.title = title; 081 } 082 083 public String getIsbnNIssn() { 084 return isbnNIssn; 085 } 086 087 public void setIsbnNIssn(String isbnNIssn) { 088 this.isbnNIssn = isbnNIssn; 089 } 090 091 public String getPrice() { 092 return price; 093 } 094 095 public void setPrice(String price) { 096 this.price = price; 097 } 098 099 public String getVendorId() { 100 return vendorId; 101 } 102 103 public void setVendorId(String vendorId) { 104 this.vendorId = vendorId; 105 } 106 107 public String getPurposeId() { 108 return purposeId; 109 } 110 111 public void setPurposeId(String purposeId) { 112 this.purposeId = purposeId; 113 } 114 115 public String getOrderTypeId() { 116 return orderTypeId; 117 } 118 119 public void setOrderTypeId(String orderTypeId) { 120 this.orderTypeId = orderTypeId; 121 } 122 123 @Override 124 public Object clone() throws CloneNotSupportedException { 125 return super.clone(); 126 } 127 128 public String getInstanceId() { 129 return instanceId; 130 } 131 132 public void setInstanceId(String instanceId) { 133 this.instanceId = instanceId; 134 } 135 136 public String getInstanceFlag() { 137 return instanceFlag; 138 } 139 140 public void setInstanceFlag(String instanceFlag) { 141 this.instanceFlag = instanceFlag; 142 } 143 144 public String getBibId() { 145 return bibId; 146 } 147 148 public void setBibId(String bibId) { 149 this.bibId = bibId; 150 } 151 152 public String getRedirectUrl() { 153 String purchaseOrderLineItemIdentifier = this.getPoId().toString(); 154 if (purchaseOrderLineItemIdentifier != null && !"".equals(purchaseOrderLineItemIdentifier)) { 155 Map poNumber = new HashMap(); 156 poNumber.put(OLEConstants.PUR_DOC_IDENTIFIER, purchaseOrderLineItemIdentifier); 157 List<OlePurchaseOrderDocument> olePurchaseOrderDocumentList = (List) KRADServiceLocator.getBusinessObjectService().findMatching(OlePurchaseOrderDocument.class, poNumber); 158 for (OlePurchaseOrderDocument olePurchaseOrderDocument : olePurchaseOrderDocumentList) { 159 if (olePurchaseOrderDocument != null) { 160 boolean validPO = olePurchaseOrderDocument != null ? olePurchaseOrderDocument.getPurchaseOrderCurrentIndicatorForSearching() : false; 161 if (validPO) { 162 redirectUrl = ConfigContext.getCurrentContextConfig().getProperty("kew.url") + OLEConstants.PO_LINE_ITEM_URL + olePurchaseOrderDocument.getDocumentNumber(); 163 } 164 } 165 } 166 } 167 return redirectUrl; 168 } 169 170 public void setRedirectUrl(String redirectUrl) { 171 this.redirectUrl = redirectUrl; 172 } 173 174 public String getOleERSIdentifier() { 175 return oleERSIdentifier; 176 } 177 178 public void setOleERSIdentifier(String oleERSIdentifier) { 179 this.oleERSIdentifier = oleERSIdentifier; 180 } 181 182 public List<OLECretePOAccountingLine> getAccountingLines() { 183 return accountingLines; 184 } 185 186 public void setAccountingLines(List<OLECretePOAccountingLine> accountingLines) { 187 this.accountingLines = accountingLines; 188 } 189 190 public List<OleFundCode> getFundCodes() { 191 return fundCodes; 192 } 193 194 public void setFundCodes(List<OleFundCode> fundCodes) { 195 this.fundCodes = fundCodes; 196 } 197}