AuthorizationWindow.xaml.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  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. MainWindow mainWindow = new MainWindow(user);
  32. mainWindow.Show();
  33. Close();
  34. }
  35. }
  36. }
  37. public bool Auth(string login, string password)
  38. {
  39. string pass = SomeMethods.Hash(password);
  40. var user = DataBase.db.Staff.SingleOrDefault(x => x.Login == login && x.Password == pass);
  41. if (user != null && user.Id_PersStatus == 2)
  42. {
  43. return true;
  44. }
  45. else if (user != null && user.Id_PersStatus == 1)
  46. {
  47. return true;
  48. }
  49. else
  50. {
  51. return false;
  52. }
  53. }
  54. private void Window_Loaded(object sender, RoutedEventArgs e)
  55. {
  56. Login.Focus();
  57. }
  58. }
  59. }