protected virtual async Task <CategoryFacetValuesTree> BuildCategoryFacetValuesTree(IList <Facet> facets,
                                                                                            SelectedFacets selectedFacets,
                                                                                            CategoryFacetCounts categoryCounts)
        {
            var categories = await CategoryRepository.GetCategoriesTreeAsync(new GetCategoriesParam
            {
                Scope = ComposerContext.Scope
            }).ConfigureAwait(false);

            return(FacetFactory.BuildCategoryFacetValuesTree(facets, selectedFacets, categories, categoryCounts, ComposerContext.CultureInfo));
        }
Ejemplo n.º 2
0
        private static void GetEmployeesWithFacets()
        {
            var sb = SearchBuilder.Builder();

            sb.Filter(FilterFactory.TermFilter("companyId", "CC89DE68-61D9-4F16-93C9-30A3FB3818A7".ToLower()));
            sb.Facet(FacetFactory.TermsFacet("favoriteNumbers").Field("favoriteNumbers"));
            var result = esClient.Search(sb, "employees", "employee");
            //var facet = ((TermFacet)result.Facets["favoriteNumbers"]);
            var facetItems = result.FacetItems <TermItem>("favoriteNumbers");

            foreach (var facetItem in facetItems)
            {
                Log(string.Format("Number of matches for facet {0}: {1}", facetItem.Term, facetItem.Count));
            }
        }
        /// <summary>
        /// Initializes this instance with JSON data from an API response.
        /// </summary>
        /// <param name="data">JSON object</param>
        public ProductProjectionQueryResult(dynamic data)
            : base((object)data)
        {
            if (data == null)
            {
                return;
            }

            this.Results = Helper.GetListFromJsonArray <ProductProjection>(data.results);
            this.Facets  = new Dictionary <string, Facet>();

            if (data.facets != null)
            {
                foreach (JProperty facet in data.facets)
                {
                    Facet f = FacetFactory.Create(facet.Value);
                    this.Facets.Add(facet.Name, f);
                }
            }
        }
        protected virtual IList <Facet> BuildFacets(SearchCriteria criteria, ProductSearchResult searchResult)
        {
            if (searchResult.Facets == null)
            {
                return(new List <Facet>());
            }

            var cultureInfo    = criteria.CultureInfo;
            var selectedFacets = criteria.SelectedFacets;

            var facetList =
                searchResult.Facets
                .Select(facetResult => FacetFactory.CreateFacet(facetResult, selectedFacets, cultureInfo))
                .Where(facet => facet != null && facet.Quantity > 0)
                .OrderBy(facet => facet.SortWeight)
                .ThenBy(facet => facet.FieldName)
                .ToList();

            return(facetList);
        }
Ejemplo n.º 5
0
 public FacetsRendering(IAdditionalContextStore additionalContexts, SelectedFacetsFactory selectedFacetsFactory, FacetFactory facetFactory)
 {
     this.additionalContexts    = additionalContexts;
     this.selectedFacetsFactory = selectedFacetsFactory;
     this.facetFactory          = facetFactory;
 }