public RespuestaABusquedaDeLegajos BuscarLegajos(string criterio) { //int numero; //if (int.TryParse(criterio, out numero)) //{ // legajos.AddRange(this.GetLegajoPorDocumento(numero)); // legajos.AddRange(this.GetLegajoPorIdInterna(numero)); //} //else //{ // legajos.AddRange(this.GetLegajosPorApellidoYNombre(criterio)); //} var legajos = new List <LegajoModi>(); var repo_pers = RepositorioDePersonas.NuevoRepositorioDePersonas(this.conexion_db); var personas = repo_pers.BuscarPersonasConLegajo(criterio); personas.ForEach(p => { var legajo = new LegajoModi(int.Parse(p.Legajo), p.Documento, p.Nombre, p.Apellido); legajo.agregarDocumentos(this.DocumentosPara(legajo)); this.SetearEsqueletoDeImagenesAUnLegajo(legajo); legajos.Add(legajo); }); return(new RespuestaABusquedaDeLegajos(legajos)); }
public List <Usuario> UsuariosQueAdministranElArea(int id_area) { var repo_usuarios = new RepositorioDeUsuarios(conexion, RepositorioDePersonas.NuevoRepositorioDePersonas(conexion));; var permisos = this.Obtener(); List <Usuario> usuariosEncontrados = permisos.FindAll(p => p.Value == id_area).Select(p => repo_usuarios.GetUsuarioPorId(p.Key)).ToList(); return(usuariosEncontrados); }
public bool RecuperarUsuario(string criterio) { var repo_personas = RepositorioDePersonas.NuevoRepositorioDePersonas(this.conexion); var repo_usuarios = new RepositorioDeUsuarios(this.conexion, repo_personas); var validador_datos = new Validador(); var criterio_deserializado = (JObject)JsonConvert.DeserializeObject(criterio); if (criterio_deserializado["Mail"] != null) { string mail = (string)((JValue)criterio_deserializado["Mail"]); Usuario usuario_a_recuperar = repo_usuarios.RecuperarUsuario(mail); if (usuario_a_recuperar.Id == 0) { return(false); } EnviarMailDeRecupero(usuario_a_recuperar, mail); return(true); } return(false); }
public int crearAlerta(string titulo, string descripcion, int id_usuario_destinatario, int id_usuario_creador) { var parametros = new Dictionary <string, object>(); parametros.Add("@id_usuario_destinatario", id_usuario_destinatario); parametros.Add("@id_usuario_creador", id_usuario_creador); parametros.Add("@titulo", titulo); parametros.Add("@descripcion", descripcion); var id_alerta = Int32.Parse((this.conexion.EjecutarEscalar("dbo.MAU_CrearAlerta", parametros).ToString())); var repo_personas = RepositorioDePersonas.NuevoRepositorioDePersonas(this.conexion); var repo_usuarios = new RepositorioDeUsuarios(this.conexion, repo_personas); var usuario = repo_usuarios.GetUsuarioPorId(id_usuario_destinatario); var titulo_mail = titulo; var cuerpo = descripcion; EnviadorDeMails.EnviarMail(usuario.MailRegistro, titulo_mail, cuerpo); return(id_alerta); }
public string InscripcionManual(string postulacion, string datosPersonales, string folio, Usuario usuario) { var postulacion_deserializada = (JObject)JsonConvert.DeserializeObject(postulacion); var datosPersonales_deserializada = (JObject)JsonConvert.DeserializeObject(datosPersonales); var folio_deserializada = (JObject)JsonConvert.DeserializeObject(folio); var idPerfil = postulacion_deserializada["postulacion"]["Perfil"].ToString(); var numerosGDE = postulacion_deserializada["postulacion"]["NumerosDeInformeGDE"].ToArray(); var fechaInscripcion = postulacion_deserializada["postulacion"]["FechaInscripcion"].ToString(); string[] fechas = fechaInscripcion.Split('/'); DateTime fechaFormateada = new DateTime(int.Parse(fechas[2]), int.Parse(fechas[1]), int.Parse(fechas[0])); var dniInscriptor = postulacion_deserializada["postulacion"]["DNIInscriptor"].ToString(); var nombre = datosPersonales_deserializada["datosPersonales"]["Nombre"].ToString(); var apellido = datosPersonales_deserializada["datosPersonales"]["Apellido"].ToString(); var dni = datosPersonales_deserializada["datosPersonales"]["DNI"].ToString(); var telefono = datosPersonales_deserializada["datosPersonales"]["Telefono"].ToString(); var mail = datosPersonales_deserializada["datosPersonales"]["Mail"].ToString(); var folioFicha = folio_deserializada["folio"]["FichaInscripcion"].ToString(); var folioCarnet = folio_deserializada["folio"]["FotografiaCarnet"].ToString(); var folioDNI = folio_deserializada["folio"]["FotocopiaDNI"].ToString(); var folioTitulo = folio_deserializada["folio"]["Titulo"].ToString(); var folioCV = folio_deserializada["folio"]["CV"].ToString(); var folioRespaldo = folio_deserializada["folio"]["DocumentacionRespaldo"].ToString(); var domicilio_personal_calle = datosPersonales_deserializada["datosPersonales"]["DomicilioCallePersonal"].ToString(); var domicilio_personal_nro = int.Parse(datosPersonales_deserializada["datosPersonales"]["DomicilioNroPersonal"].ToString()); var domicilio_personal_piso = int.Parse(datosPersonales_deserializada["datosPersonales"]["DomicilioPisoPersonal"].ToString()); var domicilio_personal_depto = datosPersonales_deserializada["datosPersonales"]["DomicilioDeptoPersonal"].ToString(); var domicilio_personal_cp = int.Parse(datosPersonales_deserializada["datosPersonales"]["DomicilioCpPersonal"].ToString()); var domicilio_personal_prov = int.Parse(datosPersonales_deserializada["datosPersonales"]["DomicilioProvinciaPersonal"].ToString()); var domicilio_personal_localidad = int.Parse(datosPersonales_deserializada["datosPersonales"]["DomicilioLocalidadPersonal"].ToString()); var domicilio_legal_calle = datosPersonales_deserializada["datosPersonales"]["DomicilioCalleLegal"].ToString(); var domicilio_legal_nro = int.Parse(datosPersonales_deserializada["datosPersonales"]["DomicilioNroLegal"].ToString()); var domicilio_legal_piso = int.Parse(datosPersonales_deserializada["datosPersonales"]["DomicilioPisoLegal"].ToString()); var domicilio_legal_depto = datosPersonales_deserializada["datosPersonales"]["DomicilioDeptoLegal"].ToString(); var domicilio_legal_cp = int.Parse(datosPersonales_deserializada["datosPersonales"]["DomicilioCpLegal"].ToString()); var domicilio_legal_prov = int.Parse(datosPersonales_deserializada["datosPersonales"]["DomicilioProvinciaLegal"].ToString()); var domicilio_legal_localidad = int.Parse(datosPersonales_deserializada["datosPersonales"]["DomicilioLocalidadLegal"].ToString()); //mockeado el tipo var modalidad = postulacion_deserializada["postulacion"]["Modalidad"].ToString(); RepositorioDePersonas repoPersonas = RepositorioDePersonas.NuevoRepositorioDePersonas(conexion_bd); Persona personaAInscribir; try { //busco o creo la persona que se va a postular personaAInscribir = TraerPersonaPorDNI(repoPersonas, dni, nombre, apellido); } catch (Exception e) { return(e.Message); } RepositorioDeUsuarios repoUsuarios = new RepositorioDeUsuarios(conexion_bd, repoPersonas); Usuario usuarioAInscribir; try { //busco el usuario de la persona que se va postular usuarioAInscribir = TraerUsuarioPorIdPersona(repoUsuarios, personaAInscribir.Id); } catch (Exception e) { return(e.Message); } Persona personaInscriptor; try { //busco la persona que fue el inscriptor personaInscriptor = TraerPersonaPorDNI(repoPersonas, dniInscriptor, "", ""); } catch (Exception e) { return(e.Message); } Usuario usuarioInscriptor; try { //busco el usuario del inscriptor usuarioInscriptor = TraerUsuarioPorIdPersona(repoUsuarios, personaInscriptor.Id); } catch (Exception e) { return(e.Message); } //guardo el domicilio personal GuardarDomicilioInscripcionManual(int.Parse(dni), domicilio_personal_calle, domicilio_personal_nro, domicilio_personal_piso, domicilio_personal_depto, domicilio_personal_cp, domicilio_personal_prov, domicilio_personal_localidad, telefono, mail, 1, usuarioInscriptor.Id); //guardo el domicilio legal GuardarDomicilioInscripcionManual(int.Parse(dni), domicilio_legal_calle, domicilio_legal_nro, domicilio_legal_piso, domicilio_legal_depto, domicilio_legal_cp, domicilio_legal_prov, domicilio_legal_localidad, telefono, mail, 2, usuarioInscriptor.Id); //creo la postulacion var numeroPostulacion = CrearPostulacionManual(int.Parse(idPerfil), personaAInscribir.Id, usuarioAInscribir.Id, numerosGDE); //guardo los folios de la postulacion //OJO CAMBIAR LA FECHA GuardarFolios(numeroPostulacion, fechaFormateada, int.Parse(folioFicha), int.Parse(folioCarnet), int.Parse(folioDNI), int.Parse(folioTitulo), int.Parse(folioCV), int.Parse(folioRespaldo), usuarioInscriptor.Id); //guardo en la nueva tabla de postulacion manual GuardarDatosExtrasPostulacionManual(numeroPostulacion, DateTime.Now, usuario.Id, int.Parse(modalidad)); //busco la postulacion para pasarla de etapa Postulacion mi_postul = this.GetPostulacionesPorCodigo(numeroPostulacion); InsEtapaPostulacion(mi_postul.Id, 2, usuarioInscriptor.Id); return(numeroPostulacion); }
public List <Usuario> UsuariosConLaFuncionalidad(int id_funcionalidad) { RepositorioDeUsuarios repositorioDeUsuarios = new RepositorioDeUsuarios(conexion, RepositorioDePersonas.NuevoRepositorioDePersonas(conexion)); return(this.Obtener().FindAll(p => p.Value == id_funcionalidad).Select(p => repositorioDeUsuarios.GetUsuarioPorId(p.Key)).ToList()); }
public bool RegistrarNuevoUsuario(AspiranteAUsuario aspirante, int id_usuario_logueado) { var repo_personas = RepositorioDePersonas.NuevoRepositorioDePersonas(this.conexion); var repo_usuarios = new RepositorioDeUsuarios(this.conexion, repo_personas); //if (repo_personas.BuscarPersonas(JsonConvert.SerializeObject(new { Documento=aspirante.Documento, ConLegajo=true})).Count > 0) //{ // throw new Exception("Ya hay alguien registrado con su documento."); //} //Se agrega la restricción del mail para que sea único if (repo_usuarios.ValidarMailExistente(aspirante.Email)) { //throw new Exception("Ya hay alguien registrado con su Mail."); return(false); } //VALIDA QUE SI TIENE UN DOCUMENTO YA EN LA BASE Y TIENE UN USUARIO ASIGNADO NO PUEDE. if (repo_personas.BuscarPersonasConUsuario(JsonConvert.SerializeObject(new { Documento = aspirante.Documento }))) { return(false); } if (aspirante.Nombre.Trim() == "") { throw new Exception("El nombre no puede ser vacío."); } if (aspirante.Apellido.Trim() == "") { throw new Exception("El apellido no puede ser vacío."); } var persona = new Persona(); persona.Documento = aspirante.Documento; persona.Nombre = aspirante.Nombre; persona.Apellido = aspirante.Apellido; repo_personas.GuardarPersona(persona, id_usuario_logueado); var usuario = repositorio_usuarios.CrearUsuarioPara(persona.Id); repositorio_usuarios.AsociarUsuarioConMail(usuario, aspirante.Email); var clave = repositorio_usuarios.ResetearPassword(usuario.Id); //mandarla por mail var titulo = "Bienvenido al SIGIRH"; var cuerpo = "Usted ha registrado en la página https://rrhh.desarrollosocial.gob.ar/" + "<br/>" + "Los datos para poder acceder a la misma son los siguientes:" + "<br/>" + "<br/>" + "Nombre de Usuario: " + usuario.Alias + "<br/>" + "Contraseña: " + clave + "<br/>" + "<br/>" + "Este es un mensaje automático enviado desde el Sistema SIGIRH, por favor no responda al mismo." + "<br/>" + "Cualquier inquietud comuníquese con la Dirección de Diseño y Desarrollo Organizacional para la Gestión de Personas." + "del Ministerio de Desarrollo Social de la Nación Argentina." + "<br/>" + "<br/>" + "Muchas gracias"; EnviadorDeMails.EnviarMail(aspirante.Email, titulo, cuerpo); return(true); }