RegWindow.xaml.cs 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. using System;
  2. using System.Linq;
  3. using System.Windows;
  4. namespace Kusach
  5. {
  6. /// <summary>
  7. /// Логика взаимодействия для RegWindow.xaml
  8. /// </summary>
  9. public partial class RegWindow : Window
  10. {
  11. public RegWindow()
  12. {
  13. InitializeComponent();
  14. }
  15. private void RegButton_Click(object sender, RoutedEventArgs e)
  16. {
  17. try
  18. {
  19. if (logbox.Text == "" || passbox.Text == "")
  20. MessageBox.Show("Поля не могут быть пустыми.");
  21. else if (cnt.db.Dispatcher.Select(item => item.Login).Contains(logbox.Text))
  22. MessageBox.Show("Данный логин уже занят");
  23. else
  24. {
  25. Dispatcher newUser = new Dispatcher()
  26. {
  27. IdDispatcher = cnt.db.Dispatcher.Select(p => p.IdDispatcher).DefaultIfEmpty(0).Max() + 1,
  28. Login = logbox.Text,
  29. Password = Encrypt.GetHash(passbox.Text),
  30. Surname = FNameBox.Text,
  31. Name = LNameBox.Text,
  32. Patronymic = MNameBox.Text,
  33. Birthday = Convert.ToDateTime(BirthdayBox.Text),
  34. PhoneNumber = PhoneBox.Text
  35. };
  36. cnt.db.Dispatcher.Add(newUser);
  37. cnt.db.SaveChanges();
  38. MessageBox.Show("Вы успешно зарегистрировались");
  39. MainWindow mw = new MainWindow();
  40. mw.Show();
  41. this.Close();
  42. }
  43. }
  44. catch (Exception ex)
  45. {
  46. MessageBox.Show($"Произошла ошибка. : {ex}");
  47. }
  48. }
  49. private void BackButton_Click(object sender, RoutedEventArgs e)
  50. {
  51. LogWindow lw = new LogWindow();
  52. lw.Show();
  53. this.Close();
  54. }
  55. }
  56. }