Esempio n. 1
0
        public IActionResult DeletarFoto(int id)
        {
            ProdutoImage Foto      = db.ProdutosImages.Where(x => x.Id == id).FirstOrDefault();
            int          produtoId = Foto.ProdutoId;

            db.Remove(Foto);
            db.SaveChanges();

            Produto Produto = db.Produtos.Where(x => x.Id == produtoId).Include(x => x.Fotos).FirstOrDefault();

            return(PartialView("_ProdutoFormPartial", new ProdutoFormModel()
            {
                Produto = Produto
            }));
        }
Esempio n. 2
0
        public async Task <IActionResult> Adicionar(ProdutoFormModel model)
        {
            if (model.Produto.Fotos == null)
            {
                model.Produto.Fotos = new List <ProdutoImage>();
            }

            Log log = new Log();

            if (model.Produto.Id == 0)
            {
                log.DataHora = DateTime.Now;
                log.UserId   = _userManager.GetUserAsync(HttpContext.User).Result.Id;
                log.Mensagem = "Produto " + model.Produto.Nome + " criado";

                db.Add(log);
                db.Attach(model.Produto);
            }
            else
            {
                log.DataHora = DateTime.Now;
                log.UserId   = _userManager.GetUserAsync(HttpContext.User).Result.Id;
                log.Mensagem = "Produto " + model.Produto.Nome + " editado";

                db.Add(log);
                db.Update(model.Produto);
            }



            db.SaveChanges();

            string path = "Uploads/" + model.Produto.Id;

            if (!Directory.Exists("wwwroot/" + path))
            {
                Directory.CreateDirectory("wwwroot/" + path);
            }

            if (model.ProdutoImage != null)
            {
                foreach (IFormFile file in model.ProdutoImage)
                {
                    file.FileName.Replace(" ", "_");
                    var filePath = path + "/" + file.FileName;

                    ProdutoImage image = new ProdutoImage();

                    using (var stream = new FileStream("wwwroot/" + filePath, FileMode.Create))
                    {
                        model.ProdutoImage[0].CopyTo(stream);
                        stream.Close();
                    }

                    image.ProdutoId = model.Produto.Id;
                    image.Path      = filePath;
                    model.Produto.Fotos.Add(image);
                }
            }


            db.SaveChanges();

            ModelState.Clear();
            return(RedirectToAction("Index"));
        }