public string[] Get(string studentAreas) { List <string> allStudentAreas = studentAreas.Split(',').ToList(); List <Area> userAreas = new List <Area>(); foreach (string areaName in allStudentAreas) { userAreas.Add(areaController.getByName(areaName)); } List <SubArea> finalSubAreas = SubAreaUtils.GetAvailableSubAreasInAreas(userAreas, subAreaController); return(SubAreaUtils.GetSubAreasStrings(finalSubAreas)); }
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()); }
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); }