Class BuyQuantityGetOrderDiscountProcessor

The processor responsible for evaluating if a promotion of type BuyQuantityGetOrderDiscount should apply a reward to an order group.

Inheritance
System.Object
BuyQuantityGetOrderDiscountProcessor
Implements
Namespace: EPiServer.Commerce.Marketing.Promotions
Assembly: EPiServer.Business.Commerce.dll
Version: 10.8.0
Syntax
public class BuyQuantityGetOrderDiscountProcessor : OrderPromotionProcessorBase<BuyQuantityGetOrderDiscount>, IPromotionProcessor

Constructors

BuyQuantityGetOrderDiscountProcessor(FulfillmentEvaluator, CollectionTargetEvaluator, LocalizationService)

Declaration
public BuyQuantityGetOrderDiscountProcessor(FulfillmentEvaluator fulfillmentEvaluator, CollectionTargetEvaluator targetEvaluator, LocalizationService localizationService)
Parameters
Type Name Description
FulfillmentEvaluator fulfillmentEvaluator
CollectionTargetEvaluator targetEvaluator
EPiServer.Framework.Localization.LocalizationService localizationService

Methods

CanBeFulfilled(BuyQuantityGetOrderDiscount, PromotionProcessorContext)

Declaration
protected override bool CanBeFulfilled(BuyQuantityGetOrderDiscount promotion, PromotionProcessorContext context)
Parameters
Type Name Description
BuyQuantityGetOrderDiscount promotion
PromotionProcessorContext context
Returns
Type Description
System.Boolean
Overrides
EPiServer.Commerce.Marketing.PromotionProcessorBase<EPiServer.Commerce.Marketing.Promotions.BuyQuantityGetOrderDiscount>.CanBeFulfilled(EPiServer.Commerce.Marketing.Promotions.BuyQuantityGetOrderDiscount, EPiServer.Commerce.Marketing.PromotionProcessorContext)

Evaluate(BuyQuantityGetOrderDiscount, PromotionProcessorContext)

Evaluates the "Buy quantity get order discount" promotion.

Declaration
protected override RewardDescription Evaluate(BuyQuantityGetOrderDiscount promotionData, PromotionProcessorContext context)
Parameters
Type Name Description
BuyQuantityGetOrderDiscount promotionData

The promotion model.

PromotionProcessorContext context

The context for the promotion processor evaluation.

Returns
Type Description
RewardDescription

The reward for this promotion.

Overrides
EPiServer.Commerce.Marketing.PromotionProcessorBase<EPiServer.Commerce.Marketing.Promotions.BuyQuantityGetOrderDiscount>.Evaluate(EPiServer.Commerce.Marketing.Promotions.BuyQuantityGetOrderDiscount, EPiServer.Commerce.Marketing.PromotionProcessorContext)
Remarks

Note that the reward can be a percentage off or money off the total order amount. Since this is an order level promotion we will always return ONE redemption.

GetPromotionItems(BuyQuantityGetOrderDiscount)

Declaration
protected override PromotionItems GetPromotionItems(BuyQuantityGetOrderDiscount promotionData)
Parameters
Type Name Description
BuyQuantityGetOrderDiscount promotionData
Returns
Type Description
PromotionItems
Overrides
EPiServer.Commerce.Marketing.PromotionProcessorBase<EPiServer.Commerce.Marketing.Promotions.BuyQuantityGetOrderDiscount>.GetPromotionItems(EPiServer.Commerce.Marketing.Promotions.BuyQuantityGetOrderDiscount)

NotFulfilledRewardDescription(BuyQuantityGetOrderDiscount, PromotionProcessorContext, FulfillmentStatus)

Declaration
protected override RewardDescription NotFulfilledRewardDescription(BuyQuantityGetOrderDiscount promotionData, PromotionProcessorContext context, FulfillmentStatus fulfillmentStatus)
Parameters
Type Name Description
BuyQuantityGetOrderDiscount promotionData
PromotionProcessorContext context
FulfillmentStatus fulfillmentStatus
Returns
Type Description
RewardDescription
Overrides
EPiServer.Commerce.Marketing.PromotionProcessorBase<EPiServer.Commerce.Marketing.Promotions.BuyQuantityGetOrderDiscount>.NotFulfilledRewardDescription(EPiServer.Commerce.Marketing.Promotions.BuyQuantityGetOrderDiscount, EPiServer.Commerce.Marketing.PromotionProcessorContext, EPiServer.Commerce.Marketing.FulfillmentStatus)

Implements