/* * The Kuali Financial System, a comprehensive financial management system for higher education. * * Copyright 2005-2014 The Kuali Foundation * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ package org.kuali.kfs.module.purap.businessobject; import java.math.BigDecimal; import java.util.List; import org.apache.ojb.broker.PersistenceBrokerAware; import org.kuali.kfs.integration.purap.ExternalPurApItem; import org.kuali.kfs.module.purap.document.PurchasingAccountsPayableDocument; import org.kuali.rice.core.api.util.type.KualiDecimal; import org.kuali.rice.krad.bo.PersistableBusinessObject; /** * Purap Item Business Object. */ public interface PurApItem extends PersistableBusinessObject, PersistenceBrokerAware, PurapEnterableItem, ExternalPurApItem { public abstract Integer getItemIdentifier(); public abstract void setItemIdentifier(Integer ItemIdentifier); public abstract Integer getItemLineNumber(); public abstract void setItemLineNumber(Integer itemLineNumber); public abstract String getItemUnitOfMeasureCode(); public abstract void setItemUnitOfMeasureCode(String itemUnitOfMeasureCode); public abstract String getItemCatalogNumber(); public abstract void setItemCatalogNumber(String itemCatalogNumber); public abstract String getItemDescription(); public abstract void setItemDescription(String itemDescription); public abstract BigDecimal getItemUnitPrice(); public abstract void setItemUnitPrice(BigDecimal itemUnitPrice); public abstract String getItemTypeCode(); public abstract void setItemTypeCode(String itemTypeCode); public abstract String getItemAuxiliaryPartIdentifier(); public abstract void setItemAuxiliaryPartIdentifier(String itemAuxiliaryPartIdentifier); public abstract String getExternalOrganizationB2bProductReferenceNumber(); public abstract void setExternalOrganizationB2bProductReferenceNumber(String externalOrganizationB2bProductReferenceNumber); public abstract String getExternalOrganizationB2bProductTypeName(); public abstract void setExternalOrganizationB2bProductTypeName(String externalOrganizationB2bProductTypeName); public abstract boolean getItemAssignedToTradeInIndicator(); public abstract void setItemAssignedToTradeInIndicator(boolean itemAssignedToTradeInIndicator); public abstract ItemType getItemType(); /** * Sets the itemType attribute. * * @param itemType The itemType to set. * @deprecated */ public abstract void setItemType(ItemType itemType); /** * This method resets the transient new account method */ public void resetAccount(); public KualiDecimal getExtendedPrice(); public KualiDecimal getTotalAmount(); public void setTotalAmount(KualiDecimal totalAmount); /** * gets the total amount to remit to a vendor * @return pre tax total if use tax post tax if sales */ public KualiDecimal getTotalRemitAmount(); public KualiDecimal calculateExtendedPrice(); public void setExtendedPrice(KualiDecimal extendedPrice); public KualiDecimal getItemTaxAmount(); public void setItemTaxAmount(KualiDecimal itemTaxAmount); public PurApAccountingLine getNewSourceLine(); public void setNewSourceLine(PurApAccountingLine newAccountingLine); public abstract Class getAccountingLineClass(); public abstract Class getUseTaxClass(); public List<PurApAccountingLine> getSourceAccountingLines(); public void setSourceAccountingLines(List<PurApAccountingLine> purapAccountingLines); public List<PurApAccountingLine> getBaselineSourceAccountingLines(); public List<PurApItemUseTax> getUseTaxItems(); public void setUseTaxItems(List<PurApItemUseTax> useTaxItems); public KualiDecimal getItemQuantity(); public void setItemQuantity(KualiDecimal itemQuantity); public String getItemIdentifierString(); public PurApSummaryItem getSummaryItem(); public <T extends PurchasingAccountsPayableDocument> T getPurapDocument(); public void setPurapDocument(PurchasingAccountsPayableDocument purapDoc); public Integer getPurapDocumentIdentifier(); public void setPurapDocumentIdentifier(Integer purapDocumentIdentifier); public void fixAccountReferences(); }