Пример #1
0
        public async Task <ActionResult <CourseDate> > PostCourseDate([FromBody] CourseDateDto courseDateDto)
        {
            Console.WriteLine("========== this is for test purposes =========");
            Console.WriteLine(courseDateDto.StartDate);
            Console.WriteLine(courseDateDto.EndDate);
            Console.WriteLine(courseDateDto.ProfessorID);
            DateTime   start       = DateTime.ParseExact(courseDateDto.StartDate, "yyyy-MM-dd HH:mm", CultureInfo.InvariantCulture);
            DateTime   end         = DateTime.ParseExact(courseDateDto.EndDate, "yyyy-MM-dd HH:mm", CultureInfo.InvariantCulture);
            CourseDate @courseDate = new CourseDate {
                Title       = courseDateDto.Title,
                Salle       = courseDateDto.Salle,
                ProfessorID = courseDateDto.ProfessorID,
                Description = courseDateDto.Title,
                DateStart   = start,
                DateEnd     = end,
                TrainingID  = courseDateDto.TrainingID,
                ModuleID    = courseDateDto.ModuleID,
                SubjectID   = courseDateDto.SubjectID,
                Type        = courseDateDto.Title,
            };

            _context.CourseDate.Add(@courseDate);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetCourseDate", new { id = courseDate.ID }, courseDate));
        }
Пример #2
0
        internal CourseDateDto ConvertDate(ActivityDate activityDate)
        {
            var courseDate = new CourseDateDto
            {
                Id         = activityDate.Id,
                From       = activityDate.Begin,
                Until      = activityDate.End,
                Begin      = activityDate.Begin.ToUniversalTime().ToString(@"yyyyMMdd\THHmmss\Z"),
                End        = activityDate.End.ToUniversalTime().ToString(@"yyyyMMdd\THHmmss\Z"),
                IsCanceled = activityDate.Occurrence.IsCanceled,
                Title      = activityDate.Title
            };


            foreach (var host in activityDate.Hosts)
            {
                var lecturer = new LecturerDto
                {
                    FirstName = host.FirstName,
                    LastName  = host.Name,
                    Title     = host.Title
                };

                if (!string.IsNullOrEmpty(host.UrlProfile))
                {
                    lecturer.AddAction("Profile", host.UrlProfile);
                }

                if (courseDate.Lecturer == null)
                {
                    courseDate.Lecturer = new List <LecturerDto>();
                }

                courseDate.Lecturer.Add(lecturer);
            }

            foreach (var room in activityDate.Rooms)
            {
                var courseRoom = new RoomDto
                {
                    Number   = room.Number,
                    Building = room.Number.Substring(0, 1)
                };


                if (courseRoom.Number.StartsWith("K") || courseRoom.Number.StartsWith("L"))
                {
                    courseRoom.Campus = "Pasing";
                }
                else if (courseRoom.Number.StartsWith("F"))
                {
                    courseRoom.Campus = "Karlstrasse";
                }
                else
                {
                    courseRoom.Campus = "Lothstrasse";
                }

                if (courseDate.Rooms == null)
                {
                    courseDate.Rooms = new List <RoomDto>();
                }

                courseDate.Rooms.Add(courseRoom);
            }

            return(courseDate);
        }