private ISubActivities GetSubactivities(SUBACTIVITIES subActivities) { switch (subActivities) { case SUBACTIVITIES.PERFORM_EXPERIMENT: return(new PerformExperiment()); case SUBACTIVITIES.READTEXT: return(new ReadText()); case SUBACTIVITIES.TELLTEXT: return(new TellText()); case SUBACTIVITIES.WRITETEXT: return(new WriteText()); case SUBACTIVITIES.NOTHING: default: return(null); } }
public bool StartActivity(int sub, EQUIPMENT Equip, SUBACTIVITIES SubAct, ROOM Room, int tIndex, int gIndex, int activity) { Subject subject = subjects[sub]; Teacher teacher; Group group; Room room = GetRoom(Room); Equipment equipment = GetEquipment(Equip); ISubActivities subActivities = GetSubactivities(SubAct); int successFactor = 0; if (activity != 4) { teacher = staff[subject][tIndex]; group = teacher.Groups[gIndex]; } else { List <Group> teachersGroups = new List <Group>(); if (staff[subject].Count == 0) { return(false); } teacher = staff[subject][0]; foreach (Teacher persone in staff[subject]) { teachersGroups.AddRange(persone.Groups); } subject.Lectures(teachersGroups, equipment); return(true); } switch (activity) { case 1: successFactor = subject.Lab(group, equipment, room, subActivities); break; case 2: successFactor = subject.Credit(group); break; case 3: successFactor = subject.Examination(group, equipment); break; case 5: successFactor = subject.ModulControlWork(group, equipment); break; case 6: successFactor = subject.Practice(group, equipment, subActivities); break; case 7: successFactor = subject.TermPaper(group, equipment); break; default: return(false); } return(true); }
private void StartActivity(int subject) { int teacher = 0; int group = 0; int activity = choiceActivity(); EQUIPMENT equipment = EQUIPMENT.NOTHING; ROOM room = ROOM.CLASSROOM; SUBACTIVITIES subActivities = SUBACTIVITIES.NOTHING; if (activity != 4) { teacher = ChoiceTeacher(subject); if (teacher == -2) { Console.WriteLine("//|Process stop|\\\\"); return; } if (teacher != -1) { group = ChoiseTeacherGroup(subject, teacher); if (group == -2) { Console.WriteLine("//|Process stop|\\\\"); return; } } } switch (activity) { case 1: equipment = ChoiceEQUIPMENT(); room = ChoiceROOM(); subActivities = ChoiceSUBACTIVITIES(); break; case 6: equipment = ChoiceEQUIPMENT(); subActivities = ChoiceSUBACTIVITIES(); break; case 2: case 3: case 4: case 5: case 7: equipment = ChoiceEQUIPMENT(); break; } if (teacher == -1) { int tCount = infoService.GetSubjTeacherCount(subject); int gCount = 0; for (int i = 0; i < tCount; i++) { gCount = infoService.GetTeacherGroupCount(subject, i); for (int j = 0; j < gCount; j++) { service.StartActivity(subject, equipment, subActivities, room, i, j, activity); } } } else if (group == -1) { int gCount = 0; gCount = infoService.GetTeacherGroupCount(subject, teacher); for (int j = 0; j < gCount; j++) { service.StartActivity(subject, equipment, subActivities, room, teacher, j, activity); } } else { service.StartActivity(subject, equipment, subActivities, room, teacher, group, activity); } }