public async Task <IActionResult> LoginPatient(PatientAccountWrapperModel model) { if (!ModelState.IsValid) { return(View("PatientSignInUp")); } var loginResult = await _accountService.LoginUser(model.LoginModel.EGN, model.LoginModel.Password); if (loginResult) { var user = await _accountService.GetUserByName(model.LoginModel.EGN); var role = await _accountService.GetUserRole(user.Id); if (role == "Patient") { return(RedirectToAction("Home", "PatientDashboard")); } await _accountService.LogoutUser(); } ModelState.AddModelError("", "Влизането неуспешно: грешно ЕГН или парола."); return(View("PatientSignInUp")); }
public async Task <IActionResult> RegisterPatient(PatientAccountWrapperModel model) { if (!ModelState.IsValid) { model.RegisterModel.TabSelected = "2"; return(View("PatientSignInUp", model)); } var result = await _accountService.RegisterPatient( model.RegisterModel.FirstName, model.RegisterModel.LastName, model.RegisterModel.EGN, model.RegisterModel.PhoneNumber, model.RegisterModel.Password); if (result.Succeeded) { var user = await _accountService.GetUserByName(model.RegisterModel.EGN); await _patientService.AddPatient(user.Id, user.PhoneNumber); return(RedirectToAction("Index", "Home")); } foreach (var err in result.Errors) { ModelState.AddModelError("", err); } model.RegisterModel.TabSelected = "2"; return(View("PatientSignInUp", model)); }