Ejemplo n.º 1
0
        private static GetProductsByCategoryRequest GenerateProductSearchRequestFrom(JsonProductSearchRequest request)
        {
            GetProductsByCategoryRequest productSearchRequest = new GetProductsByCategoryRequest();
            productSearchRequest.NoOfResultsPerPage = int.Parse(ApplicationSettingsFactory.GetApplicationSettings().NoOfResultsPerPage);
            productSearchRequest.Index = request.Index;
            productSearchRequest.CategoryId = request.CategoryId;
            productSearchRequest.SortBy = request.SortBy;

            List<RefinementGroup> refinementGroups = new List<RefinementGroup>();
            foreach (var jsonRefinementGroup in request.RefinementGroups)
            {
                switch ((RefinementGroupings)jsonRefinementGroup.GroupId)
                {
                    case RefinementGroupings.brand:
                        productSearchRequest.BrandIds = jsonRefinementGroup.SelectedRefinements;
                        break;
                    case RefinementGroupings.color:
                        productSearchRequest.ColorIds = jsonRefinementGroup.SelectedRefinements;
                        break;
                    case  RefinementGroupings.size:
                        productSearchRequest.SizeIds = jsonRefinementGroup.SelectedRefinements;
                        break;
                    default:
                        break;
                }
            }
            return productSearchRequest;
        }
Ejemplo n.º 2
0
        public JsonResult GetProductsByAjax(JsonProductSearchRequest request)
        {
            GetProductsByCategoryRequest productSearchRequest = GenerateProductSearchRequestFrom(request);
            GetProductsByCategoryResponse response = _productService.GetProductsByCategory(productSearchRequest);

            ProductSearchResultView productSearchResultView = GetProductSearchResultViewFrom(response);
            return Json(productSearchResultView);
        }