public async Task <IHttpActionResult> ObtenerHtml(ExperianViewModels experian) { try { experian.documentType = "1"; experian.password = WebConfigurationManager.AppSettings["Experian_Password"].ToString(); experian.username = WebConfigurationManager.AppSettings["Experian_User"].ToString(); experian.grant_type = WebConfigurationManager.AppSettings["Experian_Gran_Type"].ToString(); var idUser = JwtManager.getIdUserSession(); var Usuario = await _ir.Find <Usuario>(idUser); var fun = new FuncionesViewModels(); var token = ""; //var respuesta = null; var user = await _ir.GetFirst <Usuario>(z => z.identificacion == Usuario.identificacion); if (user != null && !String.IsNullOrEmpty(user.responseDataExperian)) { // Fecha Auxiliar DateTime now = DateTime.Now; // Sumamos 1 mes a la fecha guardada DateTime date = user.fechaAccesoExperian.GetValueOrDefault().AddMonths(1); // Comparamos la fecha modificada, si es menor significa que ya pasó un mes y hay // que hacer la petición si no retorna lo que está almacenado if (date < now) { JavaScriptSerializer jsonSerializer = new JavaScriptSerializer(); string urlFuente = ""; string fuente = ""; string color = ""; string enlace = ""; var id = Convert.ToInt32(WebConfigurationManager.AppSettings["Id_Html"].ToString()); var htmlData = WebConfigurationManager.AppSettings["HtmlExperian"]; //var htmlData = await _ir.GetFirst<Parametros>(z => z.idParametro == id); if (htmlData != null) { dynamic j = jsonSerializer.Deserialize <dynamic>(htmlData);//deserializamos el objeto urlFuente = j["urlFuente"].ToString(); fuente = j["fuente"].ToString(); color = j["color"].ToString(); enlace = j["enlaceDiagnostico"].ToString(); } token = fun.TokenDataExperian(experian); var respuesta = fun.HtmlDataExperian(experian, token); respuesta.scoreHTML = respuesta.scoreHTML.Replace("{{urlFuente}}", urlFuente).Replace("{{fuente}}", fuente).Replace("{{color}}", color) .Replace("{{enlaceDiagnostico}}", enlace); respuesta.diagnoseHTML = respuesta.diagnoseHTML.Replace("{{urlFuente}}", urlFuente).Replace("{{fuente}}", fuente).Replace("{{color}}", color) .Replace("{{enlaceDiagnostico}}", enlace); //object respuesta = null; var t = await _ir.GetFirst <Usuario>(z => z.identificacion == experian.document); if (t != null) { t.responseDataExperian = jsonSerializer.Serialize(respuesta); t.fechaAccesoExperian = DateTime.Now; await _ir.Update(t, t.idUsuario); } return(Ok(respuesta)); } else { var data = JsonConvert.DeserializeObject(user.responseDataExperian); return(Ok(data)); } } else { JavaScriptSerializer jsonSerializer = new JavaScriptSerializer(); string urlFuente = ""; string fuente = ""; string color = ""; string enlace = ""; var id = Convert.ToInt32(WebConfigurationManager.AppSettings["Id_Html"].ToString()); var htmlData = WebConfigurationManager.AppSettings["HtmlExperian"]; if (htmlData != null) { dynamic j = jsonSerializer.Deserialize <dynamic>(htmlData);//deserializamos el objeto urlFuente = j["urlFuente"].ToString(); fuente = j["fuente"].ToString(); color = j["color"].ToString(); enlace = j["enlaceDiagnostico"].ToString(); } token = fun.TokenDataExperian(experian); var respuesta = fun.HtmlDataExperian(experian, token); respuesta.scoreHTML = respuesta.scoreHTML.Replace("{{urlFuente}}", urlFuente).Replace("{{fuente}}", fuente).Replace("{{color}}", color) .Replace("{{enlaceDiagnostico}}", enlace); respuesta.diagnoseHTML = respuesta.diagnoseHTML.Replace("{{urlFuente}}", urlFuente).Replace("{{fuente}}", fuente).Replace("{{color}}", color) .Replace("{{enlaceDiagnostico}}", enlace); //object respuesta = null; var t = await _ir.GetFirst <Usuario>(z => z.identificacion == experian.document); if (t != null) { t.responseDataExperian = jsonSerializer.Serialize(respuesta); t.fechaAccesoExperian = DateTime.Now; await _ir.Update(t, t.idUsuario); } return(Ok(respuesta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public async Task <IHttpActionResult> ObtenerDataCredito(ExperianViewModels experian) { try { var idUser = JwtManager.getIdUserSession(); var Usuario = await _ir.Find <Usuario>(idUser); experian.password = WebConfigurationManager.AppSettings["Experian_Password"].ToString(); experian.username = WebConfigurationManager.AppSettings["Experian_User"].ToString(); experian.grant_type = WebConfigurationManager.AppSettings["Experian_Gran_Type"].ToString(); experian.documentType = "1"; experian.document = Usuario.identificacion; var user = await _ir.GetFirst <Usuario>(z => z.identificacion == experian.document); if (user != null && !String.IsNullOrEmpty(user.responseDataExperian)) { // Fecha Auxiliar DateTime now = DateTime.Now; // Sumamos 1 mes a la fecha guardada DateTime date = user.fechaAccesoExperian.GetValueOrDefault().AddMonths(1); // Comparamos la fecha modificada, si es menor significa que ya pasó un mes y hay // que hacer la petición si no retorna lo que está almacenado if (date < now) { var fun = new FuncionesViewModels(); var token = fun.TokenDataExperian(experian); var respuesta = fun.ClienteDataExperian(experian, token); //object respuesta = null; if (respuesta != null) { var t = await _ir.GetFirst <Usuario>(z => z.identificacion == experian.document); if (t != null) { JavaScriptSerializer java = new JavaScriptSerializer(); t.responseDataExperian = Convert.ToString(respuesta); t.fechaAccesoExperian = DateTime.Now; await _ir.Update(t, t.idUsuario); } return(Ok(respuesta)); } else { return(Ok("Sin datos para esta identificación")); } } else { var data = JsonConvert.DeserializeObject(user.responseDataExperian); return(Ok(data)); } } else { var fun = new FuncionesViewModels(); var token = fun.TokenDataExperian(experian); var respuesta = fun.ClienteDataExperian(experian, token); //object respuesta = null; if (respuesta != null) { var t = await _ir.GetFirst <Usuario>(z => z.identificacion == experian.document); if (t != null) { JavaScriptSerializer java = new JavaScriptSerializer(); t.responseDataExperian = Convert.ToString(respuesta); t.fechaAccesoExperian = DateTime.Now; await _ir.Update(t, t.idUsuario); } return(Ok(respuesta)); } else { return(Ok("Sin datos para esta identificación")); } } } catch (Exception ex) { return(BadRequest(ex.Message)); } }