Auth.cs 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using Prism.Mvvm;
  7. using Prism.Commands;
  8. using System.Windows;
  9. namespace SASDesktop.ViewModels
  10. {
  11. class Auth : BindableBase
  12. {
  13. #region Команды
  14. /// <summary>
  15. /// Авторизует пользователя
  16. /// </summary>
  17. public DelegateCommand LoginCmd { get; set; }
  18. #endregion
  19. #region Свойства
  20. private string _login;
  21. private string _password;
  22. /// <summary>
  23. /// Логин
  24. /// </summary>
  25. public string Login
  26. {
  27. get { return _login; }
  28. set
  29. {
  30. _login = value;
  31. RaisePropertyChanged(nameof(Login));
  32. }
  33. }
  34. /// <summary>
  35. /// Пароль
  36. /// </summary>
  37. public string Password
  38. {
  39. get { return _password; }
  40. set
  41. {
  42. _password = value;
  43. RaisePropertyChanged(nameof(Password));
  44. }
  45. }
  46. #endregion
  47. public Auth()
  48. {
  49. LoginCmd = new DelegateCommand(LoginExecuted);
  50. }
  51. private void LoginExecuted()
  52. {
  53. // Пытаемся войти в приложение
  54. var db = new Models.SASEntities();
  55. var result = db.Employees.FirstOrDefault(e => e.Login == _login && e.Password == _password);
  56. /* Раскомментировать, когда данные будут импортированы
  57. if (result == null)
  58. {
  59. MessageBox.Show("Логин или пароль не совпадают");
  60. Login = "";
  61. Password = "";
  62. return;
  63. }
  64. */
  65. Navigation.ToPortal();
  66. }
  67. }
  68. }