/// <summary> /// Autenticar /// </summary> /// <param name="url">Url del servicio Pasamonte</param> /// <param name="apiKey">Clave de integracion</param> /// <param name="identificacionUsuario">Identificacion del usuario</param> /// <param name="identificacionTerminal">Identificacion del terminal</param> /// <param name="identificacionSistemaRemoto">Identificacion del sistema remoto (RCE)</param> /// <returns></returns> public async Task <RespuestaValidarIdentificacion> RceAutenticar ( string url, string apiKey, IdentificacionUsuario identificacionUsuario, IdentificacionTerminal identificacionTerminal, IdentificacionSistemaRemoto identificacionSistemaRemoto ) { if (!ValidarUrl(url)) { return(RespuestaErrorUrl <RespuestaValidarIdentificacion>("RceAutenticar")); } if (!ValidarApiKey(apiKey)) { return(RespuestaErrorApiKey <RespuestaValidarIdentificacion>("RceAutenticar")); } var respuesta = new RespuestaValidarIdentificacion() { }; using (var client = new HttpClient()) { client.BaseAddress = new Uri(url); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); // HTTP POST var requestData = new { identificacionUsuario = identificacionUsuario, identificacionTerminal = identificacionTerminal, identificacionSistemaRemoto = identificacionSistemaRemoto }; var response = await client.PostAsJsonAsync ( RceAccionAutenticar, requestData ); if (response.IsSuccessStatusCode) { // Get the URI of the created resource. respuesta = await response.Content.ReadAsAsync <RespuestaValidarIdentificacion>(); log.DebugFormat("-> RceAutenticar: ok. Terminal: {0}. Usuario: {1}", identificacionTerminal.CodigoEstablecimiento, identificacionUsuario.Identificador); } else { respuesta.Status = StatusLlamada.ErrorDesconocido; log.DebugFormat("-> RceAutenticar: ERROR. Terminal: {0}. Usuario: {1}", identificacionTerminal.CodigoEstablecimiento, identificacionUsuario.Identificador); } } return(respuesta); }
/// <summary> /// RceCambiarClave /// </summary> /// <param name="url">Url del servicio Pasamonte</param> /// <param name="apiKey">Clave de integracion</param> /// <param name="identificacionUsuario"></param> /// <param name="identificacionTerminal"></param> /// <param name="identificacionSistemaRemoto"></param> /// <param name="nuevaClave"></param> /// <returns>Objeto con la respuesta</returns> public async Task <RespuestaCambiarClave> RceCambiarClave ( string url, string apiKey, IdentificacionUsuario identificacionUsuario, IdentificacionTerminal identificacionTerminal, IdentificacionSistemaRemoto identificacionSistemaRemoto, string nuevaClave ) { if (!ValidarUrl(url)) { return(RespuestaErrorUrl <RespuestaCambiarClave>("RceCambiarClave")); } if (!ValidarApiKey(apiKey)) { return(RespuestaErrorApiKey <RespuestaCambiarClave>("RceCambiarClave")); } var respuesta = new RespuestaCambiarClave() { }; using (var client = new HttpClient()) { client.BaseAddress = new Uri(url); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); // HTTP POST var requestData = new { identificacionUsuario = identificacionUsuario, identificacionTerminal = identificacionTerminal, identificacionSistemaRemoto = identificacionSistemaRemoto, nuevaClave = nuevaClave }; var response = await client.PostAsJsonAsync ( RceAccionCambiarClave, requestData ); if (response.IsSuccessStatusCode) { respuesta = await response.Content.ReadAsAsync <RespuestaCambiarClave>(); } else { respuesta.Status = StatusLlamada.ErrorDesconocido; } } return(respuesta); }
private bool realizar_login() { string password_hash = Encryptation.get_hash(this.textBoxPassword.Text); IdentificacionUsuario resultadoLogin = this.ValidarLogin(this.textBoxUsername.Text, password_hash); if (loginSuccess(resultadoLogin)) { return(true); } else { MessageDialog.MensajeError(this.getMensajeLogin(resultadoLogin)); return(false); } }
private string getMensajeLogin(IdentificacionUsuario resultadoIdentificacion) { switch (resultadoIdentificacion) { case IdentificacionUsuario.UsuarioIdentificado: return("Usuario identificado correctamente"); case IdentificacionUsuario.UsuarioBloqueado: return("El usuario ha sido bloqueado por reiterados intentos erróneos de login"); case IdentificacionUsuario.UsuarioInvalido: return("El usuario o la contraseña son inválidos"); default: return("Error al querer identificar"); } }
private bool IdentificarUsuario() { IResultado <IdentificacionUsuario> resRealizarIdenticacion = _usuarioDomain.RealizarIdentificacion(tbUsuario.Text, tbPassword.Text); if (!resRealizarIdenticacion.Correcto) { throw new ResultadoIncorrectoException <IdentificacionUsuario>(resRealizarIdenticacion); } IdentificacionUsuario identificacion = resRealizarIdenticacion.Retorno; if (PasswordHelper.IdentificacionExitosa(identificacion)) { return(true); } else { MensajePorPantalla.MensajeError(this, PasswordHelper.Mensaje(resRealizarIdenticacion.Retorno)); return(false); } }
/// <summary> /// NotificarEntrega /// </summary> /// <param name="url">Url del servicio Pasamonte</param> /// <param name="apiKey">Clave de integracion</param> /// <param name="identificacionUsuario"></param> /// <param name="identificacionTerminal"></param> /// <param name="identificacionSistemaRemoto"></param> /// <param name="entrega">Entrega a notificar</param> /// <returns>Objeto con la respuesta. <see cref="RespuestaNotificarEntrega"/></returns> public async Task <RespuestaNotificarEntrega> RceNotificarEntrega ( string url, string apiKey, IdentificacionUsuario identificacionUsuario, IdentificacionTerminal identificacionTerminal, IdentificacionSistemaRemoto identificacionSistemaRemoto, Entrega entrega ) { if (!ValidarUrl(url)) { return(RespuestaErrorUrl <RespuestaNotificarEntrega>("RceNotificarEntrega")); } if (!ValidarApiKey(apiKey)) { return(RespuestaErrorApiKey <RespuestaNotificarEntrega>("RceNotificarEntrega")); } if (entrega == null) { return new RespuestaNotificarEntrega() { Status = StatusLlamada.ErrorDesconocido, Descripcion = "RceNotificarEntrega - Error parametro entrega nulo" } } ; var respuesta = new RespuestaNotificarEntrega() { }; using (var client = new HttpClient()) { client.BaseAddress = new Uri(url); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); // HTTP POST var requestData = new { identificacionUsuario = identificacionUsuario, identificacionTerminal = identificacionTerminal, identificacionSistemaRemoto = identificacionSistemaRemoto, entrega = entrega }; var response = await client.PostAsJsonAsync ( RceAccionNotificarEntrega, requestData ); if (response.IsSuccessStatusCode) { respuesta = await response.Content.ReadAsAsync <RespuestaNotificarEntrega>(); } else { respuesta.Status = StatusLlamada.ErrorDesconocido; } } return(respuesta); } }
protected bool loginSuccess(IdentificacionUsuario resultadoLogin) { return(resultadoLogin == 0); }
/// <summary> /// ObtenerEntregas /// </summary> /// <param name="url">Url del servicio Pasamonte</param> /// <param name="apiKey">Clave de integracion</param> /// <param name="identificacionUsuario">Identificacion del paciente</param> /// <param name="identificacionTerminal">Identificacion del terminal que consulta</param> /// <param name="identificacionSistemaRemoto">Identificacion del sistema remoto (RCE)</param> /// <returns>Objeto con respuesta. <see cref="RespuestaObtenerEntregas"/></returns> public async Task <RespuestaObtenerEntregas> RceObtenerEntregas ( string url, string apiKey, IdentificacionUsuario identificacionUsuario, IdentificacionTerminal identificacionTerminal, IdentificacionSistemaRemoto identificacionSistemaRemoto ) { if (!ValidarUrl(url)) { return(RespuestaErrorUrl <RespuestaObtenerEntregas>("RceObtenerEntregas")); } if (!ValidarApiKey(apiKey)) { return(RespuestaErrorApiKey <RespuestaObtenerEntregas>("RceObtenerEntregas")); } var respuesta = new RespuestaObtenerEntregas() { }; using (var client = new HttpClient()) { client.BaseAddress = new Uri(url); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); // HTTP POST var requestData = new { identificacionUsuario = identificacionUsuario, identificacionTerminal = identificacionTerminal, identificacionSistemaRemoto = identificacionSistemaRemoto }; var response = await client.PostAsJsonAsync ( RceAccionObtenerEntregas, requestData ); if (response.IsSuccessStatusCode) { // Get the URI of the created resource. var r = await response.Content.ReadAsStringAsync(); respuesta = await response.Content.ReadAsAsync <RespuestaObtenerEntregas>(); var b = new StringBuilder(); if (respuesta.Entregas != null) { foreach (var entrega in respuesta.Entregas) { b.AppendFormat("-- entrega id: {0} tipo: {1}\r\n", entrega.IdEnSistemaExterno, entrega.TipoEntrega); if (entrega.ItemsEntrega != null) { foreach (var item in entrega.ItemsEntrega) { b.AppendFormat("---- item id:\t{0}\tcantidad:\t{1}\tproducto:\t{2} desc:\t{3} stock rce:\t{4}\r\n", item.IdEnSistemaExterno, item.CantidadEntregar, item.IdentificadorProducto, item.DescripcionProducto, item.StockRCE); } } } } log.DebugFormat("-> RceObtenerEntregas: ok. Terminal: {0}. Usuario: {1}\r\n{2}", identificacionTerminal.CodigoEstablecimiento, identificacionUsuario.Identificador, b.ToString()); } else { respuesta.Status = StatusLlamada.ErrorDesconocido; log.DebugFormat("-> RceObtenerEntregas: ERROR. Terminal: {0}. Usuario: {1}", identificacionTerminal.CodigoEstablecimiento, identificacionUsuario.Identificador); } } return(respuesta); }
public static bool IdentificacionExitosa(IdentificacionUsuario resultadoIdentificacion) { return(resultadoIdentificacion.CompareTo(IdentificacionUsuario.UsuarioIdentificado) == 0); }