public class PromotableOrderItemImpl extends Object implements PromotableOrderItem
| Modifier and Type | Field and Description |
|---|---|
protected Map<String,Object> |
extraDataMap |
protected boolean |
includeAdjustments |
protected PromotableItemFactory |
itemFactory |
protected List<PromotableOrderItemPriceDetail> |
itemPriceDetails |
protected OrderItem |
orderItem |
protected PromotableOrder |
promotableOrder |
| Constructor and Description |
|---|
PromotableOrderItemImpl(OrderItem orderItem,
PromotableOrder promotableOrder,
PromotableItemFactory itemFactory,
boolean includeAdjustments) |
| Modifier and Type | Method and Description |
|---|---|
Money |
calculateTotalAdjustmentValue()
Returns the value of all adjustments.
|
Money |
calculateTotalWithAdjustments()
Returns the final total for this item taking into account the finalized
adjustments.
|
Money |
calculateTotalWithoutAdjustments()
Returns the total for this item if not adjustments applied.
|
PromotableOrderItemPriceDetail |
createNewDetail(int quantity)
Creates a new detail with the associated quantity.
|
BroadleafCurrency |
getCurrency()
Returns the currency of the related order.
|
Money |
getCurrentBasePrice()
Returns the basePrice of the item (baseSalePrice or baseRetailPrice)
|
Map<String,Object> |
getExtraDataMap()
Map available to implementations to store data needed for custom logic.
|
OrderItem |
getOrderItem()
Returns the underlying orderItem.
|
OrderItemContainer |
getOrderItemContainer()
Returns an OrderItemContainer for this OrderItem or null if this item is not
an instance of OrderItemContainer.
|
Long |
getOrderItemId()
Returns the id of the contained OrderItem
|
Money |
getPriceBeforeAdjustments(boolean applyToSalePrice)
Return the salePriceBeforeAdjustments if the passed in param is true.
|
List<PromotableOrderItemPriceDetail> |
getPromotableOrderItemPriceDetails()
Returns the list of priceDetails associated with this item.
|
int |
getQuantity()
Returns the quantity for this orderItem
|
Money |
getRetailPriceBeforeAdjustments()
Returns the retailPrice without adjustments
|
Money |
getSalePriceBeforeAdjustments()
Returns the salePrice without adjustments
|
boolean |
isDiscountingAllowed()
Returns true if this item can receive item level discounts.
|
boolean |
isOnSale()
Returns true if the item has a sale price that is lower than the retail price.
|
boolean |
isOrderItemContainer()
Returns true if this PromotableOrderItem contains other items
|
protected void |
mergeDetails(PromotableOrderItemPriceDetail firstDetail,
PromotableOrderItemPriceDetail secondDetail) |
void |
mergeLikeDetails()
Merges any priceDetails that share the same adjustments.
|
void |
removeAllItemAdjustments()
Effectively deletes all priceDetails associated with this item and r
|
void |
resetPriceDetails()
Called by pricing engine to reset the state of this item.
|
void |
updateRuleVariables(Map<String,Object> ruleVars)
Adds the item to the rule variables map.
|
protected PromotableOrder promotableOrder
protected OrderItem orderItem
protected PromotableItemFactory itemFactory
protected List<PromotableOrderItemPriceDetail> itemPriceDetails
protected boolean includeAdjustments
public PromotableOrderItemImpl(OrderItem orderItem, PromotableOrder promotableOrder, PromotableItemFactory itemFactory, boolean includeAdjustments)
public void resetPriceDetails()
PromotableOrderItemresetPriceDetails in interface PromotableOrderItempublic void updateRuleVariables(Map<String,Object> ruleVars)
updateRuleVariables in interface PromotableOrderItemruleVars - public boolean isDiscountingAllowed()
PromotableOrderItemisDiscountingAllowed in interface PromotableOrderItempublic boolean isOrderItemContainer()
PromotableOrderItemisOrderItemContainer in interface PromotableOrderItempublic OrderItemContainer getOrderItemContainer()
PromotableOrderItemgetOrderItemContainer in interface PromotableOrderItempublic List<PromotableOrderItemPriceDetail> getPromotableOrderItemPriceDetails()
PromotableOrderItemgetPromotableOrderItemPriceDetails in interface PromotableOrderItempublic Money getSalePriceBeforeAdjustments()
PromotableOrderItemgetSalePriceBeforeAdjustments in interface PromotableOrderItempublic Money getRetailPriceBeforeAdjustments()
PromotableOrderItemgetRetailPriceBeforeAdjustments in interface PromotableOrderItempublic Money getPriceBeforeAdjustments(boolean applyToSalePrice)
PromotableOrderItemgetPriceBeforeAdjustments in interface PromotableOrderItempublic Money getCurrentBasePrice()
PromotableOrderItemgetCurrentBasePrice in interface PromotableOrderItempublic int getQuantity()
PromotableOrderItemgetQuantity in interface PromotableOrderItempublic boolean isOnSale()
PromotableOrderItemisOnSale in interface PromotableOrderItempublic BroadleafCurrency getCurrency()
PromotableOrderItemgetCurrency in interface PromotableOrderItempublic void removeAllItemAdjustments()
PromotableOrderItemremoveAllItemAdjustments in interface PromotableOrderItemprotected void mergeDetails(PromotableOrderItemPriceDetail firstDetail, PromotableOrderItemPriceDetail secondDetail)
public void mergeLikeDetails()
PromotableOrderItemmergeLikeDetails in interface PromotableOrderItempublic Long getOrderItemId()
PromotableOrderItemgetOrderItemId in interface PromotableOrderItempublic Money calculateTotalWithAdjustments()
PromotableOrderItemcalculateTotalWithAdjustments in interface PromotableOrderItempublic Money calculateTotalWithoutAdjustments()
PromotableOrderItemcalculateTotalWithoutAdjustments in interface PromotableOrderItempublic Money calculateTotalAdjustmentValue()
PromotableOrderItemcalculateTotalAdjustmentValue in interface PromotableOrderItempublic PromotableOrderItemPriceDetail createNewDetail(int quantity)
PromotableOrderItemcreateNewDetail in interface PromotableOrderItempublic OrderItem getOrderItem()
PromotableOrderItemgetOrderItem in interface PromotableOrderItempublic Map<String,Object> getExtraDataMap()
PromotableOrderItemgetExtraDataMap in interface PromotableOrderItemCopyright © 2015. All Rights Reserved.