示例#1
0
 public static void Serialize(ListOfResorts lr)
 {
     using (FileStream fs = new FileStream("../../allresorts.xml", FileMode.Create))
     {
         ser.Serialize(fs, lr);
     }
 }
示例#2
0
        private void button1_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (listViewResorts.SelectedItem != null)
                {
                    Resort wnd = new Resort();
                    wnd.Show();

                    string sel       = listViewResorts.SelectedItem.ToString();
                    string name      = sel.Split(' ')[0];
                    string rink      = null;
                    string snowparks = null;
                    lr = Serialization.Deserialize(lr);
                    foreach (Ski_Resort res in lr.Res)
                    {
                        if (res.Name == name)
                        {
                            if (res.Rink == 1)
                            {
                                rink = "хелиски есть";
                            }
                            else
                            {
                                rink = "хелиски нет";
                            }
                            if (res.Snowparks >= 1)
                            {
                                snowparks = "Кол-во сноупарков: " + res.Snowparks + ", ";
                            }
                            else
                            {
                                snowparks = "Сноупарка нет, ";
                            }

                            wnd.labelName.Content    = "Курорт: " + res.Name;
                            wnd.labelCountry.Content = "Страна: " + res.Country;
                            wnd.labelPeak.Content    = "Пик: " + res.Highest_Peak + " м";
                            wnd.labelKm.Content      = "Протяжённость трасс: " + res.Km + " км";
                            wnd.labelSlope.Content   = "Самая длинная трасса: " + res.Longest_Slope + " км";
                            wnd.labelLifts.Content   = "Кол-во подъёмников: " + res.Ski_Lifts;
                            wnd.labelSnow.Content    = snowparks + rink;
                            wnd.labelSkipass.Content = "Стоимость скипасса на неделю: " + res.Skipass + "€";
                            wnd.image.Source         = new BitmapImage(new Uri(res.Photo));
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Выберите курорт!", "", MessageBoxButton.OK, MessageBoxImage.Warning);
                }
            }
            catch (Exception er)
            {
                MessageBox.Show(er.ToString());
            }
        }
示例#3
0
        public static ListOfResorts Deserialize(ListOfResorts lr)
        {
            ListOfResorts resorts = null;

            using (FileStream fs = new FileStream("../../allresorts.xml", FileMode.Open))
            {
                resorts = (ListOfResorts)ser.Deserialize(fs);
            }
            return(resorts);
        }
示例#4
0
        private void buttonNext_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                lr = Serialization.Deserialize(lr);
                foreach (var res in lr.Res)
                {
                    foreach (var h in res.Hotels)
                    {
                        if (listViewHotels.SelectedItem.ToString() == h.Name)
                        {
                            int index = res.Hotels.IndexOf(h);
                            if (index != (listViewHotels.Items.Count - 1))
                            {
                                index += 1;
                            }
                            else
                            {
                                buttonPrev.Visibility = Visibility.Hidden;
                            }

                            Hotel hot = res.Hotels.GetRange(index, 1)[0];
                            listViewHotels.SelectedIndex = index;
                            string wifi = "Wifi нет, ";
                            if (hot.Wifi == 1)
                            {
                                wifi = "Wifi есть, ";
                            }
                            string sauna = "сауны нет";
                            if (hot.Sauna == 1)
                            {
                                sauna = "сауна есть";
                            }
                            labelName.Content      = hot.Name;
                            labelPrice.Content     = "Цена за неделю: " + hot.Price + "€";
                            labelPeople.Content    = "Кол-во людей: " + hot.People;
                            labelKm.Content        = "До ближайшего подъёмника: " + hot.Km + " км";
                            labelWifiSauna.Content = wifi + sauna;
                            image1.Source          = new BitmapImage(new Uri(h.Photo1));
                            image2.Source          = new BitmapImage(new Uri(h.Photo2));
                            break;
                        }
                    }
                }
            }
            catch (Exception er)
            {
                MessageBox.Show(er.ToString());
            }
        }
示例#5
0
        /*СОХРАНИТЬ */
        private void buttonEdit_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (File.Exists("../../allresorts.xml"))
                {
                    lr = Serialization.Deserialize(lr);
                }
                foreach (var item in lr.Res)
                {
                    if (ski.Name == item.Name)
                    {
                        item.Name          = textBoxName.Text;
                        item.Country       = comboBoxCountry.Text;
                        item.Km            = int.Parse(textBoxKm.Text);
                        item.Highest_Peak  = int.Parse(textBoxPeak.Text);
                        item.Longest_Slope = int.Parse(textBoxSlope.Text);
                        item.Ski_Lifts     = int.Parse(textBoxLifts.Text);
                        item.Snowparks     = int.Parse(textBoxSnowparks.Text);
                        item.Skipass       = int.Parse(textBoxSkipass.Text);
                        if (checkBoxRink.IsChecked ?? false)
                        {
                            item.Rink = 1;
                        }
                        else
                        {
                            item.Rink = 0;
                        }
                        break;
                    }
                }

                Log.Logir("Изменена информация о курорте " + textBoxName.Text + " " + DateTime.Now);

                Serialization.Serialize(lr);

                Admin wnd = new Admin();
                wnd.Show();
                Close();
            }
            catch (Exception er)
            {
                MessageBox.Show(er.ToString());
            }
        }
示例#6
0
 public Admin()
 {
     try
     {
         InitializeComponent();
         if (File.Exists("../../allresorts.xml"))
         {
             listView.Items.Clear();
             lr = Serialization.Deserialize(lr);
             foreach (var item in lr.Res)
             {
                 listView.Items.Add(item.Show());
             }
         }
     }
     catch (Exception er)
     {
         MessageBox.Show(er.ToString());
     }
 }
示例#7
0
        public AdminAdd()
        {
            try
            {
                InitializeComponent();

                lr.Res = new List <Ski_Resort>();
                if (File.Exists("../../allresorts.xml"))
                {
                    lr = Serialization.Deserialize(lr);
                }
                foreach (var item in lr.Res)
                {
                    foreach (var h in item.Hotels)
                    {
                        hotels.Add(h);
                    }
                }
            }
            catch (Exception er)
            {
                MessageBox.Show(er.ToString());
            }
        }
示例#8
0
        public User()
        {
            InitializeComponent();

            lr = Serialization.Deserialize(lr);
        }
示例#9
0
 private void listViewHotels_SelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     try
     {
         Resort w = new Resort();
         if (listViewHotels.SelectedIndex != 0)
         {
             buttonPrev.Visibility = Visibility.Visible;
         }
         else
         {
             buttonPrev.Visibility = Visibility.Hidden;
         }
         if (listViewHotels.SelectedIndex != (listViewHotels.Items.Count - 1))
         {
             buttonNext.Visibility = Visibility.Visible;
         }
         else
         {
             buttonNext.Visibility = Visibility.Hidden;
         }
         lr = Serialization.Deserialize(lr);
         if (listViewHotels.SelectedItem != null)
         {
             if (listViewHotels.SelectedItem.ToString() == "К сожалению,\nвсе отели вблизи\nданного курорта\nзабронированы:(")
             {
                 buttonBook.Visibility = Visibility.Hidden;
             }
             else
             {
                 buttonBook.Visibility = Visibility.Visible;
             }
             foreach (var res in lr.Res)
             {
                 if (labelRes.Content.ToString() == res.Name)
                 {
                     foreach (var h in res.Hotels)
                     {
                         if (listViewHotels.SelectedItem.ToString() == h.Name)
                         {
                             string wifi = "Wifi нет, ";
                             if (h.Wifi == 1)
                             {
                                 wifi = "Wifi есть, ";
                             }
                             string sauna = "сауны нет";
                             if (h.Sauna == 1)
                             {
                                 sauna = "сауна есть";
                             }
                             labelName.Content      = h.Name;
                             labelPrice.Content     = "Цена за неделю: " + h.Price + "€";
                             labelPeople.Content    = "Кол-во людей: " + h.People;
                             labelKm.Content        = "Км от отеля: " + h.Km;
                             labelWifiSauna.Content = wifi + sauna;
                             image1.Source          = new BitmapImage(new Uri(h.Photo1));
                             image2.Source          = new BitmapImage(new Uri(h.Photo2));
                             break;
                         }
                     }
                 }
             }
         }
     }
     catch (Exception er)
     {
         MessageBox.Show(er.ToString());
     }
 }