public async Task <LoginResponse> Login(LoginRequest model) { User user = await FindUser(model.Login); var role = (await _userManager.GetRolesAsync(user)).FirstOrDefault(); if (user is null) { throw new AppExсeption(ExceptionConstant.WrongEmailOrPassword); } SignInResult result = await _signInManager.PasswordSignInAsync(user, model.Password, true, false); if (!result.Succeeded) { throw new AppExсeption(ExceptionConstant.WrongEmailOrPassword); } var authToken = _jwtHelper.CreateToken(user, role, 1); var refreshToken = _jwtHelper.CreateToken(user, role, 2); LoginResponse response = _mapper.Map <User, LoginResponse>(user); response.AuthToken = authToken; response.RefreshToken = refreshToken; response.Role = Enum.Parse <Role>(role); return(response); }
public async Task <JwtView> LogIn(LogInRequest logInRequest) { User user = await UserValidation(logInRequest); if (user != null) { JwtView view = _jwtHelper.CreateToken(user); return(view); } throw new UserNotFoundException("Не правильные данные"); }