Esempio n. 1
0
        public IActionResult specs(int id)
        {
            var menusReceita = from r in db.Menu
                               join mr in db.MenuReceita on r.Id equals mr.Menuid
                               where r.Id == id
                               select mr;

            var receitas = menusReceita.ToList();
            List <MenuReceita> listaFinal = new List <MenuReceita>();

            for (int i = 0; i < receitas.Count(); i++)
            {
                var descricao = (from r in db.Receita
                                 where r.Id == receitas.ElementAt(i).Receitaid
                                 select r).Single();

                MenuReceita newMr = new MenuReceita
                {
                    Dia     = receitas.ElementAt(i).Dia,
                    Receita = new Receita
                    {
                        Descricao = descricao.Nome
                    }
                };
                listaFinal.Add(newMr);
            }

            return(View(listaFinal));
        }
Esempio n. 2
0
        //se atualização correu bem, retorna 0; caso contrário, retorna 1
        public string atualizaBd(string descricao, int idMenu, string initialDate, string dayInWeek, DateTime dayInDateTime)
        {
            string mail = User.Identity.Name;
            //var y = db.ReceitasFavoritas.Where(b => b.Receitaid == id).FirstOrDefault();
            var x = db.Utilizador.Where(b => b.Email == mail).FirstOrDefault();

            //inserir receita para segunda
            var receitas = from r in db.Receita
                           join cat in db.Categoria on r.Categoriaid equals cat.Id
                           where cat.Descricao == descricao && cat.Descricao != "Auxiliar"
                           select r;

            var listaReceitas = receitas.ToList();

            if (listaReceitas.Count != 0)
            {
                int dataInicial = DateTime.Parse(initialDate).Year * 10000 + DateTime.Parse(initialDate).Month * 100 + DateTime.Parse(initialDate).Day;

                if (dayInWeek == "segunda")
                {
                    ;
                }
                if (dayInWeek == "terca")
                {
                    dayInDateTime = dayInDateTime.AddDays(1);
                }
                if (dayInWeek == "quarta")
                {
                    dayInDateTime = dayInDateTime.AddDays(2);
                }
                if (dayInWeek == "quinta")
                {
                    dayInDateTime = dayInDateTime.AddDays(3);
                }
                if (dayInWeek == "sexta")
                {
                    dayInDateTime = dayInDateTime.AddDays(4);
                }
                if (dayInWeek == "sabado")
                {
                    dayInDateTime = dayInDateTime.AddDays(5);
                }
                if (dayInWeek == "domingo")
                {
                    dayInDateTime = dayInDateTime.AddDays(6);
                }

                //verifica se o dia em questão já tem um menu associado
                var encontraDia = from mr in db.MenuReceita
                                  join m in db.Menu on mr.Menuid equals m.Id
                                  where (DateTime.Compare(dayInDateTime, mr.Dia) == 0) && (m.Utilizadorid == x.Id)
                                  select mr;

                var res = encontraDia.ToList();

                //se receita já tiver menu associado, retorna mensagem de erro
                if (res.Count() == 0)
                {
                    MenuReceita novoMenu = new MenuReceita
                    {
                        Dia       = dayInDateTime,
                        Receitaid = listaReceitas.ElementAt(0).Id,
                        Menuid    = idMenu
                    };

                    db.MenuReceita.Add(novoMenu);
                    db.SaveChanges();
                }
                else
                {
                    return("Receita com menu associado");
                }
            }
            else
            {
                return("Not ok");
            }
            return("Ok");
        }