public IQueryable <UtilsJson.AInstitucion> getCadenaValorFilter([FromBody] UtilsJson.ACadenaValor cadena_valor) { IQueryable <UtilsJson.AInstitucion> listado = null; try { string tipo_ente = cadena_valor.tipo_institucion; string nombre_institucion = cadena_valor.nombre_institucion; long[] id_tipo_biotecnologia = cadena_valor.ids_tipo_biotecnologia; long id_sector = cadena_valor.id_sector; SqlParameter[] param = new SqlParameter[4]; if (tipo_ente == null) { param[0] = new SqlParameter("tipo", DBNull.Value); } else { param[0] = new SqlParameter("tipo", tipo_ente); } if (nombre_institucion == null) { param[1] = new SqlParameter("nombre", DBNull.Value); } else { param[1] = new SqlParameter("nombre", nombre_institucion); } if (id_tipo_biotecnologia == null) { param[2] = new SqlParameter("biotecnologia", DBNull.Value); } else { string stringids = string.Empty; for (int i = 0; i < id_tipo_biotecnologia.Length; i++) { stringids += id_tipo_biotecnologia[i] + "|"; } param[2] = new SqlParameter("biotecnologia", stringids); } if (id_sector == 0) { param[3] = new SqlParameter("sector", DBNull.Value); } else { param[3] = new SqlParameter("sector", id_sector); } listado = _repositorio.executeStored <UtilsJson.AInstitucion>("getFilterCadenaValor", param).Cast <UtilsJson.AInstitucion>().AsQueryable <UtilsJson.AInstitucion>(); } catch (Exception ex) { SystemLog log = new SystemLog(); log.ErrorLog(ex.Message); } return(listado); }
public bool validateCode([FromBody] string code) { bool solicitudRol = false; try { if (!string.IsNullOrWhiteSpace(code)) { //verificacion de existencia y estado del codigo Expression<Func<SolicitudRegistro, bool>> query = u => u.codigo == code && u.estado == true; SolicitudRegistro solicitud = _repositorio.Get<SolicitudRegistro>(query); //Si la solicitud existe y no se ha usado subo a session el codigo if (solicitud != null) { return true; } } } catch (Exception ex) { SystemLog mSystemLog = new SystemLog(); mSystemLog.ErrorLog(ex.Message); } return false; }
public Mensaje deleteAutor([FromBody] UtilsJson.APersona autor) { Mensaje mensaje = null; try {/* * //datos logueo * string correo_logueo = autor.correo_logueo; * string contrasena = autor.contrasena; * * * //datos publicacion * long id_autor = autor.id; * * * if (!String.IsNullOrWhiteSpace(correo_logueo) && !String.IsNullOrWhiteSpace(contrasena)) * { * //Cifrado de la contrasena * contrasena = CifradoDatos.cifrarPassword(contrasena); * * //Busco la institucion asociada al usuario y a la contrasena * Expression<Func<Autor, bool>> query = (u => u.institucion.logueo.correo_electronico == correo_logueo && u.institucion.logueo.contrasena == contrasena && u.institucion.estado == true && u.id == id_autor); * * List<Autor> autorB = _repositorio.Filter<Autor>(query); * * if (autorB != null) * { * if (autorB.Count > 0) * { * long id_persona = autorB[0].persona.id; * _repositorio.Delete<Autor>(autorB[0].id); * _repositorio.Delete<Persona>(id_persona); * mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Autor eliminado exitosamente."); * } * else * { * mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "El autor no hace parte de la institucion especificada o no existe"); * } * } * else * { * mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "El autor no hace parte de la institucion especificada o no existe"); * } * } * else * { * mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "Correo de logueo y contraseña son requeridos"); * }*/ } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } //Guardo los errores que se producieron durante la insercion SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); } return(mensaje); }
public Mensaje editConferencista([FromBody]UtilsJson.APersona conferencista) { Mensaje mensaje = null; try { if (conferencista != null) { if (!string.IsNullOrWhiteSpace(conferencista.token)) { if (AutenticacionToken.validateToken(conferencista.token) == 1) { long id_institucion_c = (!string.IsNullOrWhiteSpace(conferencista.Ainstitucion)) ? long.Parse(conferencista.Ainstitucion) : 0; Institucion institucion = _repositorio.Get<Institucion>(id_institucion_c); Conferencista conferencistaDB = _repositorio.Get<Conferencista>(conferencista.id); if (institucion != null && conferencistaDB != null) { if (AutenticacionToken.validateUserToken(conferencista.token, institucion.logueo.correo_electronico)) { //datos personales string tipo_identificacion = validarTipoIdentificacion(conferencista.tipo_identificacion); string identificacion = conferencista.identificacion; string nombre_persona = conferencista.nombre; string apellido_persona = conferencista.apellido; string correo_persona = conferencista.correo_electronico; string urlCvlac = conferencista.urlCvlac; string perfil = conferencista.perfil_profesional; string foto = conferencista.foto; if (tipo_identificacion != null) { Imagen newImagen = null; if (!string.IsNullOrWhiteSpace(foto)) { if (conferencistaDB.persona.foto != null) { conferencistaDB.persona.foto.imagenBase64 = foto; } else { newImagen = new Imagen { imagenBase64 = foto }; conferencistaDB.persona.foto = newImagen; } } conferencistaDB.persona.tipo_identificacion = tipo_identificacion; conferencistaDB.persona.identificacion = identificacion; conferencistaDB.persona.nombre = nombre_persona; conferencistaDB.persona.apellido = apellido_persona; conferencistaDB.persona.correo_electronico = correo_persona; conferencistaDB.persona.urlCvlac = urlCvlac; conferencistaDB.persona.perfil_profesional = perfil; conferencistaDB.fecha_ult_modificacion = DateTime.Now; //Almaceno o actualizo la salaMesa _repositorio.SaveOrUpdate<Conferencista>(conferencistaDB); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Conferencista editado exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "El tipo de identificacion no existe. verifique que el valor sea valido"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se encontro la sala solicitada o esta asociada a otra institucion."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se puede insertar un objeto nulo"); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return mensaje; }
public Mensaje editCronograma([FromBody] UtilsJson.ACronograma cronograma) { Mensaje mensaje = null; try { if (cronograma != null) { if (!string.IsNullOrWhiteSpace(cronograma.token_string)) { if (AutenticacionToken.validateToken(cronograma.token_string) == 1) { Institucion institucion = _repositorio.Get <Institucion>(cronograma.institucionId); Cronograma cronogramaDB = _repositorio.Get <Cronograma>(cronograma.id); if (institucion != null && cronogramaDB != null) { if (AutenticacionToken.validateUserToken(cronograma.token_string, institucion.logueo.correo_electronico)) { string nombre = cronograma.nombre; string tema = cronograma.tema; string descripcion = cronograma.descripcion; string color = cronograma.color; long id_sala = cronograma.salaMesaId; bool estado = cronograma.estado; long id_evento = cronograma.eventoId; if (!string.IsNullOrWhiteSpace(cronograma.hora_inicio) && !string.IsNullOrWhiteSpace(cronograma.hora_fin)) { DateTime hora_inicio = Convert.ToDateTime(cronograma.hora_inicio); DateTime hora_fin = Convert.ToDateTime(cronograma.hora_fin); Publicacion publicacion = _repositorio.Get <Publicacion>(id_evento); SalaMesa salaMesa = _repositorio.Get <SalaMesa>(id_sala); if (DateTime.Compare(hora_inicio, hora_fin) < 0) { if (publicacion != null && salaMesa != null) { cronogramaDB.evento = publicacion; cronogramaDB.sala = salaMesa; cronogramaDB.nombre = nombre; cronogramaDB.tema = tema; cronogramaDB.descripcion = descripcion; cronogramaDB.hora_inicio = hora_inicio; cronogramaDB.hora_fin = hora_fin; cronogramaDB.estado = estado; cronogramaDB.fecha_ult_modificacion = DateTime.Now; _repositorio.SaveOrUpdate <Cronograma>(cronogramaDB); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Cronograma editado exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "El evento o la sala solicitada no existe. verifique"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "La hora de inicio es posterior a la hora de finalizacion. verifique"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "La hora de inicio es posterior a la hora de finalizacion. verifique"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se encontro la sala solicitada o esta asociada a otra institucion."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se puede insertar un objeto nulo"); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return(mensaje); }
public Mensaje editAEventoParticipante([FromBody] UtilsJson.AEventoParticipante eventoParticipante) { Mensaje mensaje = null; try { if (eventoParticipante != null) { if (!string.IsNullOrWhiteSpace(eventoParticipante.token_string)) { if (AutenticacionToken.validateToken(eventoParticipante.token_string) == 1) { long id_institucion_c = eventoParticipante.id_institucion; long id_publicacion = eventoParticipante.id_evento; Institucion institucion = _repositorio.Get <Institucion>(id_institucion_c); Publicacion publicacion = _repositorio.Get <Publicacion>(id_publicacion); EventoParticipante registro = _repositorio.Get <EventoParticipante>(eventoParticipante.id_evento_institucion); if (institucion != null && publicacion != null && registro != null) { if (AutenticacionToken.validateUserToken(eventoParticipante.token_string, institucion.logueo.correo_electronico)) { registro.institucion = institucion; registro.evento = publicacion; registro.fecha_ult_modificacion = DateTime.Now; registro.estado = eventoParticipante.estado; //Almaceno o actualizo el registro _repositorio.SaveOrUpdate <EventoParticipante>(registro); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Participante a evento editado exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se encontro el registro solicitada o esta asociada a otra institucion."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se puede insertar un objeto nulo"); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return(mensaje); }
public Mensaje createAutor([FromBody]UtilsJson.APersona autor) { Mensaje mensaje = null; try { /* //datos logueo string correo_logueo = autor.correo_logueo; string contrasena = autor.contrasena; //datos publicacion string tipo_identificacion = autor.tipo_identificacion; double identificacion = autor.identificacion; string nombre_persona = autor.nombre; string apellido_persona = autor.apellido; string correo_persona = autor.correo_electronico; string urlCvlac = autor.urlCvlac; if (!String.IsNullOrWhiteSpace(correo_logueo) && !String.IsNullOrWhiteSpace(contrasena)) { //Cifrado de la contrasena contrasena = CifradoDatos.cifrarPassword(contrasena); //Busco la institucion asociada al usuario y a la contrasena Expression<Func<Representante, bool>> query = (u => u.institucion.logueo.correo_electronico == correo_logueo && u.institucion.logueo.contrasena == contrasena && u.institucion.estado == true); List<Representante> institucion = _repositorio.Filter<Representante>(query); if (institucion != null) { if (institucion.Count > 0) { Persona persona = new Persona(nombre_persona, apellido_persona, tipo_identificacion, identificacion, urlCvlac, correo_persona); Autor autorB = new Autor(institucion[0].institucion, persona); _repositorio.SaveOrUpdate<Autor>(autorB); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Autor registrada exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "Correo logueo y contraseña son requeridos"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "Correo logueo y contraseña son requeridos"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "Correo logueo y contraseña son requeridos"); }*/ } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return mensaje; }
public Mensaje editConferencista([FromBody] UtilsJson.APersona conferencista) { Mensaje mensaje = null; try { if (conferencista != null) { if (!string.IsNullOrWhiteSpace(conferencista.token)) { if (AutenticacionToken.validateToken(conferencista.token) == 1) { long id_institucion_c = (!string.IsNullOrWhiteSpace(conferencista.Ainstitucion)) ? long.Parse(conferencista.Ainstitucion) : 0; Institucion institucion = _repositorio.Get <Institucion>(id_institucion_c); Conferencista conferencistaDB = _repositorio.Get <Conferencista>(conferencista.id); if (institucion != null && conferencistaDB != null) { if (AutenticacionToken.validateUserToken(conferencista.token, institucion.logueo.correo_electronico)) { //datos personales string tipo_identificacion = validarTipoIdentificacion(conferencista.tipo_identificacion); string identificacion = conferencista.identificacion; string nombre_persona = conferencista.nombre; string apellido_persona = conferencista.apellido; string correo_persona = conferencista.correo_electronico; string urlCvlac = conferencista.urlCvlac; string perfil = conferencista.perfil_profesional; string foto = conferencista.foto; if (tipo_identificacion != null) { Imagen newImagen = null; if (!string.IsNullOrWhiteSpace(foto)) { if (conferencistaDB.persona.foto != null) { conferencistaDB.persona.foto.imagenBase64 = foto; } else { newImagen = new Imagen { imagenBase64 = foto }; conferencistaDB.persona.foto = newImagen; } } conferencistaDB.persona.tipo_identificacion = tipo_identificacion; conferencistaDB.persona.identificacion = identificacion; conferencistaDB.persona.nombre = nombre_persona; conferencistaDB.persona.apellido = apellido_persona; conferencistaDB.persona.correo_electronico = correo_persona; conferencistaDB.persona.urlCvlac = urlCvlac; conferencistaDB.persona.perfil_profesional = perfil; conferencistaDB.fecha_ult_modificacion = DateTime.Now; //Almaceno o actualizo la salaMesa _repositorio.SaveOrUpdate <Conferencista>(conferencistaDB); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Conferencista editado exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "El tipo de identificacion no existe. verifique que el valor sea valido"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se encontro la sala solicitada o esta asociada a otra institucion."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se puede insertar un objeto nulo"); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return(mensaje); }
public Mensaje deleteCronograma([FromBody]UtilsJson.ACronograma cronograma) { Mensaje mensaje = null; try { if (cronograma != null) { if (!string.IsNullOrWhiteSpace(cronograma.token_string)) { if (AutenticacionToken.validateToken(cronograma.token_string) == 1) { Institucion institucion = _repositorio.Get<Institucion>(cronograma.institucionId); Cronograma cronogramaDB = _repositorio.Get<Cronograma>(cronograma.id); if (institucion != null && cronogramaDB != null) { if (AutenticacionToken.validateUserToken(cronograma.token_string, institucion.logueo.correo_electronico)) { _repositorio.Delete<Conferencista>(cronogramaDB.id); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Cronograma fue eliminada exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se encontro el evento solicitada o esta asociada a otra institucion."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se puede eliminar un objeto nulo"); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return mensaje; }
public Mensaje createEventoParticipante([FromBody]UtilsJson.AEventoParticipante eventoParticipante) { Mensaje mensaje = null; try { if (eventoParticipante != null) { if (!string.IsNullOrWhiteSpace(eventoParticipante.token_string)) { if (AutenticacionToken.validateToken(eventoParticipante.token_string) == 1) { long id_inst = eventoParticipante.id_institucion; long id_pub = eventoParticipante.id_evento; Institucion institucion = _repositorio.Get<Institucion>(id_inst); Publicacion publicacion = _repositorio.Get<Publicacion>(id_pub); Expression<Func<EventoParticipante, bool>> query = (u => u.institucion.id == id_inst && u.evento.id==id_pub && u.estado == true); List<EventoParticipante> result = _repositorio.Filter<EventoParticipante>(query); if (institucion != null && publicacion !=null && result.Count ==0) { if (AutenticacionToken.validateUserToken(eventoParticipante.token_string, institucion.logueo.correo_electronico)) { //datos institucion y publicacion EventoParticipante newRegistro = new EventoParticipante { institucion=institucion, evento=publicacion, fecha_ult_modificacion=DateTime.Now, estado=eventoParticipante.estado }; //Almaceno o actualizo la salaMesa _repositorio.SaveOrUpdate<EventoParticipante>(newRegistro); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Institucion registrada al evento exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes para modificar estos campos."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se puede insertar un objeto nulo"); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return mensaje; }
/** Metodo que obtiene la direccion ip publica del host desde donde se modifica la contraseña */ private object[] getExternalIp() { string externalIP = string.Empty; object[] infoIpAddress = null; try { externalIP = (new WebClient()).DownloadString("http://checkip.dyndns.org/"); externalIP = (new Regex(@"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}")) .Matches(externalIP)[0].ToString(); /*-----------------------------------------------------------------------------------------*/ WebRequest rssReq = WebRequest.Create("http://freegeoip.net/xml/" + externalIP); WebProxy px = new WebProxy("http://freegeoip.net/xml/" + externalIP, true); rssReq.Proxy = px; rssReq.Timeout = 5000; WebResponse rep = rssReq.GetResponse(); XmlTextReader xtr = new XmlTextReader(rep.GetResponseStream()); DataSet ds = new DataSet(); ds.ReadXml(xtr); infoIpAddress = ds.Tables[0].Rows[0].ItemArray; } catch (Exception ex) { SystemLog log = new SystemLog(); log.ErrorLog(ex.Message); } return infoIpAddress; }
public IQueryable<UtilsJson.AInstitucionMapa> getFilterInstitutionMapa([FromBody]UtilsJson.AParamsFilterMapa filter) { IQueryable<UtilsJson.AInstitucionMapa> listado = null; try { if (filter != null) { string opcion = filter.opcion; string sub_opcion = filter.sub_opcion; SqlParameter[] param = new SqlParameter[2]; if (opcion == null) { param[0] = new SqlParameter("opcion", DBNull.Value); } else { param[0] = new SqlParameter("opcion", opcion); } if (sub_opcion == null) { param[1] = new SqlParameter("sub_opcion", DBNull.Value); } else { param[1] = new SqlParameter("sub_opcion", sub_opcion); } listado = _repositorio.executeStored<UtilsJson.AInstitucionMapa>("getListingFilterInstitucionMapa", param).Cast<UtilsJson.AInstitucionMapa>().AsQueryable<UtilsJson.AInstitucionMapa>(); } } catch (Exception ex) { SystemLog log = new SystemLog(); log.ErrorLog(ex.Message); } return listado; }
public Mensaje deleteInstitution([FromBody]UtilsJson.AInstitucion institution) { Mensaje mensaje = null; object[] infoLogin = getExternalIp(); try { if (institution != null) { if (!string.IsNullOrWhiteSpace(institution.token_string)) { if (AutenticacionToken.validateToken(institution.token_string) == 1 && AutenticacionToken.validateUserToken(institution.token_string, institution.logueo.correo_electronico)) { //datos logueo string correo_electronico_l = institution.logueo.correo_electronico; string password1 = institution.logueo.contrasena1; string password2 = institution.logueo.contrasena2; if (!string.IsNullOrEmpty(correo_electronico_l) && !string.IsNullOrEmpty(password1) && !string.IsNullOrEmpty(password2)) { if (password1.Equals(password2)) { //Cifrado de la contrasena string contrasena = CifradoDatos.cifrarPassword(password1); //Busco la institucion asociada al usuario y a la contrasena Expression<Func<Institucion, bool>> query = (u => u.logueo.correo_electronico == correo_electronico_l && u.logueo.contrasena == password1); List<Institucion> institucion = _repositorio.Filter<Institucion>(query); institucion[0].estado = false; institucion[0].fecha_ult_modificacion = DateTime.Now; _repositorio.SaveOrUpdate<Institucion>(institucion[0]); //Creo un token de autenticacion para deshabilitar el perfil string codigo = CifradoDatos.cifrarRSA(institucion[0].logueo.correo_electronico); //Envio email confirmacion para deshabilitar el perfil StringBuilder bodyMail = new StringBuilder(); bodyMail.AppendLine("Para eliminar el perfil de la institucion " + institucion[0].nombre + " dirijase al siguiente enlace."); string informacionHost = UtilsHost.serverInfoCurrent(); bodyMail.AppendLine("<a href=\"" + informacionHost + "/Institucion/ConfirmationDelete?tokenString=" + codigo + "\">Eliminar perfil.</a>" + "</br>"); bodyMail.AppendLine("Informacion Adicional:" + "</br>"); if (infoLogin != null) { bodyMail.AppendLine("Pais:" + infoLogin[2].ToString() + "</br>"); bodyMail.AppendLine("Departamento:" + infoLogin[4].ToString() + "</br>"); bodyMail.AppendLine("Ciudad:" + infoLogin[5].ToString() + "</br>"); bodyMail.AppendLine("Ip Address:" + infoLogin[0].ToString() + "</br>"); } bodyMail.AppendLine("Fecha:" + DateTime.Now.ToString() + "</br>"); string subject = "Confirmación cancelación de perfil."; Mail mail = new Mail(institucion[0].logueo.correo_electronico, subject, bodyMail); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificacion", "Envio de correo electronico para continuar con el proceso realizado."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error Autenticación", "passwords son diferentes."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error Autenticación", "passwords son obligatorios."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error Autenticación", "Token de autenticación requerido."); } } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(); mensaje.titulo = "Error en tipo de dato"; mensaje.tipo = "Error"; mensaje.cuerpo = "Error en la lectura de parametros, verifique que los parametros cumplan con el tipo de dato"; SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return mensaje; }
public async Task<Mensaje> editInstitution([FromBody]UtilsJson.AInstitucion institution) { Mensaje mensaje = new Mensaje(); try { if (institution != null) { if (!string.IsNullOrWhiteSpace(institution.token_string)) { if (AutenticacionToken.validateToken(institution.token_string) == 1 && AutenticacionToken.validateUserToken(institution.token_string, institution.logueo.correo_electronico)) { string n_correo_electronico_l = string.Empty; string n_password1 = string.Empty; string n_password2 = string.Empty; string contrasena = string.Empty; if (institution.logueo != null) { n_correo_electronico_l = institution.logueo.correo_electronico; n_password1 = institution.logueo.contrasena1; n_password2 = institution.logueo.contrasena2; if (!string.IsNullOrWhiteSpace(n_password1) && !string.IsNullOrWhiteSpace(n_password2)) { contrasena = CifradoDatos.cifrarPassword(n_password1); } } //datos representante string nombre_r = institution.representante.nombre; string apellido_r = institution.representante.nombre; string tipo_identificacion = institution.representante.tipo_identificacion; string identificacion = institution.representante.identificacion; string urlCvlac = institution.representante.urlCvlac; string correo_electronico_r = institution.representante.correo_electronico; //datos institucion string nombre = institution.nombre; string descripcion = institution.descripcion; string correo_electronico = institution.correo_electronico; string direccion_postal = institution.direccion_postal; string facebook = institution.facebook; string fax = institution.fax; string impacto = institution.impacto; string linkedin = institution.linkedin; string naturaleza = institution.naturaleza; string pagina_web = institution.pagina_web; int tamano = institution.tamano; string telefono = institution.telefono; string tipo_institucion = institution.tipo_institucion; string twitter = institution.twitter; string constitucion = institution.constitucion; string fecha_creacion = institution.fecha_creacion; string imagen_base64 = institution.imagen_base64; long municipio_id = institution.municipio.id; UtilsJson.ASector[] sectores = institution.sectores; List<Sector> lstSectores = convertToSector(sectores); UtilsJson.ATipoBiotecnologia[] tipo_biote = institution.Tipos_Biotecnologia; List<TipoBiotecnologia> lstTipoBiotecnologia = convertToTipoBiotecnologia(tipo_biote); //Busco la institucion y el representante asociada al usuario y a la contrasena Expression<Func<Persona, bool>> query = (u => u.institucion.logueo.correo_electronico == institution.logueo.correo_electronico && u.institucion.estado == true); List<Persona> institucion = _repositorio.Filter<Persona>(query); //Si el correo_electronico y la contrasena son validas subo a session la institucion if (institucion != null) { if (institucion.Count > 0) { Municipio municipioDb = _repositorio.Get<Municipio>(municipio_id); if (!string.IsNullOrWhiteSpace(contrasena)) { institucion[0].institucion.logueo.contrasena = contrasena; institucion[0].institucion.logueo.fecha_ult_modificacion = DateTime.Now; } institucion[0].institucion.descripcion = descripcion; institucion[0].institucion.impacto = impacto; institucion[0].institucion.correo_electronico = correo_electronico; institucion[0].institucion.linkedin = linkedin; institucion[0].institucion.municipio = municipioDb; institucion[0].institucion.naturaleza = naturaleza; institucion[0].institucion.constitucion = constitucion; institucion[0].institucion.nombre = nombre; institucion[0].institucion.pagina_web = pagina_web; institucion[0].institucion.tamano = tamano; institucion[0].institucion.telefono = telefono; institucion[0].institucion.fax = fax; institucion[0].institucion.direccion_postal = direccion_postal; institucion[0].institucion.facebook = facebook; institucion[0].institucion.tipo_institucion = tipo_institucion; institucion[0].institucion.twitter = twitter; institucion[0].institucion.fecha_creacion = (!string.IsNullOrWhiteSpace(fecha_creacion)) ? Convert.ToDateTime(fecha_creacion) : (DateTime?)null; institucion[0].institucion.fecha_ult_modificacion = DateTime.Now; if (institucion[0].institucion.banner == null) { if (!string.IsNullOrWhiteSpace(imagen_base64)) { institucion[0].institucion.banner = new Imagen { imagenBase64 = imagen_base64, fecha_ult_modificacion = DateTime.Now }; //Redimension de la imagen y creacion de icono string extension = imagen_base64.Split(',')[0]; imagen_base64 = imagen_base64.Split(',')[1]; byte[] bytes = Convert.FromBase64String(imagen_base64); if (bytes.Length > 0) { byte[] filebytesIcon = UtilsHost.Redimensionar(Image.FromStream(new MemoryStream(bytes)), 100, 100, 32); string encodedDataIcon = extension + "," + Convert.ToBase64String(filebytesIcon, Base64FormattingOptions.None); institucion[0].institucion.icono = new Imagen { imagenBase64 = encodedDataIcon, fecha_ult_modificacion = DateTime.Now }; } } } else { if (!string.IsNullOrWhiteSpace(imagen_base64)) { institucion[0].institucion.banner.imagenBase64 = imagen_base64; institucion[0].institucion.banner.fecha_ult_modificacion = DateTime.Now; //Redimension de la imagen y creacion de icono string extension = imagen_base64.Split(',')[0]; imagen_base64 = imagen_base64.Split(',')[1]; byte[] bytes = Convert.FromBase64String(imagen_base64); if (bytes.Length > 0) { byte[] filebytesIcon = UtilsHost.Redimensionar(Image.FromStream(new MemoryStream(bytes)), 100, 100, 32); string encodedDataIcon = extension + "," + Convert.ToBase64String(filebytesIcon, Base64FormattingOptions.None); institucion[0].institucion.icono.imagenBase64 = encodedDataIcon; institucion[0].institucion.icono.fecha_ult_modificacion = DateTime.Now; } } } //datos del representante institucion[0].nombre = nombre_r; institucion[0].apellido = apellido_r; institucion[0].tipo_identificacion = tipo_identificacion; institucion[0].identificacion = identificacion; institucion[0].urlCvlac = urlCvlac; institucion[0].correo_electronico = correo_electronico_r; institucion[0].fecha_ult_modificacion = DateTime.Now; //Envio email confirmacion edicion perfil StringBuilder bodyMail = new StringBuilder(); bodyMail.AppendLine("Su Perfil ha sido editado exitosamente en biotecred.com ."); bodyMail.AppendLine("Lo invitamos a que inicie sesión y continúe disfrutando de nuestra plataforma."); string subject = "Confirmación Edición de perfil."; Mail mail = new Mail(institucion[0].institucion.logueo.correo_electronico, subject, bodyMail); //Verifico si la institucion existe en el sistema List<Mensaje> lstVerificaExiste = existeInstitucion(institucion[0]); List<Mensaje> lstVerificaExisteEmail = mail.existeEmail(); if (lstVerificaExiste.Count == 0 && lstVerificaExisteEmail.Count == 0) { institucion[0].fecha_ult_modificacion = DateTime.Now; _repositorio.SaveOrUpdate<Persona>(institucion[0]); long id_inst = institucion[0].id; //Elimino las relaciones de la entidad institucion con sectores y tipoBiotecnologia Expression<Func<InstitucionSector, bool>> query3 = (u => u.institucion.id == id_inst); _repositorio.DeleteFilter<InstitucionSector>(query3); Expression<Func<InstitucionTipoBiotec, bool>> query4 = (u => u.institucion.id == id_inst); _repositorio.DeleteFilter<InstitucionTipoBiotec>(query4); //almaceno las relaciones de la entidad institucion con sectores y tipoBiotecnologia foreach (Sector sector in lstSectores) { _repositorio.SaveOrUpdate(new InstitucionSector { institucion = institucion[0].institucion, sector = sector, fecha_ult_modificacion = DateTime.Now }); } foreach (TipoBiotecnologia tipo in lstTipoBiotecnologia) { _repositorio.SaveOrUpdate(new InstitucionTipoBiotec { institucion = institucion[0].institucion, tipoBiotecnologia = tipo, fecha_ult_modificacion = DateTime.Now }); } //Envio el correo de confirmacion if (mail.sendMail()) { mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Institución editada exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "Se produjo un error mientras se enviaba el correo. Correo invalido"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error validacion", "Existen campos que ya existen en el sistema."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error Autenticación", "Institucion no encontrada."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error Autenticación", "Institución no encontrada."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error Autenticación", "Token de autenticación requerido."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error Autenticación", "institucón no encontrada."); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return mensaje; }
public Mensaje createInstitution([FromBody]UtilsJson.AInstitucion institution) { Mensaje mensaje = null; try { if (institution != null) { //datos logueo string correo_electronico_l = institution.logueo.correo_electronico; string password1 = institution.logueo.contrasena1; string password2 = institution.logueo.contrasena2; //datos representante string nombre_r = institution.representante.nombre; string apellido_r = institution.representante.apellido; string tipo_identificacion = institution.representante.tipo_identificacion; string identificacion = institution.representante.identificacion; string urlCvlac = institution.representante.urlCvlac; string correo_electronico_r = institution.representante.correo_electronico; //datos institucion string codigo = institution.codigo_registro; string nombre = institution.nombre; string descripcion = institution.descripcion; string correo_electronico = institution.correo_electronico; string direccion_postal = institution.direccion_postal; string facebook = institution.facebook; string fax = institution.fax; string impacto = institution.impacto; string linkedin = institution.linkedin; string naturaleza = institution.naturaleza; string pagina_web = institution.pagina_web; int tamano = institution.tamano; string telefono = institution.telefono; string tipo_institucion = institution.tipo_institucion; string twitter = institution.twitter; string constitucion = institution.constitucion; string fecha_creacion = institution.fecha_creacion; string latitud = institution.latitud; string longitud = institution.longitud; string imagen_base64 = institution.imagen_base64; string tipo_empresa = (!String.IsNullOrWhiteSpace(institution.tipo_empresa)) ? institution.tipo_empresa : EnumTipoEmpresa.Compañia; UtilsJson.AMunicipio municipio = institution.municipio; UtilsJson.ASector[] sectores = institution.sectores; UtilsJson.ATipoBiotecnologia[] Tipos_Biotecnologia = institution.Tipos_Biotecnologia; if (codigo != null) { //verificacion de existencia y estado del codigo Expression<Func<SolicitudRegistro, bool>> query = u => u.codigo == codigo && u.estado == true; SolicitudRegistro solicitud = _repositorio.Get<SolicitudRegistro>(query); //Si la solicitud existe y no se ha usado subo a session el codigo if (solicitud != null) { Municipio municipioDb = null; List<Sector> lstSectores = new List<Sector>(); List<TipoBiotecnologia> lstTipoBiotecnologia = new List<TipoBiotecnologia>(); if (municipio.id > 0) { municipioDb = _repositorio.Get<Municipio>(municipio.id); } if (sectores != null) { lstSectores = convertToSector(sectores); } if (Tipos_Biotecnologia != null) { lstTipoBiotecnologia = convertToTipoBiotecnologia(Tipos_Biotecnologia); } Institucion institucion_api = new Institucion(); if (password1.Equals(password2)) { institucion_api.logueo = new LogueoInstitucion { correo_electronico = correo_electronico_l, contrasena = CifradoDatos.cifrarPassword(password2), fecha_ult_modificacion = DateTime.Now, rol = EnumTipoRol.usuario }; institucion_api.descripcion = descripcion; institucion_api.impacto = impacto; institucion_api.correo_electronico = correo_electronico; institucion_api.latitud = latitud; institucion_api.linkedin = linkedin; institucion_api.longitud = longitud; institucion_api.municipio = municipioDb; institucion_api.naturaleza = naturaleza; institucion_api.constitucion = constitucion; institucion_api.nombre = nombre; institucion_api.pagina_web = pagina_web; institucion_api.tamano = tamano; institucion_api.telefono = telefono; institucion_api.fax = fax; institucion_api.direccion_postal = direccion_postal; institucion_api.facebook = facebook; institucion_api.tipo_institucion = tipo_institucion; institucion_api.twitter = twitter; institucion_api.fecha_creacion = (!string.IsNullOrWhiteSpace(fecha_creacion)) ? Convert.ToDateTime(fecha_creacion) : (DateTime?)null; if (institucion_api.banner == null) { if (!string.IsNullOrWhiteSpace(imagen_base64)) { institucion_api.banner = new Imagen { imagenBase64 = imagen_base64, fecha_ult_modificacion = DateTime.Now }; //Redimension de la imagen y creacion de icono string extension = imagen_base64.Split(',')[0]; imagen_base64 = imagen_base64.Split(',')[1]; byte[] bytes = Convert.FromBase64String(imagen_base64); if (bytes.Length > 0) { byte[] filebytesIcon =UtilsHost.Redimensionar(Image.FromStream(new MemoryStream(bytes)), 100, 100, 32); string encodedDataIcon = extension + "," + Convert.ToBase64String(filebytesIcon, Base64FormattingOptions.None); institucion_api.icono = new Imagen { imagenBase64 = encodedDataIcon, fecha_ult_modificacion = DateTime.Now }; } } } else { if (!string.IsNullOrWhiteSpace(imagen_base64)) { institucion_api.banner.imagenBase64 = imagen_base64; institucion_api.banner.fecha_ult_modificacion = DateTime.Now; //Redimension de la imagen y creacion de icono string extension = imagen_base64.Split(',')[0]; imagen_base64 = imagen_base64.Split(',')[1]; byte[] bytes = Convert.FromBase64String(imagen_base64); if (bytes.Length > 0) { byte[] filebytesIcon = UtilsHost.Redimensionar(Image.FromStream(new MemoryStream(bytes)), 100, 100, 32); string encodedDataIcon = extension + "," + Convert.ToBase64String(filebytesIcon, Base64FormattingOptions.None); institucion_api.icono.imagenBase64 = encodedDataIcon; institucion_api.icono.fecha_ult_modificacion = DateTime.Now; } } } //creo un nuevo representante para la institucion Persona persona = new Persona { nombre = nombre_r, apellido = apellido_r, tipo_identificacion = tipo_identificacion, identificacion = identificacion, urlCvlac = urlCvlac, correo_electronico = correo_electronico_r, tipoPersona = EnumTipoPersona.director, fecha_ult_modificacion = DateTime.Now, estado=true }; //Genero el correo para confirmacion para habilitar el perfil StringBuilder bodyMail = new StringBuilder(); //Creo un token de autenticacion para habilitar el perfil string codigoEnabled = CifradoDatos.cifrarRSA(institucion_api.logueo.correo_electronico); bodyMail.AppendLine("Para habilitar el perfil de la institucion " + institucion_api.nombre + " dirijase al siguiente enlace."); string informacionHost = UtilsHost.serverInfoCurrent(); bodyMail.AppendLine("<a href=\"" + informacionHost + "/Institucion/HabilitarCuenta?tokenEnabled=" + codigoEnabled + "\">Activar perfil.</a>" + "</br>"); string subject = "Confirmación y habilitacion de perfil."; Mail mail = new Mail(institucion_api.logueo.correo_electronico, subject, bodyMail); //Verifico si la institucion existe en el sistema List<Mensaje> lstVerificaExiste = existeInstitucion(persona); List<Mensaje> lstVerificaExisteEmail = mail.existeEmail(); if (lstVerificaExiste.Count == 0 && lstVerificaExisteEmail.Count == 0) { //Envio el correo de confirmacion if (mail.sendMail()) { persona.institucion = institucion_api; _repositorio.SaveOrUpdate<Persona>(persona); //Elimino las relaciones de la entidad institucion con sectores y tipoBiotecnologia Expression<Func<InstitucionSector, bool>> query3 = u => u.institucion.id == institucion_api.id; _repositorio.DeleteFilter<InstitucionSector>(query3); Expression<Func<InstitucionTipoBiotec, bool>> query4 = u => u.institucion.id == institucion_api.id; _repositorio.DeleteFilter<InstitucionTipoBiotec>(query4); //almaceno las relaciones de la entidad institucion con sectores y tipoBiotecnologia foreach (Sector sector in lstSectores) { _repositorio.SaveOrUpdate(new InstitucionSector { institucion = institucion_api, sector = sector, fecha_ult_modificacion = DateTime.Now }); } foreach (TipoBiotecnologia tipo in lstTipoBiotecnologia) { _repositorio.SaveOrUpdate(new InstitucionTipoBiotec { institucion = institucion_api, tipoBiotecnologia = tipo, fecha_ult_modificacion = DateTime.Now }); } // Desabilito el codigoPreRegistro en el poll de codigo para que no se pueda volver a usar solicitud.estado = false; solicitud.fecha_ult_modificacion = DateTime.Now; _repositorio.SaveOrUpdate<SolicitudRegistro>(solicitud); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Verifique el correo de logueo para activar el perfil."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "Se produjo un error mientras se enviaba el correo. Correo invalido"); } } } else { mensaje = new Mensaje(); mensaje.titulo = "Error en validacion de password diferente"; mensaje.tipo = "Error"; mensaje.cuerpo = "Error en validacion de password diferente"; } } else { mensaje = new Mensaje(); mensaje.titulo = "Error en validacion de codigo"; mensaje.tipo = "Error"; mensaje.cuerpo = "Error el codigo no existe o ya fue utilizado"; } } else { mensaje = new Mensaje(); mensaje.titulo = "Error en validacion de codigo"; mensaje.tipo = "Error"; mensaje.cuerpo = "Error el codigo es requerido"; } } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return mensaje; }
public Mensaje createAutor([FromBody] UtilsJson.APersona autor) { Mensaje mensaje = null; try { /* * //datos logueo * string correo_logueo = autor.correo_logueo; * string contrasena = autor.contrasena; * * * //datos publicacion * string tipo_identificacion = autor.tipo_identificacion; * double identificacion = autor.identificacion; * string nombre_persona = autor.nombre; * string apellido_persona = autor.apellido; * string correo_persona = autor.correo_electronico; * string urlCvlac = autor.urlCvlac; * * if (!String.IsNullOrWhiteSpace(correo_logueo) && !String.IsNullOrWhiteSpace(contrasena)) * { * //Cifrado de la contrasena * contrasena = CifradoDatos.cifrarPassword(contrasena); * * //Busco la institucion asociada al usuario y a la contrasena * Expression<Func<Representante, bool>> query = (u => u.institucion.logueo.correo_electronico == correo_logueo && u.institucion.logueo.contrasena == contrasena && u.institucion.estado == true); * * List<Representante> institucion = _repositorio.Filter<Representante>(query); * * if (institucion != null) * { * if (institucion.Count > 0) * { * Persona persona = new Persona(nombre_persona, apellido_persona, tipo_identificacion, identificacion, urlCvlac, correo_persona); * * Autor autorB = new Autor(institucion[0].institucion, persona); * * _repositorio.SaveOrUpdate<Autor>(autorB); * * mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Autor registrada exitosamente."); * * } * else * { * mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "Correo logueo y contraseña son requeridos"); * } * } * else * { * mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "Correo logueo y contraseña son requeridos"); * } * } * else * { * mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "Correo logueo y contraseña son requeridos"); * }*/ } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return(mensaje); }
public Mensaje editCronograma([FromBody]UtilsJson.ACronograma cronograma) { Mensaje mensaje = null; try { if (cronograma != null) { if (!string.IsNullOrWhiteSpace(cronograma.token_string)) { if (AutenticacionToken.validateToken(cronograma.token_string) == 1) { Institucion institucion = _repositorio.Get<Institucion>(cronograma.institucionId); Cronograma cronogramaDB = _repositorio.Get<Cronograma>(cronograma.id); if (institucion != null && cronogramaDB != null) { if (AutenticacionToken.validateUserToken(cronograma.token_string, institucion.logueo.correo_electronico)) { string nombre = cronograma.nombre; string tema = cronograma.tema; string descripcion = cronograma.descripcion; string color = cronograma.color; long id_sala = cronograma.salaMesaId; bool estado = cronograma.estado; long id_evento = cronograma.eventoId; if (!string.IsNullOrWhiteSpace(cronograma.hora_inicio) && !string.IsNullOrWhiteSpace(cronograma.hora_fin)) { DateTime hora_inicio = Convert.ToDateTime(cronograma.hora_inicio); DateTime hora_fin = Convert.ToDateTime(cronograma.hora_fin); Publicacion publicacion = _repositorio.Get<Publicacion>(id_evento); SalaMesa salaMesa = _repositorio.Get<SalaMesa>(id_sala); if (DateTime.Compare(hora_inicio, hora_fin) < 0) { if (publicacion != null && salaMesa != null) { cronogramaDB.evento = publicacion; cronogramaDB.sala = salaMesa; cronogramaDB.nombre = nombre; cronogramaDB.tema = tema; cronogramaDB.descripcion = descripcion; cronogramaDB.hora_inicio = hora_inicio; cronogramaDB.hora_fin = hora_fin; cronogramaDB.estado = estado; cronogramaDB.fecha_ult_modificacion = DateTime.Now; _repositorio.SaveOrUpdate<Cronograma>(cronogramaDB); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Cronograma editado exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "El evento o la sala solicitada no existe. verifique"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "La hora de inicio es posterior a la hora de finalizacion. verifique"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "La hora de inicio es posterior a la hora de finalizacion. verifique"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se encontro la sala solicitada o esta asociada a otra institucion."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se puede insertar un objeto nulo"); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return mensaje; }
public Mensaje editAEventoParticipante([FromBody]UtilsJson.AEventoParticipante eventoParticipante) { Mensaje mensaje = null; try { if (eventoParticipante != null) { if (!string.IsNullOrWhiteSpace(eventoParticipante.token_string)) { if (AutenticacionToken.validateToken(eventoParticipante.token_string) == 1) { long id_institucion_c = eventoParticipante.id_institucion; long id_publicacion = eventoParticipante.id_evento; Institucion institucion = _repositorio.Get<Institucion>(id_institucion_c); Publicacion publicacion = _repositorio.Get<Publicacion>(id_publicacion); EventoParticipante registro = _repositorio.Get<EventoParticipante>(eventoParticipante.id_evento_institucion); if (institucion != null && publicacion != null && registro != null) { if (AutenticacionToken.validateUserToken(eventoParticipante.token_string, institucion.logueo.correo_electronico)) { registro.institucion=institucion; registro.evento=publicacion; registro.fecha_ult_modificacion=DateTime.Now; registro.estado = eventoParticipante.estado; //Almaceno o actualizo el registro _repositorio.SaveOrUpdate<EventoParticipante>(registro); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Participante a evento editado exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se encontro el registro solicitada o esta asociada a otra institucion."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se puede insertar un objeto nulo"); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return mensaje; }
public IQueryable<UtilsJson.AInstitucion> getCadenaValorFilter([FromBody] UtilsJson.ACadenaValor cadena_valor) { IQueryable<UtilsJson.AInstitucion> listado=null; try { string tipo_ente=cadena_valor.tipo_institucion; string nombre_institucion=cadena_valor.nombre_institucion; long[] id_tipo_biotecnologia =cadena_valor.ids_tipo_biotecnologia; long id_sector = cadena_valor.id_sector; SqlParameter[] param = new SqlParameter[4]; if (tipo_ente == null) { param[0] = new SqlParameter("tipo", DBNull.Value); } else { param[0] = new SqlParameter("tipo", tipo_ente); } if (nombre_institucion == null) { param[1] = new SqlParameter("nombre", DBNull.Value); } else { param[1] = new SqlParameter("nombre", nombre_institucion); } if (id_tipo_biotecnologia == null) { param[2] = new SqlParameter("biotecnologia", DBNull.Value); } else { string stringids = string.Empty; for (int i = 0; i < id_tipo_biotecnologia.Length; i++) { stringids += id_tipo_biotecnologia[i] + "|"; } param[2] = new SqlParameter("biotecnologia", stringids); } if (id_sector == 0) { param[3] = new SqlParameter("sector", DBNull.Value); } else { param[3] = new SqlParameter("sector", id_sector); } listado = _repositorio.executeStored<UtilsJson.AInstitucion>("getFilterCadenaValor", param).Cast<UtilsJson.AInstitucion>().AsQueryable<UtilsJson.AInstitucion>(); } catch (Exception ex) { SystemLog log = new SystemLog(); log.ErrorLog(ex.Message); } return listado; }
public Mensaje createEventoParticipante([FromBody] UtilsJson.AEventoParticipante eventoParticipante) { Mensaje mensaje = null; try { if (eventoParticipante != null) { if (!string.IsNullOrWhiteSpace(eventoParticipante.token_string)) { if (AutenticacionToken.validateToken(eventoParticipante.token_string) == 1) { long id_inst = eventoParticipante.id_institucion; long id_pub = eventoParticipante.id_evento; Institucion institucion = _repositorio.Get <Institucion>(id_inst); Publicacion publicacion = _repositorio.Get <Publicacion>(id_pub); Expression <Func <EventoParticipante, bool> > query = (u => u.institucion.id == id_inst && u.evento.id == id_pub && u.estado == true); List <EventoParticipante> result = _repositorio.Filter <EventoParticipante>(query); if (institucion != null && publicacion != null && result.Count == 0) { if (AutenticacionToken.validateUserToken(eventoParticipante.token_string, institucion.logueo.correo_electronico)) { //datos institucion y publicacion EventoParticipante newRegistro = new EventoParticipante { institucion = institucion, evento = publicacion, fecha_ult_modificacion = DateTime.Now, estado = eventoParticipante.estado }; //Almaceno o actualizo la salaMesa _repositorio.SaveOrUpdate <EventoParticipante>(newRegistro); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Institucion registrada al evento exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes para modificar estos campos."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se puede insertar un objeto nulo"); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return(mensaje); }
public Mensaje deleteConferencista([FromBody] UtilsJson.APersona conferencista) { Mensaje mensaje = null; try { if (conferencista != null) { if (!string.IsNullOrWhiteSpace(conferencista.token)) { if (AutenticacionToken.validateToken(conferencista.token) == 1) { long id_institucion_c = (!string.IsNullOrWhiteSpace(conferencista.Ainstitucion)) ? long.Parse(conferencista.Ainstitucion) : 0; Institucion institucion = _repositorio.Get <Institucion>(id_institucion_c); Conferencista conferencistaDB = _repositorio.Get <Conferencista>(conferencista.id); if (institucion != null && conferencistaDB != null) { if (AutenticacionToken.validateUserToken(conferencista.token, institucion.logueo.correo_electronico)) { _repositorio.Delete <Conferencista>(conferencistaDB.id); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Conferencista fue eliminada exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se encontro el conferencista solicitada o esta asociada a otra institucion."); } } else { mensaje = new Mensaje(EnumTipoMensaje.Expiracion, "Error", "La sesion actual ha expirado. Inicie sesion"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No cuenta con los privilegios suficientes"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "No se puede eliminar un objeto nulo"); } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", sb.ToString()); SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); throw new Exception(sb.ToString()); } return(mensaje); }
public Mensaje deleteAutor([FromBody]UtilsJson.APersona autor) { Mensaje mensaje = null; try {/* //datos logueo string correo_logueo = autor.correo_logueo; string contrasena = autor.contrasena; //datos publicacion long id_autor = autor.id; if (!String.IsNullOrWhiteSpace(correo_logueo) && !String.IsNullOrWhiteSpace(contrasena)) { //Cifrado de la contrasena contrasena = CifradoDatos.cifrarPassword(contrasena); //Busco la institucion asociada al usuario y a la contrasena Expression<Func<Autor, bool>> query = (u => u.institucion.logueo.correo_electronico == correo_logueo && u.institucion.logueo.contrasena == contrasena && u.institucion.estado == true && u.id == id_autor); List<Autor> autorB = _repositorio.Filter<Autor>(query); if (autorB != null) { if (autorB.Count > 0) { long id_persona = autorB[0].persona.id; _repositorio.Delete<Autor>(autorB[0].id); _repositorio.Delete<Persona>(id_persona); mensaje = new Mensaje(EnumTipoMensaje.Notificacion, "Notificación", "Autor eliminado exitosamente."); } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "El autor no hace parte de la institucion especificada o no existe"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "El autor no hace parte de la institucion especificada o no existe"); } } else { mensaje = new Mensaje(EnumTipoMensaje.Error, "Error", "Correo de logueo y contraseña son requeridos"); }*/ } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { var sb = new System.Text.StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } //Guardo los errores que se producieron durante la insercion SystemLog log = new SystemLog(); log.ErrorLog(sb.ToString()); } return mensaje; }