/// <summary> /// A szigorlati követelmény ellenőrzése. /// </summary> /// <param name="student">A hallgató, akin az ellenőrzés elvégzendő.</param> private void ProcessExamRequirements(Student student) { // A megkövetelt mennyiség a workflow definition (.wd) fájlban van rögzítve. // Ha abban nem szerepel, akkor a követelmény 0. var result = new Result("Szigorlat", SummaCriteria.FirstOrDefault(gr => gr.Identifier == ExamGroup).Amount <= FilterCriteriaCourses(student, ExamGroup).Count()); Log.Write("Szigorlati kritérium elfogadva: " + (result.Value ? "igen" : "nem")); result.Courses.AddRange(FilterCriteriaCourses(student, ExamGroup)); student.Result.Weight += result.Weight; student.Result += result; student.Result.Value = student.Result.Value && result.Value; student.MissingCriteria += Math.Max(0, SummaCriteria.FirstOrDefault(gr => gr.Identifier == ExamGroup).Amount - FilterCriteriaCourses(student, ExamGroup).Count()); }
/// <summary> /// Meghatározza, hogy a hallgatónak jár-e a 2. § (6) alapján (két teljesített tankörivel) a mentesség az (5) b) vagy c) alól. /// </summary> /// <param name="student"></param> /// <returns>Igaz, ha jár a mentesség.</returns> private bool Determine26Exemption(Student student) { return(SummaCriteria.FirstOrDefault(gr => gr.Identifier == StudyGroupGroup).Amount <= FilterCriteriaCourses(student, StudyGroupGroup).Count()); }
/// <summary> /// Megadja a mintatanterv elején figyelembevételre előírt kötelezően választható tárgymennyiséget. /// </summary> /// <param name="all4">Igaz, ha az első négy félév kötelezően választható tárgyainak számát kérdezzük le</param> /// <returns>A mintatanterv elején előírt kötelezően választhatók száma</returns> private int GetCompHumAmount(bool all4 = false) { return(SummaCriteria.FirstOrDefault(gr => gr.Identifier == (all4 ? CompHumCourseSemester4Group : CompHumCourseGroup)).Amount); }