/// <summary> /// Requests product data. /// </summary> /// <param name="request">Product request message.</param> /// <returns>Product response message.</returns> public ProductResponse GetProducts(ProductRequest request) { var response = new ProductResponse(request.RequestId); // Validate client tag and access token if (!ValidRequest(request, response, Validate.ClientTag | Validate.AccessToken)) { return(response); } var criteria = request.Criteria as ProductCriteria; if (request.LoadOptions.Contains("Categories")) { var categories = _categoryDao.GetCategories(); response.Categories = Mapper.ToDataTransferObjects(categories); } if (request.LoadOptions.Contains("Products")) { var products = _productDao.GetProductsByCategory(criteria.CategoryId, criteria.SortExpression); response.Products = Mapper.ToDataTransferObjects(products); } if (request.LoadOptions.Contains("Product")) { var product = _productDao.GetProduct(criteria.ProductId); product.Category = _categoryDao.GetCategoryByProduct(criteria.ProductId); response.Product = Mapper.ToDataTransferObject(product); } if (request.LoadOptions.Contains("Search")) { var products = _productDao.SearchProducts(criteria.ProductName, criteria.PriceFrom, criteria.PriceThru, criteria.SortExpression); response.Products = Mapper.ToDataTransferObjects(products); } return(response); }
public Category GetCategoryByProduct(int productId) { return(categoryDao.GetCategoryByProduct(productId)); }
public Category GetCategoryByProduct(Product product) { return(categoryDao.GetCategoryByProduct(product)); }
public Category GetCategoryByProduct(string productName) { return(categoryDao.GetCategoryByProduct(productName)); }