public void Execute(NewProductWM productModel)
        {
            ExecuteProcess(productModel);

            if (NextValidation != null)
            {
                NextValidation.IsValid = IsValid;
                NextValidation.Execute(productModel);
            }
        }
Beispiel #2
0
 public override void ExecuteProcess(NewProductWM productModel)
 {
     if (productModel.Product.CategoryID == 0)
     {
         throw new Exception(ErrorMessageConstants.ProductCategoryNotDefined);
     }
     else
     {
         IsValid = true;
     }
 }
Beispiel #3
0
        public HttpResponseMessage AddNewProduct(NewProductWM webModel)
        {
            try
            {
                _productsManager.AddProduct(webModel);

                return(Request.CreateResponse(HttpStatusCode.Created));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex.ToString()));
            }
        }
        public void AddProduct(NewProductWM webModel)
        {
            #region AddProductValidations
            List <AddProductValidationBase> validationList = new List <AddProductValidationBase>();
            validationList.Add(new CheckProductImagePath());
            validationList.Add(new CheckProductCategory());
            validationList.Add(new CheckProductName());
            validationList.Add(new CheckProductUnitPrice());

            validationList[0].SetNextValidation(validationList[1]);
            validationList[1].SetNextValidation(validationList[2]);
            validationList[2].SetNextValidation(validationList[3]);

            validationList[0].Execute(webModel);
            bool webModelValid = validationList[validationList.Count - 1].IsValid;
            #endregion

            if (webModelValid)
            {
                try
                {
                    Bitmap image = new Bitmap(webModel.ImagePath);

                    ProductImages productImage = new ProductImages
                    {
                        ProductPicture = ImageToByteConverter.ConvertImagePath(image)
                    };

                    _productImagesOperations.AddProductImage(productImage);

                    _productsOperations.AddProduct(ProductsMapping.MapToEntity(webModel.Product));
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.ToString());
                }
            }
        }
 public override void ExecuteProcess(NewProductWM productModel)
 {
     IsValid = string.IsNullOrEmpty(productModel.Product.ProductName) ? throw new Exception(ErrorMessageConstants.ProductNameNotDefined) : true;
 }
 public abstract void ExecuteProcess(NewProductWM productModel);
 public override void ExecuteProcess(NewProductWM productModel)
 {
     IsValid = string.IsNullOrEmpty(productModel.ImagePath) ? throw new Exception(ErrorMessageConstants.ProductImagesPathNotFound) : true;
 }