public ProductsQueryResponse SearchInProducts(ProductsQueryRequest request) { var response = new ProductsQueryResponse(); try { var products = _productRepository.SearchInProducts(request, request.Category); if (products == null) { response.Message = ProductQueryMessage.NoResultFound; return(response); } response.Products = Mapper.Map <PagingQueryResponse <Product>, PagingQueryResponse <ProductDto> >(products); } catch (Exception exception) { _logger.Error(exception.Message); } return(response); }
public ProductsQueryResponse GetSpecialProducts(ProductsQueryRequest request) { var response = new ProductsQueryResponse(); try { var products = _productRepository.GetSpecialProducts(request); if (products == null) { response.Message = ProductQueryMessage.NoSpecialProductFound; return(response); } response.Products = Mapper.Map <PagingQueryResponse <Product>, PagingQueryResponse <ProductDto> >(products); } catch (Exception exception) { _logger.Error(exception.Message); response.Message = QueryMessage.RetrievingFailed; } return(response); }
public ProductsQueryResponse GetProductsByStore(ProductsQueryRequest request) { var response = new ProductsQueryResponse(); try { var products = _productRepository.GetProductsByStore(request, request.StoreId); if (products == null) { response.Message = ProductQueryMessage.NoProductFoundForTheStore; return(response); } response.Products = Mapper.Map <PagingQueryResponse <Product>, PagingQueryResponse <ProductDto> >(products); } catch (Exception exception) { response.Failed = true; _logger.Log(exception.Message); } return(response); }
public ProductsQueryResponse GetProductsByTag(ProductsQueryRequest request) { var response = new ProductsQueryResponse(); try { var products = _productRepository.GetProductsByTag(request, request.Category, request.Tag); if (products == null) { response.Message = ProductQueryMessage.NoProductFoundForTheTag; return(response); } response.Products = Mapper.Map <PagingQueryResponse <Product>, PagingQueryResponse <ProductDto> >(products); } catch (Exception exception) { _logger.Error(exception.Message); response.Message = QueryMessage.RetrievingFailed; } return(response); }