private void ChangeSubAreaUsers(int subAreaId, User[] actualUsers) { List <int> oldSubAreaUsers = subAreaController.GetAllStudentsIds(subAreaId); List <int> actualUsersIds = UserUtils.UserToUserIds(actualUsers); List <int> usersToAssign = UserUtils.OneWayCompareUsers(actualUsersIds, oldSubAreaUsers); List <int> usersToDelete = UserUtils.OneWayCompareUsers(oldSubAreaUsers, actualUsersIds); SubAreaAssignUtils.AssignUsersToSubArea(usersToAssign.ToArray(), subAreaController, subAreaId); SubAreaAssignUtils.UnAssignUsersToSubArea(usersToDelete.ToArray(), subAreaController, subAreaId); }
private void ChangeUserSubAreas(int userId, List <string> newSubAreas, bool changedName) { List <SubArea> UserSubAreas = subAreaController.GetUserSubAreas(userId); if (changedName) { ResetSubAreasProxy(UserSubAreas); } List <string> oldSubAreas = SubAreaUtils.GetSubAreasStrings(UserSubAreas).ToList(); List <string> subAreasToAssign = SubAreaUtils.OneWayCompareSubAreas(newSubAreas, oldSubAreas); List <string> subAreasToDelete = SubAreaUtils.OneWayCompareSubAreas(oldSubAreas, newSubAreas); SubAreaAssignUtils.AssignSubAreasToUser(userId, subAreaController, subAreasToAssign.ToArray()); SubAreaAssignUtils.UnAssignSubAreasToUser(userId, subAreaController, subAreasToDelete.ToArray()); }
private void ChangeSubAreaUsers(int subAreaId, User[] actualStudents, User[] actualTeachers) { List <int> oldSubAreaUsers = subAreaController.GetAllStudentsIds(subAreaId); foreach (int userId in oldSubAreaUsers) { StudentTeacherProxy.UpdateStudent(userId); } List <int> actualUsersIds = UserUtils.UserToUserIds(actualStudents.Concat(actualTeachers).ToArray()); List <int> usersToAssign = UserUtils.OneWayCompareUsers(actualUsersIds, oldSubAreaUsers); List <int> usersToDelete = UserUtils.OneWayCompareUsers(oldSubAreaUsers, actualUsersIds); SubAreaAssignUtils.AssignUsersToSubArea(usersToAssign.ToArray(), subAreaController, subAreaId); SubAreaAssignUtils.UnAssignUsersToSubArea(usersToDelete.ToArray(), subAreaController, subAreaId); }
public void DeleteStudent(int userId) { List <SubArea> userSubAreas = subAreaController.GetUserSubAreas(userId); ResetSubAreasProxy(userSubAreas); List <string> assignmentsToDelete = SubAreaUtils.GetSubAreasStrings(userSubAreas).ToList(); SubAreaAssignUtils.UnAssignSubAreasToUser(userId, subAreaController, assignmentsToDelete.ToArray()); StudentExamController studentExamController = new StudentExamController(); StudentExamQuestionController studentExamQuestionController = new StudentExamQuestionController(); List <StudentExam> allStudentExamIds = studentExamController.GetAllStudentExams(userId); foreach (StudentExam studentExam in allStudentExamIds) { studentExamQuestionController.DeleteAllStudentExamQuestions(studentExam.Id); studentExamController.DeleteStudentExam(studentExam.Id); } userController.DeleteStudent(userId); }
// POST: api/EditSubArea public void Post(object refurbishedSubArea, bool edit) { JObject juser = refurbishedSubArea as JObject; RealSubArea recievingSubArea = juser.ToObject <RealSubArea>(); SubArea subArea = new SubArea(); if (edit == false) { subArea = SubAreaUtils.NewSubToSubArea(recievingSubArea, subAreaController); int subAreaId = subAreaController.AddSubArea(subArea); int[] studentsIds = UserUtils.UserToUserIds(recievingSubArea.studentsObj).ToArray(); SubAreaAssignUtils.AssignUsersToSubArea(studentsIds, subAreaController, subAreaId); } else { subArea = SubAreaUtils.EditedSubToSubArea(recievingSubArea, subAreaController); subAreaController.EditSubArea(recievingSubArea.Id, subArea); ChangeSubAreaUsers(recievingSubArea.Id, recievingSubArea.studentsObj); } }
public void AddStudent(User model, string[] subareas) { int userId = userController.AddUser(model); SubAreaAssignUtils.AssignSubAreasToUser(userId, subAreaController, subareas); }