示例#1
0
        public IActionResult Edit(int id)
        {
            var product = _productRepository.GetProductByID(id);

            if (product != null)
            {
                var form = new AddProductFormVIewModel()
                {
                    Name        = product.Name,
                    Safety      = product.Safety,
                    ProductId   = product.ProductId,
                    Ingredient  = product.Ingredient,
                    Description = product.Description,
                    Brand       = product.Brand,
                }

                ;

                var categoryDetail = _categoryRepository.AllCategoryDetails;

                foreach (var cd in categoryDetail)
                {
                    form.CategoriesDetail.Add(

                        new SelectListItem {
                        Value = cd.CategoryDetailId.ToString(), Text = $"{ cd.Category.Name } - {cd.SubCategory.Name}"
                    }
                        );
                }


                var productDetails = new List <AddProductDetails>();


                foreach (var productDetail in product.ProductDetail)
                {
                    productDetails.Add(

                        new AddProductDetails()
                    {
                        Size             = productDetail.Size,
                        Flavour          = productDetail.Flavour,
                        ImageUrl         = productDetail.Images.First().Url,
                        CategoryDetailId = productDetail.CategoryDetailId,
                        PreviousPrice    = productDetail.PreviousPrice,
                        Price            = productDetail.Price
                    }


                        );
                }

                form.ProductDetails = productDetails;

                return(View(form));
            }

            return(NotFound());
        }
示例#2
0
        public IActionResult Add()
        {
            var form = new AddProductFormVIewModel();

            var categoryDetail = _categoryRepository.AllCategoryDetails;

            foreach (var cd in categoryDetail)
            {
                form.CategoriesDetail.Add(

                    new SelectListItem {
                    Value = cd.CategoryDetailId.ToString(), Text = $"{ cd.Category.Name } - {cd.SubCategory.Name}"
                }
                    );
            }



            return(View(form));
        }
示例#3
0
        public async Task <IActionResult> AddAsync(AddProductFormVIewModel form)
        {
            foreach (var product in form.ProductDetails)
            {
                if (product.PreviousPrice == null)
                {
                    product.PreviousPrice = product.Price;
                }
            }

            if (ModelState.IsValid)
            {
                var newProduct = new Product()
                {
                    Name        = form.Name,
                    Safety      = form.Safety,
                    Ingredient  = form.Ingredient,
                    Description = form.Description,
                    Brand       = form.Brand,
                };

                var productDetails = new List <ProductDetail>();

                foreach (var produtDetail in form.ProductDetails)
                {
                    var prod = new ProductDetail
                    {
                        Size             = produtDetail.Size,
                        Flavour          = produtDetail.Flavour,
                        CategoryDetailId = produtDetail.CategoryDetailId,
                        Price            = (decimal)produtDetail.Price,
                        PreviousPrice    = (decimal)produtDetail.PreviousPrice,
                    };



                    var uniqueFileName = Path.GetRandomFileName() + Path.GetExtension(produtDetail.Images.FileName);

                    var imgUrl = await _blobService.UploadFileBlobAsync(produtDetail.Images, uniqueFileName);

                    prod.Images = new List <Image> {
                        new Image {
                            Url = imgUrl
                        }
                    };

                    productDetails.Add(prod);
                }

                newProduct.ProductDetail = productDetails;

                _productRepository.AddProduct(newProduct);

                return(RedirectToAction("index", "Admin"));
            }


            var categoryDetail = _categoryRepository.AllCategoryDetails;

            foreach (var cd in categoryDetail)
            {
                form.CategoriesDetail.Add(

                    new SelectListItem {
                    Value = cd.CategoryDetailId.ToString(), Text = $"{ cd.Category.Name } - {cd.SubCategory.Name}"
                }
                    );
            }



            return(View(form));
        }