public async Task <IActionResult> ReservarHotelAsync([FromBody] ReservaDTO model, [FromHeader] string Token) { try { Logger.LogInformation("INICIA PROCESO DE RESERVA DE VUELO"); JwtProvider jwt = new JwtProvider("TouresBalon.com", "UsuariosPlataforma"); var accessToken = Request.Headers[HeaderNames.Authorization]; var first = accessToken.FirstOrDefault(); if (string.IsNullOrEmpty(accessToken) || !first.Contains("Bearer")) { return(BadRequest()); } string token = first.Replace("Bearer", "").Trim(); Logger.LogInformation("INICIA PROCESO DE VALIDACION DE TOKEN :" + token); var a = jwt.ValidateToken(token); if (!a) { return(Unauthorized()); } ParametrosReservaDTO parametros = new ParametrosReservaDTO(); parametros.Nombre_proveedor = model.NombreProveedor; parametros.processType = "CATALOG"; parametros.Uuid = model.Uuid; parametros.Tipo_proveedor = "HOTEL"; parametros.Tipo_proceso = "catalogue"; Reserva2 reserva = new Reserva2 { HotelCode = model.CodigoHotel, LastName = model.Apellido, Name = model.Nombre }; parametros.Parametros.hotel.reserva = reserva; string parametrosSerializados = JsonConvert.SerializeObject(parametros); using (var producer = new ProducerBuilder <Null, string>(_config).Build()) { await producer.ProduceAsync("topic-info-reader", new Message <Null, string> { Value = parametrosSerializados }); producer.Flush(TimeSpan.FromSeconds(10)); return(Ok()); } } catch (Exception ex) { Logger.LogError("Excepcion generada en ReservarVuelo: " + ex.Message); return(StatusCode(500, "Ocurrio un error")); throw; } }
public IActionResult ReservaHotel([FromBody] ReservaDTO model, [FromHeader] string Token) { try { Logger.LogInformation("INICIA PROCESO DE RESERVA DE HOTELES"); JwtProvider jwt = new JwtProvider("TouresBalon.com", "UsuariosPlataforma"); var accessToken = Request.Headers[HeaderNames.Authorization]; var first = accessToken.FirstOrDefault(); if (string.IsNullOrEmpty(accessToken) || !first.Contains("Bearer")) { return(BadRequest()); } string token = first.Replace("Bearer", "").Trim(); Logger.LogInformation("INICIA PROCESO DE VALIDACION DE TOKEN :" + token); var a = jwt.ValidateToken(token); if (!a) { return(Unauthorized()); } ParametrosDTO parametros = new ParametrosDTO(); Reserva2 reserva = new Reserva2 { HotelCode = model.CodigoHotel, LastName = model.Apellido, Name = model.Nombre }; parametros.parameters.hotel.reserva = reserva; _db.ReservaHotels.Add(new ReservaHotel { Nombre = model.Nombre, Apellido = model.Apellido, Token = token, CodigoHotel = model.CodigoHotel }); _db.SaveChanges(); return(Ok(new ResponseReservaVuelo { success = true })); } catch (Exception ex) { Logger.LogError("Excepcion generada en ReservaHotel: " + ex.Message); return(StatusCode(500, "Ocurrio un error")); throw; } }