示例#1
0
        private void AddClasses(object sender, RoutedEventArgs e)
        {
            try
            {
                int timeIndex = -1;

                StudentsClass sClass;
                sClass = (StudentsClass)ClasseslistBox.SelectedItem;
                ClassRoom classRoom;
                if (UpperWeekradioButton.IsChecked == true)
                {
                    timeIndex = 0;
                    timeIndex += DaycomboBox.SelectedIndex * 6;
                    timeIndex += TimecomboBox.SelectedIndex;
                }
                if (LowerWeekradioButton.IsChecked == true)
                {
                    timeIndex = 0;
                    timeIndex += 36;
                    timeIndex += DaycomboBox.SelectedIndex * 6;
                    timeIndex += TimecomboBox.SelectedIndex;
                }
                classRoom = (ClassRoom)ClassRoomlistView.Items[0];
                bool freeClassroom = true, existAddClassInLVIP = false;
                foreach (var item in setting.LVIP)
                {
                    //Проверка не занята ли аудитория в это время
                    if (item.Room == classRoom && item.Time == timeIndex)
                    { freeClassroom = false; break; }
                }
                if (sClass != null)
                {
                    if (classRoom != null && timeIndex != -1)
                    {
                        if (freeClassroom)
                        {
                            foreach (var item in setting.LVIP)
                            {

                                if (item.sClass == sClass)
                                {
                                    item.Room = classRoom;
                                    item.Time = timeIndex;
                                    existAddClassInLVIP = true;
                                    MessageBox.Show("Всё ок");
                                }

                            }
                        }
                        else { MessageBox.Show("В это время в этой аудитории уже стоит пара"); }

                        if (freeClassroom)
                        {
                            if (!existAddClassInLVIP)
                            {
                                FixedClasses vi = new FixedClasses(sClass, timeIndex, classRoom);
                                setting.LVIP.Add(vi);
                                MessageBox.Show("Всё ок");
                            }

                        }
                        else { MessageBox.Show("В это время в этой аудитории уже стоит пара"); }

                    }
                }
                setting.LVIPB = new List<VIPClasesBin>();
                foreach (var item in setting.LVIP)
                {
                    VIPClasesBin vipClasesBin =
                        new VIPClasesBin(Array.FindIndex(CurrentBase.EStorage.Classes, c => c == item.sClass), item.Time, Array.FindIndex(CurrentBase.EStorage.ClassRooms, c => c == item.Room));
                    setting.LVIPB.Add(vipClasesBin);

                }
                BinaryFormatter formatter = new BinaryFormatter();
                using (FileStream fs = new FileStream("Setting.dat", FileMode.Create))
                {
                    formatter.Serialize(fs, setting.LVIPB);
                }
            }
            catch
            {

            }
        }
示例#2
0
        private void RemoveClasses(object sender, RoutedEventArgs e)
        {
            StudentsClass sClass;
            sClass = (StudentsClass)ClasseslistBox.SelectedItem;
            if (sClass != null)
            {
                for (int indexVip = 0; indexVip < setting.LVIP.Count; indexVip++)
                {
                    if (setting.LVIP[indexVip].sClass == sClass)
                    {
                        setting.LVIP.RemoveAt(indexVip);
                        DaycomboBox.SelectedIndex = -1;
                        TimecomboBox.SelectedIndex = -1;
                        InfoGrooplistView.ItemsSource = null;
                        ClassRoomlistView.Items.Clear();
                        indexVip--;

                    }
                }
                setting.LVIPB = new List<VIPClasesBin>();
                foreach (var item in setting.LVIP)
                {
                    VIPClasesBin vipClasesBin =
                        new VIPClasesBin(Array.FindIndex(CurrentBase.EStorage.Classes, c => c == item.sClass), item.Time, Array.FindIndex(CurrentBase.EStorage.ClassRooms, c => c == item.Room));
                    setting.LVIPB.Add(vipClasesBin);

                }
                BinaryFormatter formatter = new BinaryFormatter();
                using (FileStream fs = new FileStream("Setting.dat", FileMode.Create))
                {
                    formatter.Serialize(fs, setting.LVIPB);
                }
            }
        }