org.broadleafcommerce.core.offer.service.processor
Interface FulfillmentGroupOfferProcessor

All Superinterfaces:
BaseProcessor, OrderOfferProcessor
All Known Implementing Classes:
FulfillmentGroupOfferProcessorImpl

public interface FulfillmentGroupOfferProcessor
extends OrderOfferProcessor

Author:
jfischer

Method Summary
 boolean applyAllFulfillmentGroupOffers(List<PromotableCandidateFulfillmentGroupOffer> qualifiedFGOffers, PromotableOrder order)
          Private method that 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.
 void calculateFulfillmentGroupTotal(PromotableOrder order)
           
 void filterFulfillmentGroupLevelOffer(PromotableOrder order, List<PromotableCandidateFulfillmentGroupOffer> qualifiedFGOffers, Offer offer)
           
 List<FulfillmentGroupOfferPotential> removeTrailingNotCombinableFulfillmentGroupOffers(List<FulfillmentGroupOfferPotential> candidateOffers)
           
 
Methods inherited from interface org.broadleafcommerce.core.offer.service.processor.OrderOfferProcessor
applyAllOrderOffers, couldOfferApplyToOrder, executeExpression, filterOrderLevelOffer, getPromotableItemFactory, removeTrailingNotCombinableOrderOffers, setOfferDao, setOrderItemDao, setPromotableItemFactory, synchronizeAdjustmentsAndPrices
 
Methods inherited from interface org.broadleafcommerce.core.offer.service.processor.BaseProcessor
filterOffers
 

Method Detail

filterFulfillmentGroupLevelOffer

void filterFulfillmentGroupLevelOffer(PromotableOrder order,
                                      List<PromotableCandidateFulfillmentGroupOffer> qualifiedFGOffers,
                                      Offer offer)

calculateFulfillmentGroupTotal

void calculateFulfillmentGroupTotal(PromotableOrder order)

applyAllFulfillmentGroupOffers

boolean applyAllFulfillmentGroupOffers(List<PromotableCandidateFulfillmentGroupOffer> qualifiedFGOffers,
                                       PromotableOrder order)
Private method that 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. OrderAdjustments are create on the Order for each applied CandidateOrderOffer. An offer with stackable equals false cannot be applied to an Order that already contains an OrderAdjustment. An offer with combinable equals false cannot be applied to the Order if the Order already contains an OrderAdjustment.

Parameters:
qualifiedFGOffers - a sorted list of CandidateOrderOffer
order - the Order to apply the CandidateOrderOffers
Returns:
true if order offer applied; otherwise false

removeTrailingNotCombinableFulfillmentGroupOffers

List<FulfillmentGroupOfferPotential> removeTrailingNotCombinableFulfillmentGroupOffers(List<FulfillmentGroupOfferPotential> candidateOffers)


Copyright © 2013. All Rights Reserved.