AuthorizationWindow.xaml.cs 2.2 KB

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