public static void ApplyChanges(ApplicationUser user, ApplicationUserEditPageModel editPageModel, IEnumerable <Faculty> faculties, IEnumerable <Lectern> lecterns, IEnumerable <Curriculum> curriculums) { if (user.FirstName != editPageModel.FirstName) { user.FirstName = editPageModel.FirstName; } if (user.SecondName != editPageModel.SecondName) { user.SecondName = editPageModel.SecondName; } if (user.DocNo != editPageModel.DocNo) { user.DocNo = editPageModel.DocNo; } if (user.YearNo != editPageModel.YearNo) { user.YearNo = editPageModel.YearNo; } if (user.DegreeType != editPageModel.DegreeType) { user.DegreeType = editPageModel.DegreeType; } if (user.Faculty.FacultyId != editPageModel.FacultyId) { var faculty = faculties.FirstOrDefault(x => x.FacultyId == editPageModel.FacultyId); if (faculty != null) { user.Faculty = faculty; } } if (user.Lectern.LecternId != editPageModel.LecternId) { var lectern = lecterns.FirstOrDefault(x => x.LecternId == editPageModel.LecternId); if (lectern != null) { user.Lectern = lectern; } } if (user.Сurriculum != null && user.Сurriculum.CurriculumId != editPageModel.CurriculumId) { var cur = curriculums.FirstOrDefault(x => x.CurriculumId == editPageModel.CurriculumId); if (cur != null) { user.Сurriculum = cur; } } if (user.Status != editPageModel.UserStatus) { user.Status = editPageModel.UserStatus; } }
public static ApplicationUser ComposeApplicationUser(ApplicationUserEditPageModel editPageModel, IEnumerable <Faculty> faculties, IEnumerable <Lectern> lecterns, IEnumerable <Curriculum> curriculums) { ApplicationUser user = new ApplicationUser { FirstName = editPageModel.FirstName, SecondName = editPageModel.SecondName, DocNo = editPageModel.DocNo, Status = editPageModel.UserStatus, CreatedAt = DateTime.Now }; var faculty = faculties.FirstOrDefault(x => x.FacultyId == editPageModel.FacultyId); if (faculty != null) { user.Faculty = faculty; } var lectern = lecterns.FirstOrDefault(x => x.LecternId == editPageModel.LecternId); if (lectern != null) { user.Lectern = lectern; } switch (editPageModel.UserType) { case UserType.Student: user.DegreeType = editPageModel.DegreeType; user.YearNo = editPageModel.YearNo; user.Type = UserType.Student; var curriculum = curriculums.FirstOrDefault(x => x.CurriculumId == editPageModel.CurriculumId); if (curriculum != null) { user.Сurriculum = curriculum; } break; case UserType.Lecturer: user.DegreeType = DegreeType.Unknown; user.Type = UserType.Lecturer; break; } return(user); }