org.broadleafcommerce.core.offer.service.processor
Class FulfillmentGroupOfferProcessorImpl
java.lang.Object
org.broadleafcommerce.core.offer.service.processor.AbstractBaseProcessor
org.broadleafcommerce.core.offer.service.processor.OrderOfferProcessorImpl
org.broadleafcommerce.core.offer.service.processor.FulfillmentGroupOfferProcessorImpl
- All Implemented Interfaces:
- BaseProcessor, FulfillmentGroupOfferProcessor, OrderOfferProcessor
@Service(value="blFulfillmentGroupOfferProcessor")
public class FulfillmentGroupOfferProcessorImpl
- extends OrderOfferProcessorImpl
- implements FulfillmentGroupOfferProcessor
- Author:
- jfischer
| Methods inherited from class org.broadleafcommerce.core.offer.service.processor.OrderOfferProcessorImpl |
applyAllOrderOffers, applyOrderOffer, compareAndAdjustOrderAndItemOffers, compileOrderTotal, couldOfferApplyToOrder, couldOfferApplyToOrder, couldOfferApplyToOrder, couldOfferApplyToOrder, createCandidateOrderOffer, filterOrderLevelOffer, getOfferDao, getOrderItemMergeService, getPromotableItemFactory, removeTrailingNotCombinableOrderOffers, setOfferDao, setOrderItemMergeService, setPromotableItemFactory |
| Methods inherited from class org.broadleafcommerce.core.offer.service.processor.AbstractBaseProcessor |
checkForItemRequirements, clearAllNonFinalizedQuantities, clearOffersandAdjustments, couldOfferApplyToCustomer, couldOfferApplyToOrderItems, couldOrderItemMeetOfferRequirement, executeExpression, filterOffers, finalizeQuantities, meetsItemQualifierSubtotal, removeInvalidCustomerOffers, removeOutOfDateOffers |
| 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 |
applyAllOrderOffers, compileOrderTotal, couldOfferApplyToOrder, executeExpression, filterOrderLevelOffer, getOfferDao, getOrderItemMergeService, getPromotableItemFactory, removeTrailingNotCombinableOrderOffers, setOfferDao, setOrderItemMergeService, setPromotableItemFactory |
FulfillmentGroupOfferProcessorImpl
public FulfillmentGroupOfferProcessorImpl()
filterFulfillmentGroupLevelOffer
public void filterFulfillmentGroupLevelOffer(PromotableOrder order,
List<PromotableCandidateFulfillmentGroupOffer> qualifiedFGOffers,
Offer offer)
- Specified by:
filterFulfillmentGroupLevelOffer in interface FulfillmentGroupOfferProcessor
calculateFulfillmentGroupTotal
public void calculateFulfillmentGroupTotal(PromotableOrder order)
- Specified by:
calculateFulfillmentGroupTotal in interface FulfillmentGroupOfferProcessor
couldOfferApplyToFulfillmentGroup
protected boolean couldOfferApplyToFulfillmentGroup(Offer offer,
PromotableFulfillmentGroup fulfillmentGroup)
createCandidateFulfillmentGroupOffer
protected PromotableCandidateFulfillmentGroupOffer createCandidateFulfillmentGroupOffer(Offer offer,
List<PromotableCandidateFulfillmentGroupOffer> qualifiedFGOffers,
PromotableFulfillmentGroup fulfillmentGroup)
applyAllFulfillmentGroupOffers
public boolean applyAllFulfillmentGroupOffers(List<PromotableCandidateFulfillmentGroupOffer> qualifiedFGOffers,
PromotableOrder order)
- Description copied from interface:
FulfillmentGroupOfferProcessor
- 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.
- Specified by:
applyAllFulfillmentGroupOffers in interface FulfillmentGroupOfferProcessor
- Parameters:
qualifiedFGOffers - a sorted list of CandidateOrderOfferorder - the Order to apply the CandidateOrderOffers
- Returns:
- true if order offer applied; otherwise false
compareAndAdjustFulfillmentGroupOffers
protected boolean compareAndAdjustFulfillmentGroupOffers(PromotableOrder order,
boolean fgOfferApplied)
applyFulfillmentGroupOffer
protected void applyFulfillmentGroupOffer(PromotableCandidateFulfillmentGroupOffer fulfillmentGroupOffer)
removeTrailingNotCombinableFulfillmentGroupOffers
public List<FulfillmentGroupOfferPotential> removeTrailingNotCombinableFulfillmentGroupOffers(List<FulfillmentGroupOfferPotential> candidateOffers)
- Specified by:
removeTrailingNotCombinableFulfillmentGroupOffers in interface FulfillmentGroupOfferProcessor
Copyright © 2012. All Rights Reserved.