Esempio n. 1
0
        public IActionResult Edit(int id, LancheVM lanche)
        {
            if (id != lanche.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    var lstIngredientes = _serviceIngrediente.GetAll();

                    var lancheUpdate = lanche.ToModel();

                    foreach (var item in lstIngredientes)
                    {
                        if (lancheUpdate.LanchesIngredientes.FirstOrDefault(li => li.IngredienteId == item.Id) != null)
                        {
                            lancheUpdate.LanchesIngredientes.First(li => li.IngredienteId == item.Id).Ingrediente = item;
                        }
                    }

                    _serviceLanche.Update(lancheUpdate);
                }
                catch (Exception ex)
                {
                    if (!LancheExists(lanche.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        ViewBag.Erro = ex.Message;
                        throw;
                    }
                }

                return(Json(new { preco = _serviceLanche.Get(id).Preco }));
            }

            return(View(lanche));
        }
        public IActionResult Edit(int id, LancheVM lanche)
        {
            if (id != lanche.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    var ingredientes = _serviceIngrediente.GetAll();

                    var lancheParaUpdate = lanche.ToModel();

                    foreach (var item in ingredientes)
                    {
                        if (lancheParaUpdate.LanchesIngredientes.FirstOrDefault(li => li.IngredienteId == item.Id) != null)
                        {
                            lancheParaUpdate.LanchesIngredientes.First(li => li.IngredienteId == item.Id).Ingrediente = item;
                        }
                    }

                    _serviceLanche.Update(lancheParaUpdate);
                }
                catch (Exception ex)
                {
                    if (!LancheExists(lanche.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }

                // nesse momento o preço ja esta alterado.
                return(Json(new { preco = _serviceLanche.Get(id).Preco }));
            }

            return(View(lanche));
        }