Beispiel #1
0
        public static DayTimetable GetNearestTimeTable(RootEventObject eventObject)
        {
            var first = eventObject.Events.ElementAt(0);

            if (first == null)
            {
                return(null);
            }

            DayTimetable time = new DayTimetable {
                Date = UnixTimeStampToDateTime(first.StartTime)
            };

            SubjectDto subject = new SubjectDto
            {
                Name       = eventObject.Subjects.FirstOrDefault(a => a.Id == first.SubjectId).Brief,
                StartTime  = UnixTimeStampToDateTime(first.StartTime),
                EndTime    = UnixTimeStampToDateTime(first.EndTime),
                NumberPair = first.NumberPair,
                Auditory   = first.Auditory,
                Type       = eventObject.types.FirstOrDefault(a => a.Id == first.Type).ShortName
            };

            foreach (var teacher in first.Teachers)
            {
                subject.Teachers.Add(eventObject.Teachers.FirstOrDefault(a => a.Id == teacher).ShortName);
            }
            time.Subjects.Add(subject);

            return(time);
        }
Beispiel #2
0
        public DayTimetable(RootEventObject eventObject, DateTime date)
        {
            if (eventObject == null)
            {
                throw new ArgumentNullException(nameof(eventObject));
            }

            Subjects = new List <SubjectDto>();
            Date     = date;
            foreach (var eventObj in eventObject.Events)
            {
                SubjectDto subject = new SubjectDto();
                subject.Name       = eventObject.Subjects.FirstOrDefault(a => a.Id == eventObj.SubjectId).Brief;
                subject.StartTime  = UnixTimeStampToDateTime(eventObj.StartTime);
                subject.EndTime    = UnixTimeStampToDateTime(eventObj.EndTime);
                subject.NumberPair = eventObj.NumberPair;
                subject.Auditory   = eventObj.Auditory;
                subject.Type       = eventObject.types.FirstOrDefault(a => a.Id == eventObj.Type).ShortName;

                foreach (var teacher in eventObj.Teachers)
                {
                    subject.Teachers.Add(eventObject.Teachers.FirstOrDefault(a => a.Id == teacher).ShortName);
                }

                Subjects.Add(subject);
            }
        }