示例#1
0
 public void SaveAssistance(Assistances assistance)
 {
     try
     {
         db.Assistances.Add(assistance);
         db.SaveChanges();
     }
     catch (Exception)
     {
         throw;
     }
 }
示例#2
0
        public ActionResult Create([Bind(Include = "IdAssistance,IdTeacher,Date,IdCourse,IdSubject,IdStudent")] Assistances assistances)
        {
            var today = DateTime.UtcNow.AddHours(-5);

            ViewBag.Today = today.ToString("yyyy-MM-dd");
            var courses  = validationsCourse.GetAllCourses();
            var teacher  = validationUser.GetAllTeachers().Where(x => x.Id == User.Identity.GetUserId());
            var subjects = validationsSubject.GetAllSubjects();

            ViewBag.IdTeacher = new SelectList(teacher, "Id", "FullName");
            ViewBag.IdCourse  = new SelectList(courses, "IdCourse", "Description");
            ViewBag.IdSubject = new SelectList(subjects, "IdSubjects", "name");
            return(View());
        }
示例#3
0
        public ActionResult SaveAssistances(List <int> ids, int idCourse, int idSubject)
        {
            if (ids == null || ids.Count == 0)
            {
                return(JavaScript("toastr.warning('Debe seleccionar al menos un estudiante');"));
            }
            else
            {
                string             user            = User.Identity.GetUserId();
                var                today           = DateTime.UtcNow.AddHours(-5);
                List <Assistances> assistances     = new List <Assistances>();
                List <Students>    fails           = validationStudents.GetStudensByCourse(idCourse).ToList();
                List <Students>    studentsInClass = validationStudents.GetStudensById(ids);
                fails = (from c in fails
                         where !(from o in studentsInClass
                                 select o.IdStudent)
                         .Contains(c.IdStudent)
                         select c).ToList();

                foreach (Students student in studentsInClass)
                {
                    Assistances assistance = new Assistances
                    {
                        IdTeacher = user,
                        IdCourse  = idCourse,
                        IdSubject = idSubject,
                        Date      = today,
                        IdStudent = student.IdStudent
                    };
                    assistances.Add(assistance);
                }
                bool saveAssistances = validationsAssistance.SaveAssistances(assistances);
                if (saveAssistances)
                {
                    if (fails.Count > 0)
                    {
                        bool saveLacks = validationsLack.SaveLacks(fails, idCourse, idSubject, today, user);
                        if (saveLacks)
                        {
                            foreach (var item in fails)
                            {
                                sendEmail.SendLack(item, user, idSubject);
                            }
                            return(JavaScript("toastr.success('Fallas y asistencias registradas');" +
                                              "window.setTimeout(function(){window.location.href = '/Assistances/Index'}, 1500);"));
                        }
                        else
                        {
                            return(JavaScript("toastr.error('Error al registrar fallas');"));
                        }
                    }
                    else
                    {
                        return(JavaScript("toastr.success('No hay fallas que registrar');" +
                                          "window.setTimeout(function(){window.location.href = '/Assistances/Index'}, 1500);"));
                    }
                }
                else
                {
                    return(JavaScript("toastr.error('Error al registrar Asistencias');"));
                }
            }
        }