|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.broadleafcommerce.core.offer.service.processor.AbstractBaseProcessor
org.broadleafcommerce.core.offer.service.processor.OrderOfferProcessorImpl
@Service(value="blOrderOfferProcessor") public class OrderOfferProcessorImpl
| Field Summary | |
|---|---|
protected OfferDao |
offerDao
|
protected OfferServiceUtilities |
offerServiceUtilities
|
protected OrderItemDao |
orderItemDao
|
protected PromotableItemFactory |
promotableItemFactory
|
| Fields inherited from class org.broadleafcommerce.core.offer.service.processor.AbstractBaseProcessor |
|---|
extensionManager, offerTimeZoneProcessor |
| Constructor Summary | |
|---|---|
OrderOfferProcessorImpl()
|
|
| Method Summary | |
|---|---|
void |
applyAllOrderOffers(List<PromotableCandidateOrderOffer> orderOffers,
PromotableOrder promotableOrder)
Takes a list of sorted CandidateOrderOffers and determines if each offer can be applied based on the restrictions (stackable and/or combinable) on that offer. |
protected void |
applyOrderOffer(PromotableOrder promotableOrder,
PromotableCandidateOrderOffer orderOffer)
Private method used by applyAllOrderOffers to create an OrderAdjustment from a CandidateOrderOffer and associates the OrderAdjustment to the Order. |
protected String |
buildItemPriceDetailKey(OrderItemPriceDetail itemDetail)
|
protected Map<Long,PromotableFulfillmentGroupAdjustment> |
buildPromFulfillmentAdjMap(PromotableFulfillmentGroup fg)
|
protected Map<String,PromotableOrderItemPriceDetail> |
buildPromotableDetailsMap(PromotableOrderItem item)
|
protected Map<Long,PromotableFulfillmentGroup> |
buildPromotableFulfillmentGroupMap(PromotableOrder order)
|
protected Map<Long,PromotableOrderAdjustment> |
buildPromotableOrderAdjustmentsMap(PromotableOrder promotableOrder)
|
protected Map<Long,PromotionQualifier> |
buildPromotableQualifiersMap(PromotableOrderItem item)
|
protected void |
compareAndAdjustOrderAndItemOffers(PromotableOrder promotableOrder)
Called when the system must determine whether to apply order or item adjustments. |
boolean |
couldOfferApplyToOrder(Offer offer,
PromotableOrder promotableOrder)
Executes the appliesToOrderRules in the Offer to determine if this offer can be applied to the Order, OrderItem, or FulfillmentGroup. |
protected boolean |
couldOfferApplyToOrder(Offer offer,
PromotableOrder promotableOrder,
PromotableFulfillmentGroup fulfillmentGroup)
Private method which executes the appliesToOrderRules in the Offer to determine if this offer can be applied to the Order, OrderItem, or FulfillmentGroup. |
protected boolean |
couldOfferApplyToOrder(Offer offer,
PromotableOrder promotableOrder,
PromotableOrderItem orderItem)
Private method which executes the appliesToOrderRules in the Offer to determine if this offer can be applied to the Order, OrderItem, or FulfillmentGroup. |
protected boolean |
couldOfferApplyToOrder(Offer offer,
PromotableOrder promotableOrder,
PromotableOrderItem promotableOrderItem,
PromotableFulfillmentGroup promotableFulfillmentGroup)
Private method which executes the appliesToOrderRules in the Offer to determine if this offer can be applied to the Order, OrderItem, or FulfillmentGroup. |
protected PromotableCandidateOrderOffer |
createCandidateOrderOffer(PromotableOrder promotableOrder,
List<PromotableCandidateOrderOffer> qualifiedOrderOffers,
Offer offer)
|
void |
filterOrderLevelOffer(PromotableOrder promotableOrder,
List<PromotableCandidateOrderOffer> qualifiedOrderOffers,
Offer offer)
|
OfferServiceUtilities |
getOfferServiceUtilities()
|
PromotableItemFactory |
getPromotableItemFactory()
|
protected void |
processMatchingDetails(OrderItemPriceDetail itemDetail,
PromotableOrderItemPriceDetail promotableItemDetail)
|
List<PromotableCandidateOrderOffer> |
removeTrailingNotCombinableOrderOffers(List<PromotableCandidateOrderOffer> candidateOffers)
|
void |
setOfferDao(OfferDao offerDao)
Set the offerDao (primarily for unit testing) |
void |
setOfferServiceUtilities(OfferServiceUtilities offerServiceUtilities)
|
void |
setOrderItemDao(OrderItemDao orderItemDao)
Set the orderItemDao (primarily for unit testing) |
void |
setPromotableItemFactory(PromotableItemFactory promotableItemFactory)
|
void |
synchronizeAdjustmentsAndPrices(PromotableOrder promotableOrder)
Takes the adjustments and PriceDetails from the passed in PromotableOrder and transfers them to the actual order first checking to see if they already exist. |
protected void |
synchronizeFulfillmentGroupAdjustments(FulfillmentGroup fg,
PromotableFulfillmentGroup promotableFG)
|
protected void |
synchronizeFulfillmentGroups(PromotableOrder promotableOrder)
|
protected void |
synchronizeItemPriceDetails(OrderItem orderItem,
PromotableOrderItem promotableOrderItem)
|
protected void |
synchronizeItemQualifiers(OrderItem orderItem,
PromotableOrderItem promotableOrderItem)
|
protected void |
synchronizeOrderAdjustments(PromotableOrder promotableOrder)
|
protected void |
synchronizeOrderItems(PromotableOrder promotableOrder)
|
| Methods inherited from class org.broadleafcommerce.core.offer.service.processor.AbstractBaseProcessor |
|---|
checkForItemRequirements, clearAllNonFinalizedQuantities, couldOfferApplyToCustomer, couldOfferApplyToOrderItems, couldOfferApplyToRequestDTO, couldOfferApplyToTimePeriod, couldOrderItemMeetOfferRequirement, executeExpression, filterOffers, finalizeQuantities, getOfferTimeZoneProcessor, meetsItemQualifierSubtotal, removeInvalidCustomerOffers, removeInvalidRequestOffers, removeOutOfDateOffers, removeTimePeriodOffers, setOfferTimeZoneProcessor, splitDetailsIfNecessary |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.broadleafcommerce.core.offer.service.processor.OrderOfferProcessor |
|---|
executeExpression |
| Methods inherited from interface org.broadleafcommerce.core.offer.service.processor.BaseProcessor |
|---|
filterOffers |
| Field Detail |
|---|
protected PromotableItemFactory promotableItemFactory
protected OrderItemDao orderItemDao
protected OfferDao offerDao
protected OfferServiceUtilities offerServiceUtilities
| Constructor Detail |
|---|
public OrderOfferProcessorImpl()
| Method Detail |
|---|
public void filterOrderLevelOffer(PromotableOrder promotableOrder,
List<PromotableCandidateOrderOffer> qualifiedOrderOffers,
Offer offer)
filterOrderLevelOffer in interface OrderOfferProcessor
public boolean couldOfferApplyToOrder(Offer offer,
PromotableOrder promotableOrder)
OrderOfferProcessor
couldOfferApplyToOrder in interface OrderOfferProcessor
protected boolean couldOfferApplyToOrder(Offer offer,
PromotableOrder promotableOrder,
PromotableOrderItem orderItem)
offer - order - orderItem -
protected boolean couldOfferApplyToOrder(Offer offer,
PromotableOrder promotableOrder,
PromotableFulfillmentGroup fulfillmentGroup)
offer - order - fulfillmentGroup -
protected boolean couldOfferApplyToOrder(Offer offer,
PromotableOrder promotableOrder,
PromotableOrderItem promotableOrderItem,
PromotableFulfillmentGroup promotableFulfillmentGroup)
offer - order - promotableOrderItem - promotableFulfillmentGroup -
protected PromotableCandidateOrderOffer createCandidateOrderOffer(PromotableOrder promotableOrder,
List<PromotableCandidateOrderOffer> qualifiedOrderOffers,
Offer offer)
public List<PromotableCandidateOrderOffer> removeTrailingNotCombinableOrderOffers(List<PromotableCandidateOrderOffer> candidateOffers)
removeTrailingNotCombinableOrderOffers in interface OrderOfferProcessor
public void applyAllOrderOffers(List<PromotableCandidateOrderOffer> orderOffers,
PromotableOrder promotableOrder)
OrderOfferProcessor
applyAllOrderOffers in interface OrderOfferProcessororderOffers - a sorted list of CandidateOrderOfferprotected void compareAndAdjustOrderAndItemOffers(PromotableOrder promotableOrder)
promotableOrder - orderOffersApplied -
protected void applyOrderOffer(PromotableOrder promotableOrder,
PromotableCandidateOrderOffer orderOffer)
orderOffer - a CandidateOrderOffer to apply to an Orderpublic PromotableItemFactory getPromotableItemFactory()
getPromotableItemFactory in interface OrderOfferProcessorpublic void setPromotableItemFactory(PromotableItemFactory promotableItemFactory)
setPromotableItemFactory in interface OrderOfferProcessorprotected Map<Long,PromotableOrderAdjustment> buildPromotableOrderAdjustmentsMap(PromotableOrder promotableOrder)
protected void synchronizeOrderAdjustments(PromotableOrder promotableOrder)
protected void synchronizeOrderItems(PromotableOrder promotableOrder)
protected void synchronizeItemPriceDetails(OrderItem orderItem,
PromotableOrderItem promotableOrderItem)
protected void synchronizeItemQualifiers(OrderItem orderItem,
PromotableOrderItem promotableOrderItem)
protected void processMatchingDetails(OrderItemPriceDetail itemDetail,
PromotableOrderItemPriceDetail promotableItemDetail)
protected String buildItemPriceDetailKey(OrderItemPriceDetail itemDetail)
protected Map<String,PromotableOrderItemPriceDetail> buildPromotableDetailsMap(PromotableOrderItem item)
protected Map<Long,PromotionQualifier> buildPromotableQualifiersMap(PromotableOrderItem item)
protected void synchronizeFulfillmentGroups(PromotableOrder promotableOrder)
protected Map<Long,PromotableFulfillmentGroup> buildPromotableFulfillmentGroupMap(PromotableOrder order)
protected Map<Long,PromotableFulfillmentGroupAdjustment> buildPromFulfillmentAdjMap(PromotableFulfillmentGroup fg)
protected void synchronizeFulfillmentGroupAdjustments(FulfillmentGroup fg,
PromotableFulfillmentGroup promotableFG)
public void synchronizeAdjustmentsAndPrices(PromotableOrder promotableOrder)
OrderOfferProcessor
synchronizeAdjustmentsAndPrices in interface OrderOfferProcessorpublic void setOfferDao(OfferDao offerDao)
OrderOfferProcessor
setOfferDao in interface OrderOfferProcessorpublic void setOrderItemDao(OrderItemDao orderItemDao)
OrderOfferProcessor
setOrderItemDao in interface OrderOfferProcessorpublic OfferServiceUtilities getOfferServiceUtilities()
public void setOfferServiceUtilities(OfferServiceUtilities offerServiceUtilities)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||