Esempio n. 1
0
        public async Task <ProductsCompareModel> GetProductCompareViewData(params string[] products)
        {
            if (products is null || products.Length == 0)
            {
                return(null);
            }

            var compareProducts = await _accessManager.Filter(_productDataService.Query)
                                  .Where(x => products.Contains(x.Url))
                                  .Include(x => x.Fields)
                                  .Include(x => x.Pictures)
                                  .ToListAsync();

            if (!AllProductHasSameSchemeAndCat(compareProducts))
            {
                return(null);
            }

            var retVal = new ProductsCompareModel
            {
                Products        = compareProducts,
                Scheme          = await _schemeDataService.GetAsync(compareProducts.First().SchemeId),
                PrimaryCategory = await _productCategoryDataService.GetAsync(compareProducts.First().PrimaryCategoryId)
            };

            retVal.Products.ForEach(FetchAvalailbleDiscounts);

            return(retVal);
        }
Esempio n. 2
0
 public static ProductsCompareModelLiquidVeiwModel MapToLiquidViewModel(this ProductsCompareModel product)
 {
     return(Mapper.Map <ProductsCompareModelLiquidVeiwModel>(product));
 }