public Notification Create(Notification itemToCreate) { foreach (var user in itemToCreate.Users) { _context.Users.Attach(user); } var notification = _context.Notifications.Add(itemToCreate); _context.SaveChanges(); return notification; }
public void Delete(Notification itemToDelete) { _context.Notifications.Remove(itemToDelete); }
public Notification Update(Notification itemToUpdate) { _context.Entry(itemToUpdate).State = EntityState.Modified; return itemToUpdate; }
private void AddUsersToPersonalNotification(Notification notificationIdentity) { var notificationParentId = _studentRepository.Filter(x => x.Id == notificationIdentity.IdGradeAreaUserGeneralSelected).Where(x => x.Tutor1 != null).Select(x => x.Tutor1).FirstOrDefault(); if (notificationParentId != null) { var parents = _parentRepository.GetById(notificationParentId.Id); var user = parents.MyUser; if (user != null) { notificationIdentity.Users.Add(user); SendEmail.SendEmailToUsers(notificationIdentity.Users.ToList(), "Se ha creado una notificacion en la cual usted ha sido incluido.Mensaje: " + notificationIdentity.Message, "Notificacion creada"); } } }
private void AddUsersToLevelNotification(Notification notificationIdentity) { var area = _areaReporsitory.GetById(notificationIdentity.IdGradeAreaUserGeneralSelected); var grades = _gradeRepository.GetAllGrade().Where(x => x.EducationLevel.Equals(area.Name)).Select(x => x.Id).ToList(); if (!grades.Any()) { return; } foreach (var id in grades) { long id1 = id; var studentList = _enrollRepository.GetAllsEnrolls().Where(x => x.AcademicYear.Grade.Id == id1 && x.AcademicYear.Year == DateTime.Now.Year) .Select(x => x.Student).ToList(); if (!studentList.Any()) { continue; } foreach (var student in studentList) { var student1 = student; var notificationParentId = _studentRepository.Query(x => x).Where(x => x.Id == student1.Id && x.Tutor1 != null) .Select(x => x.Tutor1).Include(x => x.MyUser) .FirstOrDefault(); if (notificationParentId != null) { if (notificationParentId.MyUser != null) { notificationIdentity.Users.Add(notificationParentId.MyUser); } } notificationParentId = _studentRepository.GetAllStudents().Where(x => x.Id == student.Id && x.Tutor2 != null && x.Tutor2 != x.Tutor1) .Select(x => x.Tutor2).FirstOrDefault(); if (notificationParentId != null) { User parents = _userRepository.GetById(notificationParentId.MyUser.Id); if (parents != null) { notificationIdentity.Users.Add(parents); } } } } }
private void AddUsersToGradeNotification(Notification notificationIdentity) { var estudiantes = _enrollRepository.Query(x => x).Where(x => x.AcademicYear.Grade.Id == notificationIdentity.IdGradeAreaUserGeneralSelected && x.AcademicYear.Year == DateTime.Now.Year).Select(s => s.Student).ToList(); foreach (var estudiante in estudiantes) { if (estudiante.Tutor1.MyUser != null) { var parents = _userRepository.GetById(estudiante.Tutor1.MyUser.Id); if (parents != null) { notificationIdentity.Users.Add(parents); var parents2 = _userRepository.GetById(estudiante.Tutor2.MyUser.Id); if (parents2 != null && parents2.Id != parents.Id) { notificationIdentity.Users.Add(parents2); } } } } }