AuthorizationWindow.xaml.cs 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. using System;
  2. using System.Linq;
  3. using System.Windows;
  4. using System.Windows.Media.Imaging;
  5. namespace Hotel_Course_Project
  6. {
  7. /// <summary>
  8. /// Логика взаимодействия для AuthorizationWindow.xaml
  9. /// </summary>
  10. public partial class AuthorizationWindow : Window
  11. {
  12. public AuthorizationWindow()
  13. {
  14. InitializeComponent();
  15. }
  16. private void AuthBtn_Click(object sender, RoutedEventArgs e)
  17. {
  18. if (Auth(Login.Text, Password.Password) == false)
  19. {
  20. MessageBox.Show("Ошибка авторизации");
  21. Password.Password = "";
  22. }
  23. else
  24. {
  25. string Pass = SomeMethods.Hash(Password.Password);
  26. var user = DataBase.db.Staff.SingleOrDefault(x => x.Login == Login.Text && x.Password == Pass);
  27. if (user != null && user.Id_PersStatus == 2)
  28. {
  29. MessageBox.Show("Данный пользователь удалён из базы данных");
  30. }
  31. else
  32. {
  33. SomeMethods.pass = Password.Password;
  34. MainWindow mainWindow = new MainWindow(user);
  35. mainWindow.Show();
  36. Close();
  37. }
  38. }
  39. }
  40. public bool Auth(string login, string password)
  41. {
  42. string pass = SomeMethods.Hash(password);
  43. var user = DataBase.db.Staff.SingleOrDefault(x => x.Login == login && x.Password == pass);
  44. if (user != null && user.Id_PersStatus == 2)
  45. {
  46. return true;
  47. }
  48. else if (user != null && user.Id_PersStatus == 1)
  49. {
  50. return true;
  51. }
  52. else
  53. {
  54. return false;
  55. }
  56. }
  57. private void Window_Loaded(object sender, RoutedEventArgs e)
  58. {
  59. Login.Focus();
  60. }
  61. private void LostPass_Click(object sender, RoutedEventArgs e)
  62. {
  63. LoginRememberWindow LoginRemember = new LoginRememberWindow();
  64. LoginRemember.ShowDialog();
  65. }
  66. }
  67. }