Try our conversational search powered by Generative AI!

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: 13.30.0
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.

ApplyDiscountIndividually(IEnumerable<PriceEntry>, Decimal, Decimal)

Apply a percent-off discount on the entries. It takes the percentage discount for an individual unit and then it works like an amount-off discount.

Declaration
public decimal ApplyDiscountIndividually(IEnumerable<PriceEntry> entries, decimal totalAmount, decimal percent)
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.

Returns
Type Description
System.Decimal

The saved amount, 0 if no discount was applied.

ApplyFixedPrice(IEnumerable<PriceEntry>, Decimal, Decimal)

Apply a fixed-price discount on the entries.

Declaration
public decimal ApplyFixedPrice(IEnumerable<PriceEntry> entries, decimal totalAmount, decimal fixedPrice)
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.

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)

Apply a percent-off discount on the entries.

Declaration
public decimal ApplyPercentage(IEnumerable<PriceEntry> entries, decimal totalAmount, decimal percent)
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.

Returns
Type Description
System.Decimal

The saved amount, 0 if no discount was applied.