public async Task <IEnumerable <ProductViewModel> > GetById() { var products = await _productRepository.GetByOwner(GetUserId()); var personalizedProductModels = await _personalizedProductRepository.GetByUser(GetUserId()); return(await _productMapper.MapUserProducts(products, personalizedProductModels)); }
private async Task <IEnumerable <PersonalizedProductDto> > GetProducts(IEnumerable <PackListGroupItemModel> items, Guid userId) { var list = new List <PersonalizedProductDto>(); var personalizedProductList = await _personalizedProductRepository.GetByUser(userId); foreach (var item in items) { if (item.IsKit) { continue; } var itemExist = list.Find(x => x.Id == item.Id); if (itemExist != null) { itemExist.Amount = itemExist.Amount + 1; } else { var p = await this._productRepository.Get(item.Id); var pp = personalizedProductList.FirstOrDefault(x => x.ProductId == item.Id); var category = ""; bool star = false; bool wearable = false; bool consumables = false; if (pp != null) { category = pp.Category; wearable = pp.Wearable; consumables = pp.Consumables; star = pp.Star; } if (p != null) { list.Add(new PersonalizedProductDto { Name = p.Name, Weight = p.Weight, WeightPrefix = p.WeightPrefix, Amount = 1, Id = p.Id, Category = category, Star = star, Wearable = wearable, Consumables = consumables, Description = p.Description, Images = p.Images }); } } } return(list); }