Ejemplo n.º 1
0
        public ActionResult Create(ProductViewModel productViewModel, HttpPostedFileBase[] files)
        {
            var categoryList    = _categoryBusiness.GetListWT();
            var subcategoryList = _subCategoryBusiness.GetListWT();

            productViewModel.CategoryList = categoryList.Select(x => new SelectListItem
            {
                Text  = x.CategoryName.ToString(),
                Value = x.CategoryId.ToString()
            }).ToList();
            productViewModel.AvailabilityList = Commom.GlobalMethods.GlobalMethods.GetAvailabilityList();
            if (ModelState.IsValid)
            {
                Mapper.CreateMap <ProductViewModel, Product>();
                Product product = Mapper.Map <ProductViewModel, Product>(productViewModel);

                product.TokenKey = GlobalMethods.GetToken();
                FileOperations.CreateDirectory(Server.MapPath("~/ProductImage"));
                FileOperations.CreateDirectory(Server.MapPath("~/ProductImage/Thumbnails/"));

                bool isSuccess = _productBusiness.AddUpdateDeleteProduct(product, "I");
                foreach (HttpPostedFileBase file in files)
                {
                    var image = new Entities.Models.Image();

                    string extension = System.IO.Path.GetExtension(file.FileName);
                    string filename  = Guid.NewGuid().ToString() + extension;

                    image.Images    = filename;
                    image.ProductId = product.ProductID;
                    _imageBusiness.AddUpdateDeleteimage(image, "I");

                    var filePathThumbnail = Server.MapPath("~/ProductImage/Thumbnails");
                    file.SaveAs(Server.MapPath("~/ProductImage/" + filename));

                    var thumbnail = FileOperations.CreateThumbnail(Server.MapPath("~/ProductImage/" + filename), 72, 72);
                    FileOperations.SaveBitmapImageToDirectory(thumbnail, Server.MapPath("~/ProductImage/Thumbnails/" + filename));
                }


                if (isSuccess)
                {
                    TempData["Success"]   = "Product Created Successfully!!";
                    TempData["isSuccess"] = "true";
                    return(RedirectToAction("Index"));
                }
                else
                {
                    TempData["Success"]   = "Failed to create product!!";
                    TempData["isSuccess"] = "false";
                }
            }
            return(View(productViewModel));
        }