public GroupTeachersListsForLessons GetTeachersList(int groupId) { var answer = new GroupTeachersListsForLessons(); var teachersGroupParticipations = Db.GetTeachersGroupParticipations(groupId); var users = Db.GetUsers(); var groupLessons = Db.GetGroupLessons(groupId); foreach (var l in groupLessons) { answer.Lessons.Add(new GroupTeachersListsForLessons.ByLesson() { LessonId = l.LessonId }); } foreach (var t in teachersGroupParticipations) { var u = users.FirstOrDefault(x => x.Id == t.UserId); if (answer.Lessons.FirstOrDefault(x => x.LessonId == t.LessonId) == null) { answer.Lessons.Add(new GroupTeachersListsForLessons.ByLesson() { LessonId = t.LessonId }); } answer.Lessons.FirstOrDefault(x => x.LessonId == t.LessonId).Teachers.Add(u); } return(answer); }
public void GetAvailableTeachers(ref GroupTeachersListsForLessons data) { foreach (var l in data.Lessons) { var availableTeachers = Db.GetAvailableTeachers(l.LessonId); l.AvailableTeachers = new List <Users>(); foreach (var t in availableTeachers) { if (l.Teachers.FirstOrDefault(x => x.Id == t.Id) == null) { l.AvailableTeachers.Add(t); } } } }