public UClassListModel(UClass cls)
 {
     Source         = cls ?? throw new ArgumentNullException(nameof(cls));
     Id             = cls.Id;
     Time           = $"{cls.StartTime:hh\\:mm}-{cls.EndTime:hh\\:mm}";
     InstructorName = cls.InstructorName;
     Days           = DayOfWeekConverter.ToString(cls.Days);
     Name           = cls.Course.Name;
     NumberOfPlaces = Math.Max(0, cls.Capacity - cls.NumberOfRegisteredStudents);
 }
示例#2
0
 public UScheduleListModel(USchedule src)
 {
     Source = src;
     DayOfWeek[] srcDays = src.Days.ToArray();
     Info               = $"{srcDays.Length} day{(srcDays.Length == 1 ? string.Empty : "s")} | {Source.FinancialHours} hour";
     ClassesModels      = Source.Classes.OrderBy(x => s_daysEqualityComparer.GetHashCode(x.Days)).ThenBy(c => c.StartTime).ThenBy(c => c.EndTime).Select(c => new UClassListModel(c)).ToArray();
     Days               = DayOfWeekConverter.ToString(srcDays);
     FinancialHours     = Source.FinancialHours.ToString();
     FirstStartTime     = Source.FirstStartTime.ToString("hh\\:mm");
     LastEndTime        = Source.LastEndTime.ToString("hh\\:mm");
     LongestDayDuration = Source.LongestDayDuration.ToString("hh\\:mm");
     MaximumBreaksTotal = Source.MaximumBreaksTotal.ToString("hh\\:mm");
 }