Table of Contents

Class LoyaltyService

Namespace
Dynamicweb.Ecommerce.Loyalty
Assembly
Dynamicweb.Ecommerce.dll
public class LoyaltyService : ICacheStorage<int, Reward>, ICacheStorage<int>, ICacheStorage
Inheritance
LoyaltyService
Implements
Inherited Members

Properties

AllowEarnPointsFromPurchasedPoints

Gets the value indicating whether the buying items with points should earn more points.

public virtual bool AllowEarnPointsFromPurchasedPoints { get; }

Property Value

bool

Info

Information about the object cache

public CacheInformation Info { get; }

Property Value

CacheInformation

Methods

ClearCache()

Resets all keys to the default value for objects stored in the object cache

public virtual void ClearCache()

ClearCache(IEnumerable<int>)

Resets the specified keys to the default value for objects stored in the object cache

public virtual void ClearCache(IEnumerable<int> keys)

Parameters

keys IEnumerable<int>

Keys to reset

ClearCache(int)

Resets the specified key to the default value for objects stored in the object cache

public virtual void ClearCache(int key)

Parameters

key int

Key to reset

ClearRewardRuleCache()

Remove all reward rules from cache.

public virtual void ClearRewardRuleCache()

ClearUserTransactionCache(int)

Remove user transactions from cache.

public virtual void ClearUserTransactionCache(int userId)

Parameters

userId int

CreateTransaction(UserTransaction)

Creates the user transaction

public virtual void CreateTransaction(UserTransaction transaction)

Parameters

transaction UserTransaction

The UserTransaction.

CreateTransaction(UserTransaction, OrderLine)

Creates the user transaction

public virtual void CreateTransaction(UserTransaction transaction, OrderLine orderLine)

Parameters

transaction UserTransaction

The UserTransaction.

orderLine OrderLine

The OrderLine.

CreateTransaction(UserTransaction, User?)

Creates the user transaction

public virtual void CreateTransaction(UserTransaction transaction, User? user)

Parameters

transaction UserTransaction

The UserTransaction.

user User

The User.

DeleteReward(Reward)

Deletes the reward.

public virtual void DeleteReward(Reward reward)

Parameters

reward Reward

DeleteRewardRule(RewardRule)

Deletes the instance.

public virtual void DeleteRewardRule(RewardRule rewardRule)

Parameters

rewardRule RewardRule

FindPoints(OrderLine)

Finds the points.

public virtual IPointInfo? FindPoints(OrderLine orderLine)

Parameters

orderLine OrderLine

The order line.

Returns

IPointInfo

The IPointInfo.

FindPoints(Product, Order, DateTime)

Finds the points.

public virtual ConditionPointInfo? FindPoints(Product product, Order order, DateTime orderTime)

Parameters

product Product

The product.

order Order

The order.

orderTime DateTime

The order time.

Returns

ConditionPointInfo

The IPointInfo.

FindPoints(Product, Order, DateTime, string)

Finds the points.

public virtual ConditionPointInfo? FindPoints(Product product, Order order, DateTime orderTime, string unitId)

Parameters

product Product

The product.

order Order

The order.

orderTime DateTime

The order time.

unitId string

The unit ID.

Returns

ConditionPointInfo

The IPointInfo.

GetPointsBalance(User)

Gets the transaction balance for user.

public virtual double GetPointsBalance(User user)

Parameters

user User

The user

Returns

double

GetPointsBalance(int)

Gets the transaction balance by user id.

public virtual double GetPointsBalance(int userId)

Parameters

userId int

The user id.

Returns

double

GetRewardById(int)

Gets reward by ID.

public virtual Reward? GetRewardById(int rewardId)

Parameters

rewardId int

The reward id.

Returns

Reward

The reward.

GetRewardRule(int, int)

Gets the reward rule.

public virtual RewardRule? GetRewardRule(int rewardId, int id)

Parameters

rewardId int

The reward id.

id int

The reward id.

Returns

RewardRule

The RewardRule.

GetRewardUsageCount(Reward)

Gets the count of the reward usage.

public virtual int GetRewardUsageCount(Reward reward)

Parameters

reward Reward

Returns

int

Number of the reward usage.

GetRewards()

Return all rewards.

public virtual IEnumerable<Reward> GetRewards()

Returns

IEnumerable<Reward>

GetRewardsGiven(IEnumerable<Reward>)

Gets the points given for the specified list of rewards.

public virtual IEnumerable<RewardPointsGiven> GetRewardsGiven(IEnumerable<Reward> rewards)

Parameters

rewards IEnumerable<Reward>

The rewards.

Returns

IEnumerable<RewardPointsGiven>

IEnumerable(Of RewardPointsGiven).

GetRulesForReward(int)

Gets rules for the reward id.

public virtual IEnumerable<RewardRule> GetRulesForReward(int rewardId)

Parameters

rewardId int

The reward id.

Returns

IEnumerable<RewardRule>

GetTotalPoints(Reward, double, double, double)

Gets the total points.

public virtual double GetTotalPoints(Reward reward, double productsPrice, double productsCount, double divisor)

Parameters

reward Reward
productsPrice double

The products price.

productsCount double

The products count.

divisor double

The divisor.

Returns

double

The total points.

GetUserTransactions(int)

Gets the collection of the user transactions by user id.

public virtual IEnumerable<UserTransaction> GetUserTransactions(int userId)

Parameters

userId int

The user id.

Returns

IEnumerable<UserTransaction>

LoadRewardsFromUserTransaction(IEnumerable<UserTransaction>)

Loads the rewards from the user transaction collection.

public virtual void LoadRewardsFromUserTransaction(IEnumerable<UserTransaction> userTransactions)

Parameters

userTransactions IEnumerable<UserTransaction>

The collection of user transactions.

RedeemExpiredPoints()

public virtual void RedeemExpiredPoints()

RedeemPoints(Order)

Redeem points from Order.

public virtual void RedeemPoints(Order order)

Parameters

order Order

The Order.

RedeemPoints(double, string, int)

Redeem points.

public virtual void RedeemPoints(double points, string comment, int userId)

Parameters

points double

The number of points.

comment string

The comment for transaction.

userId int

The user id.

RedeemPoints(double, string, int, DateTime)

Redeem points.

public virtual void RedeemPoints(double points, string comment, int userId, DateTime transactionDate)

Parameters

points double

The number of points.

comment string

The comment for transaction.

userId int

The user id.

transactionDate DateTime

The transaction date.

RedeemPoints(double, string, int, DateTime, TransactionObjectType, string)

public virtual void RedeemPoints(double points, string comment, int userId, DateTime transactionDate, TransactionObjectType transactionType, string transactionElement)

Parameters

points double
comment string
userId int
transactionDate DateTime
transactionType TransactionObjectType
transactionElement string

RewardPoints(Order)

Reward points from order lines on an order.

public virtual void RewardPoints(Order order)

Parameters

order Order

The order.

RewardPoints(double, string, int)

Reward points.

public virtual void RewardPoints(double points, string comment, int userId)

Parameters

points double

The number of points.

comment string

The comment for transaction.

userId int

The user id.

SaveReward(Reward)

Saves current reward to the database.

public virtual void SaveReward(Reward reward)

Parameters

reward Reward

SaveRewardRule(RewardRule)

Saves the instance to the data base.

public virtual void SaveRewardRule(RewardRule rewardRule)

Parameters

rewardRule RewardRule

SetCacheType<TObjectCache>()

Changes the storage container

public void SetCacheType<TObjectCache>() where TObjectCache : ServiceCache<int, Reward>

Type Parameters

TObjectCache

TryUpdateRewards(Order)

Tries to update rewards.

public virtual void TryUpdateRewards(Order order)

Parameters

order Order

The order.

UsePoints(Order)

Redeem points from Order and exchange points in case of Loyalty discount is used.

public virtual void UsePoints(Order order)

Parameters

order Order

The Order.

To top