示例#1
0
 public void Parser(string url)
 {
     if (!string.IsNullOrEmpty(url))
     {
         try
         {
             _productService.ParseProducts(url);
         }
         catch (Exception ex)
         {
             NLogger.LogWrite().Error(ex, "Error ParserApi - parser");
             throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.InternalServerError)
             {
                 Content      = new StringContent("Server Error"),
                 ReasonPhrase = "Server Error"
             });
         }
     }
     else
     {
         NLogger.LogWrite().Error("Error bad request. Url = " + url);
         throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.BadRequest)
         {
             Content      = new StringContent("Error bad request. Article = " + url),
             ReasonPhrase = "Error bad request. Url = " + url
         });
     }
 }
示例#2
0
 public ProductViewModel Get(int article)
 {
     if (article > 0)
     {
         try
         {
             var product = _productService.GetProduct(article);
             ProductViewModel viewModel = _mapperProduct.Map <ProductDTO, ProductViewModel>(product);
             viewModel.ChangePrices = _mapperPrice.Map <IEnumerable <PriceDTO>, List <PriceViewModel> >(product.ChangePrices);
             return(viewModel);
         }
         catch (Exception ex)
         {
             NLogger.LogWrite().Error(ex, "Error ParserApi - get details about product");
             throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.InternalServerError)
             {
                 Content      = new StringContent("Server Error"),
                 ReasonPhrase = "Server Error"
             });
         }
     }
     else
     {
         NLogger.LogWrite().Error("Error bad request. Article = " + article);
         throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.BadRequest)
         {
             Content      = new StringContent("Error bad request. Article = " + article),
             ReasonPhrase = "Error bad request. Article = " + article
         });
     }
 }
示例#3
0
        public ParserApiController(IProductService productService)
        {
            if (productService == null)
            {
                NLogger.LogWrite().Error("Error IProductService");
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.InternalServerError)
                {
                    Content      = new StringContent("Server Error"),
                    ReasonPhrase = "Server Error"
                });
            }

            _productService = productService;
            _mapperProduct  = new MapperConfiguration(cfg => cfg.CreateMap <ProductDTO, ProductViewModel>()).CreateMapper();
            _mapperPrice    = new MapperConfiguration(cfg => cfg.CreateMap <PriceDTO, PriceViewModel>()).CreateMapper();
        }
示例#4
0
 public IEnumerable <ProductViewModel> Get()
 {
     try
     {
         var products  = _productService.GetAll().ToList();
         var viewModel = _mapperProduct.Map <IEnumerable <ProductDTO>, List <ProductViewModel> >(products);
         return(viewModel);
     }
     catch (Exception ex)
     {
         NLogger.LogWrite().Error(ex, "Error ParserApi - get all products");
         throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.InternalServerError)
         {
             Content      = new StringContent("Server Error"),
             ReasonPhrase = "Server Error"
         });
     }
 }