public ParentCourseGradesModel Build(List <Data.Entities.Student> students, Data.Entities.Session session, Data.Entities.ParentCourse parentCourse) { var findParentCourseModel = _sectionToFindParentCourseModelMapper.Build(session, t => { t.ParentCourse = parentCourse.ParentCourseCode + " - " + parentCourse.ParentCourseTitle; t.ParentCourseId = parentCourse.Id; }); var grades = students.SelectMany(s => s.ParentCourseGrades); var parentGradesModelList = grades.Select(g => _parentCourseGradeToGradeModelMapper.Build(g)).ToList(); var studentsInParentCourseWithoutGrades = students.Where(s => s.ParentCourseGrades.IsNullOrEmpty()).ToList(); parentGradesModelList = parentGradesModelList.Concat(studentsInParentCourseWithoutGrades.Select(s => _studentToGradeModelMapper.Build(s))).ToList(); var parentCourseGradesModel = new ParentCourseGradesModel(); parentCourseGradesModel.FindParentCourseModel = findParentCourseModel; parentCourseGradesModel.ParentGradesModelList = parentGradesModelList.ToList(); return(parentCourseGradesModel); }
public static CreateModel CreateNewWith(List <ClassPeriodListItemModel> classPeriods, List <LocationListItemModel> classRoomModels, Data.Entities.Session session) { var createModel = new CreateModel { Periods = classPeriods, Classrooms = classRoomModels, }; if (session != null) { createModel.SessionId = session.SessionIdentity; createModel.Session = session.SessionName; } return(createModel); }