Ejemplo n.º 1
0
 public ActionResult Description(int id)
 {
     using (var db = new RegistryEntities())
     {
         var subjets = db.Subjets.Find(id);
         return(View(subjets));
     }
 }
Ejemplo n.º 2
0
        public int GetStudentId()
        {
            using (var db = new RegistryEntities())
            {
                int id_user_login = (int)Session["id_user"];
                var query         = from d in db.Students
                                    where d.id_user == id_user_login
                                    select d;


                var student = query.FirstOrDefault <Student>();

                return(student.id);
            }
        }
Ejemplo n.º 3
0
        public ActionResult ListarMySubjet()
        {
            int id_Student = GetStudentId();    //obtengo id estudiante.

            Debug.WriteLine(id_Student);

            using (var db = new RegistryEntities())
            {
                int id_student     = GetStudentId();                                                    //get id estudiante
                var student_subjet = db.Student_subjet.Where(d => d.id_student == id_student).ToList(); //get lista materias anotadas.
                var subjets        = db.Subjets.Include(s => s.Professor).Include(s => s.Day).ToList(); //get lista materias.

                var result = from a in subjets                                                          //Consulta.
                             where student_subjet.Select(b => b.id_subjet).Contains(a.id)
                             select a;
                return(View(result.OrderBy(x => x.name).ToList()));
            }
        }
Ejemplo n.º 4
0
        public bool ConflictorHorarioMateria(Subjet materiaAInscribirce)
        {
            List <Subjet> incripciones;
            bool          conflictoHorario = false;

            using (var db = new RegistryEntities())
            {
                int id_student     = GetStudentId();                                                    //get id estudiante
                var student_subjet = db.Student_subjet.Where(d => d.id_student == id_student).ToList(); //get lista materias anotadas.
                var subjets        = db.Subjets.Include(s => s.Professor).Include(s => s.Day).ToList(); //get lista materias.

                var result = from a in subjets                                                          //Consulta.
                             where student_subjet.Select(b => b.id_subjet).Contains(a.id)
                             select a;

                incripciones = result.ToList();     //Materias incriptas del alumno.
                Debug.WriteLine(incripciones.Count());
            }

            var materiasMismoDia = incripciones.FindAll(incr => incr.Day.id.Equals(materiaAInscribirce.Day.id));

            if (materiasMismoDia.Count() > 0)
            {
                int i = 0;
                while (i < materiasMismoDia.Count() && !conflictoHorario)
                {
                    if (materiaAInscribirce.start_time.Hour >= materiasMismoDia[i].start_time.Hour &&
                        materiaAInscribirce.start_time.Hour < materiasMismoDia[i].end_time.Hour)
                    {
                        conflictoHorario = true;
                    }
                    else if (materiaAInscribirce.end_time.Hour > materiasMismoDia[i].start_time.Hour &&
                             materiaAInscribirce.end_time.Hour < materiasMismoDia[i].end_time.Hour)
                    {
                        conflictoHorario = true;
                    }
                    i++;
                }
            }
            return(conflictoHorario);
        }
Ejemplo n.º 5
0
        public ActionResult Anotarce(int?id)
        {
            using (var db = new RegistryEntities())
            {
                var            subjets        = db.Subjets.Find(id);  //Id materia seleccionada obtengo data materia seleccionada.
                Student_subjet student_subjet = new Student_subjet(); //Creo dato para agregar en la tabla de incripciones.


                if (subjets != null)
                {
                    if (!ConflictorHorarioMateria(subjets))
                    {
                        if (subjets.vacancies > 0)
                        {
                            subjets.vacancies -= 1;

                            student_subjet.id_student = GetStudentId(); //id de estudiante.
                            student_subjet.id_subjet  = subjets.id;
                            db.Student_subjet.Add(student_subjet);

                            db.Entry(subjets).State = System.Data.Entity.EntityState.Modified;
                            db.SaveChanges();
                            ViewBag.operacion = 1;
                        }
                        else
                        {
                            ViewBag.operacion = 2;
                        }
                    }
                    else
                    {
                        ViewBag.operacion = 3;
                    }
                }
            }

            return(RedirectToAction("OffertSubjet", "Student", new { op = ViewBag.operacion }));
        }
Ejemplo n.º 6
0
        public ActionResult OffertSubjet(int?op, String order)
        {
            using (var db = new RegistryEntities())
            {
                int id_student     = GetStudentId();                                                    //get id estudiante
                var student_subjet = db.Student_subjet.Where(d => d.id_student == id_student).ToList(); //get lista materias anotadas.
                var subjets        = db.Subjets.Include(s => s.Professor).Include(s => s.Day).ToList(); //get lista materias.

                var result = from a in subjets                                                          //Consulta.
                             where !student_subjet.Select(b => b.id_subjet).Contains(a.id)
                             select a;

                Debug.WriteLine(order);

                if (op == 1)
                {
                    ViewBag.Message = "Successfull registration";
                }
                else if (op == 2)
                {
                    ViewBag.Message = "No vacancies";
                }
                else if (op == 3)
                {
                    ViewBag.Message = "There is already a class at that time";
                }

                if (order == "byDay")
                {
                    return(View(result.OrderBy(x => x.Day.id).ToList()));
                }
                else
                {
                    return(View(result.OrderBy(x => x.name).ToList()));
                }
            }
        }
Ejemplo n.º 7
0
        public ActionResult Autorization(DataLogin data)
        {
            ViewBag.error = "";
            if (!ModelState.IsValid)
            {
                return(View("Index"));
            }
            else
            {
                using (var db = new RegistryEntities())
                {
                    User result = db.Users.FirstOrDefault
                                      (u => u.Dni.Equals(data.dm_Dni) &&
                                      u.Code_login.Equals(data.dm_Code_login));

                    if (result != null)
                    {
                        if (data.dm_isManager)
                        {
                            if (result.Profile.Type == "Manager")
                            {
                                Debug.WriteLine("User is Manager");
                                DataUser dataUser = new DataUser();
                                dataUser.id        = result.id;
                                dataUser.Name      = result.Name;
                                dataUser.Last_name = result.Last_Name;
                                dataUser.Type      = result.Profile.Type;
                                return(RedirectToAction("Index", "Manager", dataUser));
                            }
                            else
                            {
                                //Debug.WriteLine("User not Found");
                                ViewBag.error = "User not Found";
                            }
                        }
                        else
                        {
                            if (result.Profile.Type == "Student")
                            {
                                Debug.WriteLine("User is Student");
                                //Llamar aqui al cambio de pagina.
                                DataUser dataUser = new DataUser();
                                dataUser.id        = result.id;
                                dataUser.Name      = result.Name;
                                dataUser.Last_name = result.Last_Name;
                                dataUser.Type      = result.Profile.Type;
                                return(RedirectToAction("Index", "Student", dataUser));
                            }
                            else
                            {
                                Debug.WriteLine("User not Found");
                                ViewBag.error = "User not Found";
                            }
                        }
                    }
                    else
                    {
                        ViewBag.error = "User not Found";
                    }
                }
            }

            return(View("Index"));//vamos a la pagina designada.
        }