SaaS CMS has officially launched! Learn more now.

Class EntryDiscountCalculation

This class is intended to be used internally by EPiServer. We do not support any backward compatibility on this.

Inheritance
System.Object
EntryDiscountCalculation
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: EPiServer.Commerce.Marketing.Internal
Assembly: EPiServer.Business.Commerce.dll
Version: 11.8.3
Syntax
public class EntryDiscountCalculation : PriceCalculationBase

Constructors

EntryDiscountCalculation()

Declaration
public EntryDiscountCalculation()

Methods

ApplyDiscount(IEnumerable<PriceEntry>, Decimal, Decimal)

Apply a money-off discount on the entries.

Declaration
public decimal ApplyDiscount(IEnumerable<PriceEntry> entries, decimal totalAmount, decimal discountAmount)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<PriceEntry> entries

The entries to be discounted.

System.Decimal totalAmount

The initial total cost of the entries.

System.Decimal discountAmount

The amount to discount per single unit.

Returns
Type Description
System.Decimal

The saved amount, 0 if no discount was applied.

ApplyFixedPrice(IEnumerable<PriceEntry>, Decimal, Decimal, Currency)

Apply a fixed-price discount on the entries.

Declaration
public decimal ApplyFixedPrice(IEnumerable<PriceEntry> entries, decimal totalAmount, decimal fixedPrice, Currency currency)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<PriceEntry> entries

The entries to get at the fixed price.

System.Decimal totalAmount

The initial total cost of the entries.

System.Decimal fixedPrice

The discounted total cost to apply to the entries.

Currency currency

The currency to use for rounding rules.

Returns
Type Description
System.Decimal

The saved amount, 0 if no discount was applied. This will happen if totalAmount is less than the fixedPrice.

ApplyFreeItems(IEnumerable<PriceEntry>, Decimal)

Apply a "free item" type discount on the entries.

Declaration
public decimal ApplyFreeItems(IEnumerable<PriceEntry> entries, decimal totalAmount)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<PriceEntry> entries

The entries to receive as free.

System.Decimal totalAmount

The initial total cost of the entries.

Returns
Type Description
System.Decimal

The saved amount, 0 if discount was not applied. This will happen if all entries are already free.

ApplyPercentage(IEnumerable<PriceEntry>, Decimal, Decimal, Currency)

Apply a percent-off discount on the entries.

Declaration
public decimal ApplyPercentage(IEnumerable<PriceEntry> entries, decimal totalAmount, decimal percent, Currency currency)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<PriceEntry> entries

The entries to be discounted.

System.Decimal totalAmount

The initial total cost of the entries.

System.Decimal percent

The percentage for the discount. Note that this should be given in the 0 - 100 range, and not as a fractional value.

Currency currency

The currency to use for rounding rules.

Returns
Type Description
System.Decimal

The saved amount, 0 if no discount was applied.