예제 #1
0
        private Slot CreateSlot(string venue, Model.DayOfWeek dayOfWeek, int startHour, int startMinute, int endHour, int endMinute)
        {
            Slot slot = new Slot(venue, dayOfWeek, new TimeSpan(startHour, startMinute, 0), new TimeSpan(endHour, endMinute, 0));

            Slots.Add(slot);
            System.Instance.Database.Save();
            return(slot);
        }
예제 #2
0
        public ClassSlot CreateClassSlot(Class @class, string venue, Model.DayOfWeek dayOfWeek, int startHour, int startMinute, int endHour, int endMinute)
        {
            Slot      slot      = CreateSlot(venue, dayOfWeek, startHour, startMinute, endHour, endMinute);
            ClassSlot classSlot = new ClassSlot(@class, slot);

            ClassSlots.Add(classSlot);
            System.Instance.Database.Save();
            return(classSlot);
        }
예제 #3
0
        static private Schedule getSchedule(string[,] excel)
        {
            var plan = new Schedule();

            plan.Name = excel[0, 0];
            int bufor_wiersz  = excel.GetLength(0);
            int bufor_kolumna = excel.GetLength(1);

            var dzien = new Model.DayOfWeek();
            var grupa = new StudentGroup();

            for (int wiersz = 1; wiersz < bufor_wiersz; wiersz++)
            {
                Subject aktualnyPrzedmiot = new Subject();

                for (int kolumna = 0; kolumna < bufor_kolumna; kolumna++)
                {
                    if (kolumna == 0 && String.IsNullOrEmpty(excel[wiersz, kolumna]))
                    {
                        if (dzien.Day != GetDayOfWeekFromString(excel[wiersz, kolumna]))
                        {
                            // jest nowy dzien
                            plan.DaysOfWeek.Add(dzien);
                            dzien = new Model.DayOfWeek();
                        }
                        dzien.Day = GetDayOfWeekFromString(excel[wiersz, kolumna]);
                    }
                    else if (kolumna == 1 && String.IsNullOrEmpty(excel[wiersz, kolumna]))
                    {
                        grupa.Name = excel[wiersz, kolumna];
                    }
                    else
                    {
                        if (!String.IsNullOrEmpty(excel[wiersz, kolumna]))// jest coś w komórce
                        {
                            if (excel[wiersz, kolumna] != aktualnyPrzedmiot.Name)
                            {
                                // zaczyna sie nowy przedmiot i konczy stary lub po prostu zaczyna sie przedmiot
                                if (!String.IsNullOrEmpty(aktualnyPrzedmiot.Name))
                                {
                                    aktualnyPrzedmiot.TimeEnds = Tools.SubjectTimeResolver.Instance.GetMinutesFromCell(kolumna);
                                    grupa.Subjects.Add(aktualnyPrzedmiot);
                                }
                                aktualnyPrzedmiot            = new Subject();
                                aktualnyPrzedmiot.TimeStarts = Tools.SubjectTimeResolver.Instance.GetMinutesFromCell(kolumna);
                                aktualnyPrzedmiot.Name       = excel[wiersz, kolumna];
                            }
                            else
                            {
                                // trwa stary
                            }
                        }
                        else // komórka jest pusta
                        {
                            if (!String.IsNullOrEmpty(aktualnyPrzedmiot.Name)) // aktualny przedmiot nie jest pusty
                            {
                                // skonczyl sie aktualny przedmiot
                                aktualnyPrzedmiot.TimeEnds = Tools.SubjectTimeResolver.Instance.GetMinutesFromCell(kolumna);
                                grupa.Subjects.Add(aktualnyPrzedmiot);
                                aktualnyPrzedmiot = new Subject();
                            }
                        }
                    }
                }
                dzien.StudentGroups.Add(grupa);
                grupa = new StudentGroup();
            }


            return(plan);

            //var dayOfWeek = DayOfWeek.Monday;
            //for (int baseRow = 1; baseRow < excelValues.GetLength(0); baseRow += 7)
            //{
            //    for (var rowNumber = baseRow; rowNumber < baseRow + 6; rowNumber++)
            //    {
            //        var groupSchedule = new string[49];
            //        for (int columnNumber = 3; columnNumber < excelValues.GetLength(1); columnNumber++)
            //            groupSchedule[columnNumber - 3] = excelValues[rowNumber, columnNumber];

            //        yield return new Schedule(groupSchedule, dayOfWeek);
            //    }

            //    dayOfWeek++;
            //}
        }