public JsonResult Create([DataSourceRequest] DataSourceRequest request, [Bind(Prefix = "models")]IEnumerable<CategoriaIngredienteModel> ListacategoriaModel)
        {
            if (ModelState.IsValid)
            {
                foreach (var categoriaModel in ListacategoriaModel)
                {
                    using (var cadCategoria = new CadastroCategoriaIngrediente())
                    {
                        var categoria = new CategoriaIngrediente()
                        {
                            Nome = categoriaModel.Nome.Trim()
                        };

                        cadCategoria.InserirCategoriaIngrediente(categoria);
                        categoriaModel.IdCategoriaIngrediente = categoria.IdCategoriaIngrediente;
                    }
                }
            }

            return Json(ListacategoriaModel.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
        }
 public void InserirCategoriaIngrediente(CategoriaIngrediente Categoria)
 {
     categoriaIngredieteBm.Insert(Categoria);
 }
 public void AlterarCategoriaIngrediente(CategoriaIngrediente Categoria)
 {
     categoriaIngredieteBm.Update(Categoria);
 }
        public void CarregarTabelaNutricional(string FileName)
        {
            var xlsFile = new ExcelQueryFactory(FileName);
            var listaTabelaNutricional = tabelaNutricionalBm.GetAll().Select(x => x.NomePlanilhaCarga).ToList();

            var listaDados = from f in xlsFile.Worksheet("Plan1") select f;

            foreach (var ing in listaDados)
            {
                //Carregando a Categoria
                CategoriaIngrediente categoria = categoriaIngredienteBm.GetByNome(ing["Categoria"].Value.ToString());
                if (categoria == null)
                {
                    categoria = new CategoriaIngrediente()
                    {
                        Nome = ing["Categoria"].Value.ToString()
                    };
                    categoriaIngredienteBm.Insert(categoria);
                }

                //Carregando o Cliente
                Ingrediente ingrediente = ingredienteBm.GetByCodigoTACO(int.Parse(ing["CodigoTACO"].Value.ToString()));

                if (ingrediente == null)
                {
                    ingrediente = new Ingrediente()
                    {
                        Ativo = true,
                        Categoria = categoriaIngredienteBm.GetByID(categoria.IdCategoriaIngrediente),
                        CodigoTACO = int.Parse(ing["CodigoTACO"].Value.ToString()),
                        NomeTACO = ing["NomeTACO"].ToString()
                    };

                    ingredienteBm.Insert(ingrediente);
                }

                //Percorrendo a lista de atributos da tabela nutricional para inclusão
                foreach(var nomeComp in listaTabelaNutricional)
                {
                    double valor = 0;
                    double.TryParse(ing[nomeComp.Trim()].Value.ToString(), out valor);

                    TabelaNutricional componente = tabelaNutricionalBm.GetByNomePlanilha(nomeComp.Trim());

                    var ingredienteTabelaNutricional = ingredienteTabelaNutricionalBm.GetByIngredienteAndTabelaNutricional(ingredienteBm.GetByID(ingrediente.IdIngrediente), componente);

                    if (ingredienteTabelaNutricional == null)
                    {
                        ingredienteTabelaNutricional = new IngredienteTabelaNutricional()
                        {
                            Componente = tabelaNutricionalBm.GetByID(componente.IdTabelaNutricional),
                            Ingrediente = ingredienteBm.GetByID(ingrediente.IdIngrediente),

                        };

                        ingredienteTabelaNutricionalBm.Insert(ingredienteTabelaNutricional);

                    }

                    ingredienteTabelaNutricional.Valor = valor;
                    ingredienteTabelaNutricional.PercValorDiario = CalculaPercentualDiario(ingredienteTabelaNutricional);
                    ingredienteTabelaNutricionalBm.Update(ingredienteTabelaNutricional);

                }

            }
        }