Exemplo n.º 1
0
        public ActionResult Create()
        {
            ProductSinglePageViewModel model = new ProductSinglePageViewModel();

            model.ProductViewModel   = new ProductViewModel();
            model.BrandViewModels    = brandService.FindAllBrands().Brands.ConvertToBrandViewModelList();
            model.CategoryViewModels = categoryService.FindAllCategories().Categories.ConvertToCategoryViewModelList();
            model.Success            = true;
            return(View("Edit", model));
        }
Exemplo n.º 2
0
        public ActionResult Edit(int productId)
        {
            ProductSinglePageViewModel model    = new ProductSinglePageViewModel();
            FindAllProductsResponse    response = productService.FindAllProducts();

            if (response.Success)
            {
                model.ProductViewModel = response.Products.
                                         Where(x => x.ProductId == productId).
                                         FirstOrDefault().
                                         ConvertToProductViewModel();
                model.BrandViewModels    = brandService.FindAllBrands().Brands.ConvertToBrandViewModelList();
                model.CategoryViewModels = categoryService.FindAllCategories().Categories.ConvertToCategoryViewModelList();
                model.Success            = true;
            }
            else
            {
                model.Success      = false;
                model.ErrorMessage = response.Message;
            }
            return(View(model));
        }
Exemplo n.º 3
0
        public ActionResult Edit(ProductSinglePageViewModel model, List <HttpPostedFileBase> fileUpload)
        {
            if (model.ProductViewModel.ProductId == 0)
            {
                CreateProductRequest  request  = new CreateProductRequest();
                CreateProductResponse response = new CreateProductResponse();
                request.Name          = model.ProductViewModel.Name;
                request.Description   = model.ProductViewModel.Description;
                request.Price         = model.ProductViewModel.Price;
                request.Color         = model.ProductViewModel.Color;
                request.Size          = model.ProductViewModel.Size;
                request.BrandId       = model.ProductViewModel.BrandId;
                request.CategoryId    = model.ProductViewModel.CategoryId;
                request.ProductImages = new List <ProductImage>();

                foreach (HttpPostedFileBase image in fileUpload)
                {
                    if (image != null)
                    {
                        ProductImage productImeage = new ProductImage();
                        productImeage.ImageMimeType = image.ContentType;
                        productImeage.ImageData     = new byte[image.ContentLength];
                        image.InputStream.Read(productImeage.ImageData, 0, image.ContentLength);
                        // First image add for displaying in product list page
                        if (request.ProductImage == null)
                        {
                            request.ProductImage = new ProductImage();
                            request.ProductImage = productImeage;
                        }
                        // Other images add to list
                        request.ProductImages.Add(productImeage);
                    }
                }

                response = productService.CreateProduct(request);
                if (response.Success)
                {
                    return(RedirectToAction("Index"));
                }
                else
                {
                    model.Success      = false;
                    model.ErrorMessage = response.Message;
                    return(View(model));
                }
            }
            else
            {
                UpdateProductRequest  request  = new UpdateProductRequest();
                UpdateProductResponse response = new UpdateProductResponse();
                request.ProductId     = model.ProductViewModel.ProductId;
                request.Name          = model.ProductViewModel.Name;
                request.Description   = model.ProductViewModel.Description;
                request.Price         = model.ProductViewModel.Price;
                request.Color         = model.ProductViewModel.Color;
                request.Size          = model.ProductViewModel.Size;
                request.BrandId       = model.ProductViewModel.BrandId;
                request.CategoryId    = model.ProductViewModel.CategoryId;
                request.ProductImages = new List <ProductImage>();

                foreach (HttpPostedFileBase image in fileUpload)
                {
                    if (image != null)
                    {
                        ProductImage productImeage = new ProductImage();
                        productImeage.ImageMimeType = image.ContentType;
                        productImeage.ImageData     = new byte[image.ContentLength];
                        image.InputStream.Read(productImeage.ImageData, 0, image.ContentLength);
                        // First image add for displaying in product list page
                        if (request.ProductImage == null)
                        {
                            request.ProductImage = new ProductImage();
                            request.ProductImage = productImeage;
                        }
                        // Other images add to list
                        request.ProductImages.Add(productImeage);
                    }
                }
                response = productService.UpdateProduct(request);
                if (response.Success)
                {
                    return(RedirectToAction("Index"));
                }
                else
                {
                    model.Success      = false;
                    model.ErrorMessage = response.Message;
                    return(View(model));
                }
            }
        }