示例#1
0
        public TimetableCourses(List <Courses> _listCourses, TimetableDozenti _timetableDozenti)
        {
            fillDictionaries();

            days.Add("Monday", blocksOfMonday);
            days.Add("Thuesday", blocksOfThuesday);
            days.Add("Wednesday", blocksOfWednesday);
            days.Add("Thursday", blocksOfThursday);
            days.Add("Friday", blocksOfFriday);

            insertObjectsInTimetable(_listCourses, _timetableDozenti);
        }
示例#2
0
        private void insertObjectsInTimetable(List <Courses> _listCourses, TimetableDozenti _timetableDozenti)
        {
            Dictionary <string, List <Courses> >[] blocksOfTheWeekCourses = { this.blocksOfMonday, this.blocksOfThuesday, this.blocksOfWednesday, this.blocksOfThursday, this.blocksOfFriday };
            Dictionary <string, List <Dozenti> >[] blocksOfTheWeekDozenti = { _timetableDozenti.blocksOfMonday, _timetableDozenti.blocksOfThuesday, _timetableDozenti.blocksOfWednesday, _timetableDozenti.blocksOfThursday, _timetableDozenti.blocksOfFriday };

            for (int day = 0; day < blocksOfTheWeekDozenti.Length; day++)
            {
                for (int block = 1; block < 7; block++)
                {
                    for (int i = 0; i < blocksOfTheWeekDozenti[day][block + ".Block"].Count; i++)
                    {
                        Dozenti dozent = blocksOfTheWeekDozenti[day][block + ".Block"][i];
                        for (int j = 0; j < _listCourses.Count; j++)
                        {
                            if (_listCourses[j].professor == dozent.name)
                            {
                                bool existing = false;
                                for (int k = 0; k < blocksOfTheWeekCourses[day][block + ".Block"].Count; k++)
                                {
                                    if (blocksOfTheWeekCourses[day][block + ".Block"][k].professor == dozent.name)
                                    {
                                        existing = true;
                                        break;
                                    }
                                }
                                if (existing == false)
                                {
                                    blocksOfTheWeekCourses[day][block + ".Block"].Add(_listCourses[j]);
                                    _listCourses.Remove(_listCourses[j]);
                                }
                            }
                        }
                    }
                }
            }
        }
示例#3
0
        public void printTimetable(string _roomNumber, TimetableCourses _tableCourses, TimetableDozenti _tableDozenti)
        {
            string[] dayNames = { "Monday", "Thuesday", "Wednesday", "Thursday", "Friday" };
            Dictionary <string, List <Rooms> >[] timesOfDaysRooms = { this.blocksOfMonday, this.blocksOfThuesday, this.blocksOfWednesday, this.blocksOfThursday, this.blocksOfFriday };
            for (int day = 0; day < timesOfDaysRooms.Length; day++)
            {
                for (int block = 1; block < 7; block++)
                {
                    for (int i = 0; i < timesOfDaysRooms[day][block + ".Block"].Count; i++)
                    {
                        Rooms room = timesOfDaysRooms[day][block + ".Block"][i];

                        if (room.roomnumber == _roomNumber)
                        {
                            Console.WriteLine(dayNames[day] + ": " + block + ".Block: " +
                                              _tableCourses.days[dayNames[day]][block + ".Block"][i].name + ": " +
                                              _tableDozenti.days[dayNames[day]][block + ".Block"][i].name);
                        }
                    }
                }
            }
        }
示例#4
0
        static void Main(string[] args)
        {
            fillListsWithJsonData();

            TimetableWPVs    tableWPVs    = new TimetableWPVs(allWPVObjects);
            TimetableDozenti tableDozenti = new TimetableDozenti(allDozentiObjects, tableWPVs);
            TimetableCourses tableCourses = new TimetableCourses(allRegularCourseObjects, tableDozenti);
            TimetableRooms   tableRooms   = new TimetableRooms(allRoomsObjects, tableCourses, tableWPVs);

            bool runProgram = true;

            Console.WriteLine("Gooday Day, what would you like to do ?");

            while (runProgram == true)
            {
                Console.WriteLine("You can choose between 4 kinds Timetables");
                Console.WriteLine("1. Specific course of Study");
                Console.WriteLine("2. All Courses");
                Console.WriteLine("3. Professor");
                Console.WriteLine("4. Rooms");
                Console.WriteLine("5. Exit");
                Console.WriteLine("Please type in the number you want");
                string mode = Console.ReadLine();

                switch (mode)
                {
                case "1":
                    Console.Clear();
                    Console.WriteLine("Please, enter the name of the course of study you would like to see (MIB, OMB, MKB)");
                    string course = Console.ReadLine();
                    Console.WriteLine("Which Semester are you interested in ?");
                    string semesterString = Console.ReadLine();
                    int    semesterNumber = Int32.Parse(semesterString);
                    Console.Clear();
                    tableCourses.printTimetable(course, semesterNumber, tableWPVs);
                    break;

                case "2":
                    Console.Clear();
                    tableCourses.printAllCoursesTimetable(tableRooms);
                    break;

                case "3":
                    Console.Clear();
                    Console.WriteLine("Please, enter the name of the professor you are interested in");
                    string professorName = Console.ReadLine();
                    tableDozenti.printTimetable(professorName, tableCourses, tableRooms);
                    break;

                case "4":
                    Console.Clear();
                    Console.WriteLine("Please, enter the roomname you are interested in");
                    string roomName = Console.ReadLine();
                    tableRooms.printTimetable(roomName, tableCourses, tableDozenti);
                    break;

                case "5":
                    Console.Clear();
                    runProgram = false;
                    break;

                default:
                    Console.Clear();
                    Console.WriteLine("Please, enter a valid number");
                    break;
                }
            }
        }