Пример #1
0
        /// <summary>
        /// Abfrage aller Dozenten einer Fakultät
        /// </summary>
        /// <param name="FacId">Id des Organisationsveranstalters, z.B. von FK09 oder andere</param>
        /// <returns>Liste aller Dozenten einer Fakultät</returns>
        public LecturersResponse GetFacLecturer(string FacId)
        {
            var lecturerService = new LecturerInfoService();

            var lecturerList = lecturerService.GetFacLecturers(FacId);

            var response = new LecturersResponse
            {
                Lecturers = lecturerList,
            };

            return(response);
        }
Пример #2
0
        /// <summary>
        /// Abfrage aller Kurse eines Dozenten
        /// </summary>
        /// <param name="LecturerId">Id des Dozenten</param>
        /// <returns>Liste aller Kurse, die ein Dozent hält</returns>
        public LecturerCoursesResponse GetLectureCourses(string LecturerId)
        {
            var lecturerService = new LecturerInfoService();

            var lecturerList = lecturerService.GetLecturerCourses(LecturerId);

            var response = new LecturerCoursesResponse
            {
                LecturerCourses = lecturerList,
            };

            return(response);
        }
Пример #3
0
        /// <summary>
        /// Abfrage aller noch stattfinden Sprechstunden eines Profs im Semester
        /// </summary>
        /// <param name="LecturerId">Id des Dozenten</param>
        /// <param name="Until">Datum bis zu dem alle Sprechstundentermine aufgelistet werden sollen; Datum im Format dd.MM.yyyy</param>
        /// <returns>Liste aller noch stattfindenen Spechstunden eines Dozenten</returns>
        public LecturerOfficeHoursResponse GetOfficeHour(string LecturerId, string Until)
        {
            var until             = DateTime.Parse(Until);
            var officeHourService = new LecturerInfoService();

            var officeHours = officeHourService.GetLecturerOfficehours(LecturerId, until);

            var response = new LecturerOfficeHoursResponse
            {
                OfficeHours = officeHours,
            };

            return(response);
        }
Пример #4
0
        //evtl TODO:
        //Abfrage der nächsten Termine eines Dozenten

        //Sprechstunden APIs
        /// <summary>
        /// Abfrage aller Sprechstunden aller Dozenten bis zum gewählten Zeitpunkt
        /// </summary>
        /// <param name="Until">Datum bis zu dem alle Sprechstunden aufgelistet werden sollen; Datum im Format dd.MM.yyyy </param>
        /// <returns>Liste aller verfügbaren Sprechstunden bis zum Datum</returns>
        public LecturersOfficeHourResponse GetAllWeekOfficeHours(string Until)
        {
            var until = DateTime.Parse(Until);

            var officeHourService = new LecturerInfoService();

            var officeHourList = officeHourService.GetAllOfficehours(until);

            var response = new LecturersOfficeHourResponse
            {
                OfficeHours = officeHourList,
            };

            return(response);
        }
Пример #5
0
        /// <summary>
        /// Abfrage aller Dozenten, deren Namen mit "StartsWith"- string beginnt
        /// </summary>
        /// <param name="StartsWith">Beliebiger String mit dem der Name anfangen soll</param>
        /// <returns>Liste aller Dozenten die mit dem übergebenen String anfangen</returns>
        public LecturersResponse GetLecturersStartswith(string StartsWith)
        {
            var lecturerService = new LecturerInfoService();

            var orgName = "FK 09";

            var lecturerList = lecturerService.GetLecturersStartwith(StartsWith, orgName);

            var response = new LecturersResponse
            {
                Lecturers = lecturerList,
            };

            return(response);
        }
Пример #6
0
        //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);
        }