コード例 #1
0
        public IActionResult Novo(Grupo Grupo)
        {
            ViewBag.Grupo = Ctx.Grupos;
            bool[] dias = new bool[]
            {
                Grupo.Segunda,
                Grupo.Terca,
                Grupo.Quarta,
                Grupo.Quinta,
                Grupo.Sexta,
                Grupo.Sabado,
                Grupo.Domingo,
            };
            ViewBag.Componente = Ctx.Componentes;
            if (ModelState.IsValid)
            {
                if (Array.IndexOf(dias, true) == -1)
                {
                    ViewBag.select = "Selecione um ou mais dias!";
                    return(View("Form", Grupo));
                }

                if (Grupo.Componentes == null || Grupo.Componentes.Count() == 0)
                {
                    ViewBag.select = "Selecione um ou mais componentes!";
                    return(View("Form", Grupo));
                }
                if (Grupo.HorarioInicial > Grupo.HorarioFinal)
                {
                    ViewBag.Horario = "Horário incorreto!";
                    return(View("Form", Grupo));
                }


                Ctx.Grupos.Add(Grupo);
                Ctx.SaveChanges();
                foreach (int idComponente in Grupo.Componentes)
                {
                    ComponenteGrupo cg = new ComponenteGrupo();

                    cg.GrupoId      = Grupo.Id;
                    cg.ComponenteId = idComponente;
                    cg.Ativo        = true;

                    Ctx.ComponenteGrupos.Add(cg);
                }

                Ctx.SaveChanges();
            }
            else
            {
                return(View("Form", Grupo));
            }


            return(View("index"));
        }
コード例 #2
0
        public IActionResult Editar(Grupo grupo)
        {
            ViewBag.Grupo = Ctx.Grupos;
            bool[] dias = new bool[]
            {
                grupo.Segunda,
                grupo.Terca,
                grupo.Quarta,
                grupo.Quinta,
                grupo.Sexta,
                grupo.Sabado,
                grupo.Domingo,
            };
            ViewBag.Componente = Ctx.Componentes;
            if (ModelState.IsValid)
            {
                if (Array.IndexOf(dias, true) == -1)
                {
                    ViewBag.select = "Selecione um ou mais dias!";
                    return(View("Form", grupo));
                }

                if (grupo.Componentes == null || grupo.Componentes.Count() == 0)
                {
                    ViewBag.select = "Selecione um ou mais componentes!";
                    return(View("Form", grupo));
                }



                Ctx.Grupos.Update(grupo);
                Ctx.SaveChanges();

                IEnumerable <ComponenteGrupo> cg = Ctx.ComponenteGrupos.Where(a => a.GrupoId == grupo.Id);

                foreach (ComponenteGrupo componenteg in cg)
                {
                    Ctx.ComponenteGrupos.Remove(componenteg);
                }

                Ctx.SaveChanges();

                foreach (int idComponente in grupo.Componentes)
                {
                    ComponenteGrupo cgg = new ComponenteGrupo();

                    cgg.GrupoId      = grupo.Id;
                    cgg.ComponenteId = idComponente;
                    cgg.Ativo        = true;

                    Ctx.ComponenteGrupos.Add(cgg);
                }

                Ctx.SaveChanges();
            }
            else
            {
                return(View("Form", grupo));
            }

            return(View("index"));
        }