public static int getIdUserSession() { UsuarioViewModels usuario2 = (UsuarioViewModels)JwtManager.obtenerSession <UsuarioViewModels>("Usuario"); FuncionesViewModels decode = new FuncionesViewModels(); return(int.Parse(decode.Base64_Decode(usuario2.idUsuario))); }
public async Task <IHttpActionResult> registro(CourseraViewModels coursera) { coursera.id = JwtManager.getIdUserSession(); var mem = new FuncionesViewModels(); var mensaje = await mem.RegistroCousera(coursera); return(Ok(mensaje)); }
//private RepositoryGeneral _ir = new RepositoryGeneral(); private static bool TryRetrieveToken(HttpRequestMessage request, out string token) { RepositoryGeneral general = new RepositoryGeneral(); var usaSesionUsuario = general.ObtenerRegistro <Parametros>(z => z.idParametro == 13); token = null; IEnumerable <string> authzHeaders; if (!request.Headers.TryGetValues("Authorization", out authzHeaders) || authzHeaders.Count() > 1) { return(false); } var bearerToken = authzHeaders.ElementAt(0); token = bearerToken.StartsWith("Bearer ") ? bearerToken.Substring(7) : bearerToken; if (usaSesionUsuario.parametroJSON == "0") { return(true); } var jwt = token; var handler = new JwtSecurityTokenHandler(); var tokenRead = handler.ReadJwtToken(jwt); var user = tokenRead.Claims.FirstOrDefault(z => z.Type == "Usuario"); JavaScriptSerializer jsonSerializer = new JavaScriptSerializer(); dynamic j = jsonSerializer.Deserialize <dynamic>(user.Value);//deserializamos el objeto var fun = new FuncionesViewModels(); var idTransformado = fun.Base64_Decode(j["idUsuario"].ToString()); int id = Convert.ToInt32(idTransformado); var userData = general.ObtenerRegistro <UsuarioSesion>(z => z.idUsuario == id && z.vigente == true); if (userData != null) { if (userData.token == token) { return(true); } else { return(false); } } else { return(false); } }
public async Task <IHttpActionResult> Deletegenda(int id) { entRespuesta respuesta = new entRespuesta(); try { var idUser = JwtManager.getIdUserSession(); var agendamiento = await _ir.Find <Agenda>(id); //buscamos el agendamiento if (agendamiento != null && (agendamiento.idUsuario == idUser)) //si no es null procedemos a dejarlo como no vigente y actualizamos { agendamiento.vigente = false; await _ir.Update(agendamiento, id); var fun = new FuncionesViewModels(); string mensaje = ""; if (agendamiento.idCasoMoksys != null) { mensaje = await fun.EliminaMocksys(agendamiento.idCasoMoksys.GetValueOrDefault()); } respuesta.mensajeExtra = mensaje; respuesta.codigo = 0; respuesta.mensaje = "Agendamiento eliminado"; respuesta.data = id; return(Ok(respuesta)); } else { respuesta.codigo = 1; respuesta.mensaje = "No se ha podido encontrar agendamiento"; } return(Ok(respuesta)); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public async Task <IHttpActionResult> InstanfitAutenticacionLink(UserInstafitViewModels user) { try { var idUser = JwtManager.getIdUserSession(); var _fun = new FuncionesViewModels(); string token = _fun.ValidarUserInstafit(user); string link = token; // Guardamos la url del usuairo en la tabla var updateUser = await _ir.GetFirst <Usuario>(z => z.idUsuario == idUser); if (updateUser != null) { updateUser.instafitUrl = link; await _ir.Update(updateUser, updateUser.idUsuario); } return(Ok(link)); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public async Task <IHttpActionResult> EnvioMensajesAgendar(int id, string metodo) { entRespuesta respuesta = new entRespuesta(); var _fun = new FuncionesViewModels(); try { var idUser = JwtManager.getIdUserSession(); var ultimaAgenda = await _ir.FindEspecial <Agenda>(id);//obtenemos el registro insertado if (ultimaAgenda != null && (ultimaAgenda.idUsuario == idUser)) { string fecha = ""; string hora = ""; string accion = ""; int codSms = 0; int IdPlantilla = 0; int idAgendaTipo = 0; string contacto = ""; if (metodo == "Agendar") { codSms = 1; IdPlantilla = Convert.ToInt32(WebConfigurationManager.AppSettings["PlantillaAgendaInsertar"].ToString()); fecha = Convert.ToDateTime(ultimaAgenda.fechaAgenda).ToString("dd-MM-yyyy"); hora = ultimaAgenda.horaAgenda.GetValueOrDefault().ToString(); idAgendaTipo = ultimaAgenda.AgendaTipo.idAgendaTipo; contacto = ultimaAgenda.contacto; accion = "Agendamiento realizado"; } else if (metodo == "Eliminar") { codSms = 2; IdPlantilla = Convert.ToInt32(WebConfigurationManager.AppSettings["PlantillaAgendaEliminar"].ToString()); fecha = Convert.ToDateTime(ultimaAgenda.fechaAgenda).ToString("dd-MM-yyyy"); hora = ultimaAgenda.horaAgenda.GetValueOrDefault().ToString(); accion = "Agendamiento eliminado"; idAgendaTipo = ultimaAgenda.AgendaTipo.idAgendaTipo; contacto = ultimaAgenda.contacto; } else if (metodo == "Modificar") { codSms = 1; IdPlantilla = Convert.ToInt32(WebConfigurationManager.AppSettings["PlantillaAgendaModificar"].ToString()); fecha = Convert.ToDateTime(ultimaAgenda.fechaAgenda).ToString("dd-MM-yyyy"); hora = ultimaAgenda.horaAgenda.GetValueOrDefault().ToString(); accion = "Agendamiento modificado"; idAgendaTipo = ultimaAgenda.AgendaTipo.idAgendaTipo; contacto = ultimaAgenda.contacto; } string respuestaDevuelta = await _fun.EnvioSmsAnterior(ultimaAgenda.AgendaTipo.modulo, ultimaAgenda.discriminadorAgendamiento, ultimaAgenda.contacto, codSms, fecha, hora);//enviamos el sms de agendamiento if (!String.IsNullOrEmpty(respuestaDevuelta)) { var logError = new ErrorLog();//en caso de error insertamos en la tabla de error logError.errorMensaje = respuestaDevuelta; logError.evento = accion + "envio sms"; await _ir.Add(logError); } var plantilla = await _ir.Find <PlantillaCorreo>(IdPlantilla); //obtenemos la plantilla de correo await _fun.EnvioEmail(ultimaAgenda.idUsuario.GetValueOrDefault(), plantilla.Plantilla, accion, codSms, fecha, hora, idAgendaTipo, contacto); //enviamos el email if (codSms == 1) { string observacion = ""; switch (ultimaAgenda.discriminadorAgendamiento) { case "1": observacion = "Caso generado desde ecosistemas. Contacto por WhatsApp: " + ultimaAgenda.contacto; break; case "2": observacion = "Caso generado desde ecosistemas. Contacto por Skype: " + ultimaAgenda.contacto; break; case "0": observacion = "Caso generado desde ecosistemas. Contacto por Teléfono: " + ultimaAgenda.contacto; break; } var urlProveedores = ""; var idSocio = _fun.Base64_Encode(WebConfigurationManager.AppSettings["idSocio"].ToString()); var idAgenda = _fun.Base64_Encode(ultimaAgenda.idAgenda.ToString()); if (ultimaAgenda.AgendaTipo.modulo == "HojaVida") { urlProveedores = "https://statistics.grupomok.com.co/HojaDeVida/" + idSocio + "/" + idAgenda; } else if (ultimaAgenda.AgendaTipo.modulo == "Entrevista") { urlProveedores = "https://statistics.grupomok.com.co/PruebasPsicotecnicas/" + idSocio + "/" + idAgenda; } observacion = observacion + ". Motivo de consulta: " + ultimaAgenda.AgendaTipo.glosaAgendaTipo + ". " + urlProveedores; var fechaAgenda = ultimaAgenda.fechaAgenda + ultimaAgenda.horaAgenda; var datosMocksys = await _fun.TraeMocksys(ultimaAgenda.idUsuario.GetValueOrDefault(), ultimaAgenda.idAgendaTipo.GetValueOrDefault(), fechaAgenda.GetValueOrDefault(), ultimaAgenda.AgendaTipo.idContratoMoksys.GetValueOrDefault(), observacion);//insertamos la //data en el servicio de mocksys ultimaAgenda.idCasoMoksys = Convert.ToInt32(datosMocksys.Rows[0].ItemArray[0].ToString()); //obtenemos la ot de mocksys await _ir.Update(ultimaAgenda, ultimaAgenda.idAgenda); //y la insertamos en el agendamiento } respuesta.codigo = 0; respuesta.mensaje = "Mensajes enviados"; return(Ok(respuesta)); } respuesta.codigo = 1; respuesta.mensaje = "Sin agendamiento"; return(Ok(respuesta)); } catch (Exception ex) { respuesta.codigo = 2; respuesta.mensaje = ex.Message; return(Ok(respuesta)); } }
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)); } }