public async Task <PagedResult <ProductPrice> > GetActivePrices(IEnumerable <long> productIds, long?catalogId, IEnumerable <long> affiliationLoyaltyTierIds, QueryResultSettings queryResultSettings) { IProductManager manager = Utilities.GetManagerFactory(this.EcommerceContext).GetManager <IProductManager>(); long channelId = await Utilities.GetChannelId(this.EcommerceContext); ProjectionDomain projectionDomain = new ProjectionDomain { ChannelId = channelId, CatalogId = catalogId }; IList <AffiliationLoyaltyTier> tiers = null; if (affiliationLoyaltyTierIds != null) { tiers = new List <AffiliationLoyaltyTier>(); foreach (long affiliationLoyaltyTierId in affiliationLoyaltyTierIds) { tiers.Add(new AffiliationLoyaltyTier { AffiliationId = affiliationLoyaltyTierId }); } } PagedResult <ProductPrice> productPrices = await manager.GetActivePrices(projectionDomain, productIds, DateTimeOffset.UtcNow, null, tiers, queryResultSettings); return(productPrices); }
public Task <PagedResult <ProductPrice> > GetIndependentProductPriceDiscount( ProjectionDomain projectDomain, IEnumerable <long> productIds, string customerId, IEnumerable <AffiliationLoyaltyTier> affiliationLoyaltyTiers, QueryResultSettings queryResultSettings) { return(Task.Run(() => Runtime.Client.ProductManager.Create(CommerceRuntimeManager.Runtime).GetIndependentProductPriceDiscount( projectDomain, productIds, customerId, queryResultSettings, affiliationLoyaltyTiers))); }