public async Task <BaseApiResponse> UserForgotPasswordByPhoneHandlerAsync(ForgotPasswordModelByPhone model, UserManager <ApplicationUser> userManager) { var validation = ValidateModel(model); if (!validation.IsSucceeded) { return(validation); } if (IsAuthenticated) { return(new BaseApiResponse(false, "Вы авторизованы в системе")); } var searcher = new UserSearcher(AmbientContext); var user = await searcher.GetUserByPhoneNumberAsync(model.PhoneNumber); return(await UserForgotPasswordNotificateHandlerAsync(user.ToEntity(), userManager)); }
/// <summary> /// Востановить пароль через номер телефона /// </summary> /// <param name="model"></param> /// <returns></returns> public async Task <BaseApiResponse> UserForgotPasswordByPhoneHandlerAsync(ForgotPasswordModelByPhone model) { var validation = ValidateModel(model); if (!validation.IsSucceeded) { return(validation); } if (IsAuthenticated) { return(new BaseApiResponse(false, "Вы авторизованы в системе")); } var user = await UserManager.Users .FirstOrDefaultAsync(x => x.PhoneNumber == model.PhoneNumber); if (user == null) { return(new BaseApiResponse(false, $"Пользователь не найден по указанному номеру телефона {model.PhoneNumber}")); } return(await UserForgotPasswordNotificateHandlerAsync(user)); }