public async Task <bool> LogIn(string reservationNumber) { using (var client = new HttpClient()) { var model = new PassengerLoginModel { ReservationCode = reservationNumber }; string json = JsonConvert.SerializeObject(model); HttpContent httpContent = new StringContent(json, Encoding.UTF8, "application/json"); var httpResponse = await client.PostAsync(new Uri("https://localhost:44319/api/Auth/PassengerLogin", UriKind.Absolute), httpContent); if (httpResponse.IsSuccessStatusCode) { var content = await httpResponse.Content.ReadAsStringAsync(); var passenger = JsonConvert.DeserializeObject <Passenger>(content); if (passenger != null) { Passenger = passenger; JwtToken = passenger.Token; return(true); } } return(false); } }
public async Task <IActionResult> PassengerLogin([FromBody] PassengerLoginModel model) { var passenger = _passengerRepo.Query(x => x.ReservationCode == model.ReservationCode).Include(x => x.Seat).ThenInclude(y => y.Plane).FirstOrDefault(); if (null == passenger) { throw new ArgumentException("incorrect reservationCode"); } var result = await _signInManager.PasswordSignInAsync(passenger.UserName, "Test123!", false, false); if (result.Succeeded) { var token = TokenHelper.GetToken(passenger); var passengerDto = new PassengerDto { UserName = passenger.UserName, PlaneId = passenger.Seat.Plane.Id, Id = passenger.Id.ToString(), Token = token, Seat = new SeatDto(passenger.Seat), }; return(Ok(passengerDto)); } throw new ArgumentException("incorrect reservationCode"); }