123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- using Microsoft.Win32;
- using SportComplex.Model;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows;
- using System.Windows.Controls;
- using System.Windows.Data;
- using System.Windows.Documents;
- using System.Windows.Input;
- using System.Windows.Media;
- using System.Windows.Media.Imaging;
- using System.Windows.Navigation;
- using System.Windows.Shapes;
- namespace SportComplex.Program.Pages.EditAddPages
- {
- /// <summary>
- /// Логика взаимодействия для EditAddSection.xaml
- /// </summary>
- public partial class EditAddSection : Page
- {
- // Поле для хранения экзепляра добавляемой секции (передаем объект класса Section)
- private Model.Section section = new Model.Section();
- public EditAddSection(Model.Section selectSection)
- {
- InitializeComponent();
- if (selectSection != null)
- section = selectSection;
- // Передача объекта класса для участия в привязке данных
- DataContext = section;
- }
- // Смена фотографии секции
- private void ChangeImageSectionBtn_Click(object sender, RoutedEventArgs e)
- {
- OpenFileDialog ofg = new OpenFileDialog();
- if (ofg.ShowDialog() == true && !String.IsNullOrWhiteSpace(ofg.FileName))
- {
- InputPhotoSectionTxb.Text = ofg.FileName.ToString();
- InputPhotoSectionTxb.Focus();
- }
- }
- // Вернуться назад
- private void BackBtn_Click(object sender, RoutedEventArgs e)
- {
- NavigationService.Navigate(new View());
- }
- // Сохранение секции
- private void SaveSectionBtn_Click(object sender, RoutedEventArgs e)
- {
- // Предварительная проверка на количесто символов, заполняемость
- StringBuilder errors = new StringBuilder();
- if (string.IsNullOrWhiteSpace(section.name))
- errors.AppendLine("* Название услуги не введено!");
- foreach (var record in Entities.GetContext().Section)
- {
- if (record.name == section.name)
- errors.AppendLine("* Такое название секции уже существует!");
- }
- if (section.duration == 0)
- errors.AppendLine("* Длительность должно составлять определенное кол-во времени");
- if (section.duration > 14400)
- errors.AppendLine("* Длительность не может быть более 4-х часов!");
- if (section.cost == 0)
- errors.AppendLine("* Стоимость не может быть равна значению '0'");
- if (section.cost > 100)
- errors.AppendLine("* Скидка не может быть больше 100%");
- // Если есть ошибки, то вывести это
- if (errors.Length > 0)
- {
- MessageBox.Show(errors.ToString());
- return;
- }
- // Добавлить новую запись
- if (section.ID_section == 0)
- Entities.GetContext().Section.Add(section);
- try
- {
- Entities.GetContext().SaveChanges();
- MessageBox.Show("Данные сохранены");
- NavigationService.Navigate(new View());
- }
- catch (Exception ex)
- { MessageBox.Show(ex.Message); }
- }
- // Обработчик на запрет ввода букв в строку стоимости
- private void InputCostSectionTxb_KeyDown(object sender, KeyEventArgs e)
- {
- if (e.Key < Key.D0 || e.Key > Key.D9) e.Handled = true;
- }
- // Обработчик на запрет ввода букв в строку скидки
- private void InputDiscountSectionTxb_KeyDown(object sender, KeyEventArgs e)
- {
- if (e.Key < Key.D0 || e.Key > Key.D9) e.Handled = true;
- }
- }
- }
|