//Dozenteninfo APIs /// <summary> /// Abfrage aller Dozenten /// </summary> /// <returns>Liste aller verfügbaren Dozenten</returns> public LecturersResponseExtended GetAllLecture() { var lecturerService = new LecturerInfoService(); // Fakultät var orgService = new OrganizerService(); var faculty = orgService.GetOrganiser("FK 09"); // Lehrveranstaltungen im aktuellen Semester var semesterService = new SemesterService(); var semester = semesterService.GetSemester(DateTime.Today); // Dozenten, die Lehrveranstaltungen im aktuellen Semester anbieten var activeLecturers = orgService.GetLecturers(faculty, semester); // Benutzerdaten var userService = new UserInfoService(); // für jeden Dozenten var LecturerList = new List <LecturerContractExtended>(); foreach (var lecturer in activeLecturers) { var lecModel = new LecturerContractExtended(); lecModel.MemberId = lecturer.Id; lecModel.Title = lecturer.Role; lecModel.Room = ""; // Details zum Benutzerkonto var user = userService.GetUser(lecturer.UserId); if (user != null) { lecModel.FirstName = user.FirstName; lecModel.LastName = user.LastName; lecModel.Email = user.Email; } else { lecModel.LastName = lecturer.Name; } // gibt es noch nicht lecModel.Functions = new List <string>(); // Averfügbar Slots lecModel.AvailableSlots = lecturerService.GetAvailabeSlots(lecturer, semester); LecturerList.Add(lecModel); } var response = new LecturersResponseExtended() { Lecturers = LecturerList }; return(response); }