Ejemplo n.º 1
0
        public async Task <List <FilterDescriptor> > GetFilterDescriptorsForOffer(string id)
        {
            var offerDetails = offerDetailService.GetOfferDetails(id).Result;
            var categoryID   = offerDetails.Categories.First(x => x.Parent == "0").Id;
            var newID        = "-1";

            while (newID != categoryID)
            {
                newID = categoryID;
                var category = offerDetails.Categories.FirstOrDefault(x => x.Parent == categoryID);
                if (category != null)
                {
                    categoryID = category.Id;
                }
            }
            var filterDescriptors          = searchService.GetFiltersDataForCategory(categoryID).Result;
            List <FilterDescriptor> result = new List <FilterDescriptor>();

            foreach (var category in offerDetails.Attributes)
            {
                if (category != null)
                {
                    var descriptor = filterDescriptors.FirstOrDefault(x => x.Name == category.Name);
                    if (descriptor != null)
                    {
                        result.Add(new FilterDescriptor()
                        {
                            ID = descriptor.ID, Name = descriptor.Name, Values = descriptor.Values.Where(x => category.Attributes.Contains(x.Name)).ToList()
                        });
                    }
                }
            }
            return(result);
        }
 public async Task <OfferDetails> Get(string id)
 {
     return(await _offerDetailsService.GetOfferDetails(id));
 }
Ejemplo n.º 3
0
        public void OfferDetailsServiceTest()
        {
            OfferDetailsService service = new OfferDetailsService();

            OfferDetails details = service.GetOfferDetails("6754645454").Result;
        }