Esempio n. 1
0
        public async Task <IActionResult> UploadImage(IFormFile file, int idProduct)
        {
            if (file == null)
            {
                TempData["FileEmptyError"] = true;
                return(RedirectToAction("ChangeImage", new RouteValueDictionary(new { id = idProduct })));
            }

            var product = await _context.Products.FindAsync(idProduct);

            if (product == null)
            {
                return(NotFound());
            }

            product.DeleteImageFile();

            product.ImgFile = Path.Combine(@"/images/products/", file.FileName);
            await _context.SaveChangesAsync();

            string serverPath = product.GetServerPath(product.ImgFile);

            using (var stream = System.IO.File.Create(serverPath))
                await file.CopyToAsync(stream);

            return(RedirectToAction("Index"));
        }
        public async Task <IActionResult> Create([Bind("IdStock,FkProduct,Amount,FkStorehouse,Status")] Stocks stocks)
        {
            ViewBag.COOKIE_LOGGED_USERNAME = Request.Cookies["COOKIE_LOGGED_USERNAME"];

            bool alreadyExists = _context.Stocks.Where(s => s.FkProduct == stocks.FkProduct && s.FkStorehouse == stocks.FkStorehouse).Count() > 0;

            if (alreadyExists)
            {
                ViewBag.Message = "Cannot create! Such stock already exists!";
            }

            if (!ModelState.IsValid || alreadyExists)
            {
                ViewData["FkProduct"]    = new SelectList(_context.Products, "IdProduct", "Name", stocks.FkProduct);
                ViewData["FkStorehouse"] = new SelectList(_context.Storehouses, "IdStorehouse", "IdStorehouse", stocks.FkStorehouse);
                return(View(stocks));
            }

            try
            {
                stocks.IdStock = _context.Stocks.Max(s => s.IdStock) + 1;
            }
            catch (Exception e)
            {
                stocks.IdStock = 1;
            }
            _context.Add(stocks);
            await _context.SaveChangesAsync();

            return(RedirectToAction(nameof(Index)));
        }
        public async Task <IActionResult> Create([Bind("IdUnit,Name,ShortName,Status")] Units units)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    units.IdUnit = _context.Units.Max(unit => unit.IdUnit) + 1;
                }
                catch (Exception e)
                {
                    units.IdUnit = 1;
                }
                _context.Add(units);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(units));
        }