public virtual IClassActivity RemoveLast() { IClassActivity classActivity = CurrentCourseActivities.RemoveLast(); TotalWeight -= classActivity.Weight(); return(classActivity); }
public override bool Add(IClassActivity classActivity) { if (classActivity != null && !ScheduleTimes.AddAlIfNoneOverlap(classActivity.Times)) { return(false); } return(base.Add(classActivity)); }
public override IClassActivity RemoveLast() { IClassActivity classActivity = base.RemoveLast(); if (classActivity != null) { ScheduleTimes.RemoveAll(classActivity.Times); } return(classActivity); }
private bool CalculateSetup_NextClassActivity ( ImmutableListEnumerator <Course> courses, CourseGroup group, ImmutableListEnumerator <ClassActivitiesInfo> classActivitiesOfKindEnumerator, IClassActivity classActivity ) { bool added = CurrentScheduleBuilder.AddClassActivity(classActivity); bool success = CalculateSetup_NextKindOfClassActivities(courses, group, classActivitiesOfKindEnumerator); CurrentScheduleBuilder.RemoveLastClassActivity(); return(added && success); }
public override bool Add(IClassActivity classActivity) { if (classActivity != null) { if (!ScheduleTimes.AddAlIfNoneOverlap(classActivity.Times)) { return(false); } if (!HasLaunchBreak()) { ScheduleTimes.RemoveAll(classActivity.Times); return(false); } } return(base.Add(classActivity)); }
public CourseGroup(IClassActivity lecture, IEnumerable <IClassActivity> practicalClasses, IEnumerable <IClassActivity> labs) { if (lecture is null) { throw new ArgumentNullException(nameof(lecture)); } if (practicalClasses is null) { throw new ArgumentNullException(nameof(practicalClasses)); } if (labs is null) { throw new ArgumentNullException(nameof(labs)); } Lecture = lecture; PracticalClasses = practicalClasses; Labs = labs; }
public bool AddClassActivity(IClassActivity classActivity) { bool success; if (IsValid) { success = CurrentCourseActivities.Add(classActivity); } else { success = false; } if (!success) { InvalidScope++; } return(success); }
public static int Weight(this IClassActivity classActivity) { return(classActivity?.Weight ?? 0); }
public virtual CourseSchedulePlacement BuildCoursePlacement(Course course, CourseGroup group) { IClassActivity lab = CurrentCourseActivities[^ 1];
public virtual bool Add(IClassActivity classActivity) { CurrentCourseActivities.Add(classActivity); TotalWeight += classActivity.Weight(); return(true); }