public List <clsasignarfamilia> ListarPersonaSinFa() { //string sql = "select * from PERSONA p left join persona_familia pf on p.idpersona=pf.idpersona where pf.idpersona is null "; string sql = "select tbl.IDPERSONA,tbl.PRIMERNOMBREPERSONA, tbl.SEGUNDONOMBREPERSONA, tbl.PRIMERAPELLIDOPERSONA, tbl.SEGUNDOAPELLIDOPERSONA, p.NOMBREPARENTEZCO from (select p.IDPERSONA,p.PRIMERNOMBREPERSONA,p.SEGUNDONOMBREPERSONA,p.PRIMERAPELLIDOPERSONA,p.SEGUNDOAPELLIDOPERSONA, p.IDPARENTEZCO from PERSONA p left join persona_familia pf on p.idpersona=pf.idpersona where pf.idpersona is null) as tbl inner join PARENTEZCO p on tbl.IDPARENTEZCO=p.IDPARENTEZCO"; SqlCommand comando = new SqlCommand(sql, clsConexion.conexion); List <clsasignarfamilia> listaPersona = new List <clsasignarfamilia>(); clsConexion.abrirConexion(); SqlDataReader lectorPersona = comando.ExecuteReader(); while (lectorPersona.Read()) { clsasignarfamilia objetoPersona = new clsasignarfamilia(); objetoPersona.Persona = lectorPersona.GetInt32(0); objetoPersona.PrimerNombre = lectorPersona.GetString(1); objetoPersona.SegundoNombre = lectorPersona.GetString(2); objetoPersona.PrimerApellido = lectorPersona.GetString(3); objetoPersona.SegundoApellido = lectorPersona.GetString(4); objetoPersona.Parentezco = lectorPersona.GetString(5); listaPersona.Add(objetoPersona); } clsConexion.cerrarConexion(); return(listaPersona); }
public List <clsasignarfamilia> ConsultaMiembrosFamilia(clsNFamilia familia) { try { List <clsasignarfamilia> listaMiembros = new List <clsasignarfamilia>(); List <PERIODO_PERSONA_FAMILIA> bases = bd.PERIODO_PERSONA_FAMILIA.Where(pf => pf.IDFAMILIA == familia.IDFAMILIA && pf.PERIODO.ESTADOPERIODO == true && pf.PERIODO.IDTIPOPERIODO == 2).ToList(); foreach (PERIODO_PERSONA_FAMILIA ppf in bases) { clsasignarfamilia miembro = new clsasignarfamilia(); miembro.CodigoFamilia = ppf.IDFAMILIA; miembro.NombreFamilia = ppf.FAMILIA.NOMBREFAMILIA; miembro.CodigoPersona = ppf.IDPERSONA; miembro.PrimerNombre = bd.PERSONA.Where(pa => pa.IDPERSONA == ppf.IDPERSONA).First().PRIMERNOMBREPERSONA; miembro.SegundoNombre = bd.PERSONA.Where(pa => pa.IDPERSONA == ppf.IDPERSONA).First().SEGUNDONOMBREPERSONA; miembro.PrimerApellido = bd.PERSONA.Where(pa => pa.IDPERSONA == ppf.IDPERSONA).First().PRIMERAPELLIDOPERSONA; miembro.SegundoApellido = bd.PERSONA.Where(pa => pa.IDPERSONA == ppf.IDPERSONA).First().SEGUNDOAPELLIDOPERSONA; miembro.CodigoParentezco = ppf.PARENTEZCO.IDPARENTEZCO; miembro.Parentezco = ppf.PARENTEZCO.NOMBREPARENTEZCO; listaMiembros.Add(miembro); } return(listaMiembros); } catch (Exception ex) { return(new List <clsasignarfamilia>()); } }
public clsasignarfamilia transformar(PERIODO_PERSONA_FAMILIA newAsignar) { clsasignarfamilia asignar = new clsasignarfamilia(); asignar.CodigoFamilia = newAsignar.IDFAMILIA; asignar.CodigoParentezco = newAsignar.PARENTEZCO.IDPARENTEZCO; asignar.CodigoPersona = newAsignar.IDPERSONA; asignar.NombreFamilia = newAsignar.FAMILIA.NOMBREFAMILIA; asignar.Parentesco = newAsignar.PARENTEZCO.NOMBREPARENTEZCO; asignar.PrimerNombre = newAsignar.PERSONA.PRIMERNOMBREPERSONA; asignar.SegundoNombre = newAsignar.PERSONA.SEGUNDONOMBREPERSONA; asignar.PrimerApellido = newAsignar.PERSONA.PRIMERAPELLIDOPERSONA; asignar.SegundoApellido = newAsignar.PERSONA.SEGUNDOAPELLIDOPERSONA; return(asignar); }
protected void btnAgregar_Click(object sender, EventArgs e) { clsasignarfamilia nuevo = new clsasignarfamilia(); int codigoPer, codigoPar, codigoFam; int.TryParse(ddlIndividuos.SelectedValue.ToString(), out codigoPer); int.TryParse(ddlFamilia.SelectedValue.ToString(), out codigoFam); int.TryParse(ddlParentezco.SelectedValue.ToString(), out codigoPar); nuevo.CodigoPersona = codigoPer; bool existe = nuevaLista.Any(i => i.CodigoPersona == codigoPer); int padres = nuevaLista.Where(i => i.CodigoParentezco == 1).Count(); int madres = nuevaLista.Where(i => i.CodigoParentezco == 2).Count(); bool esNinio = objDNinio.consultarNinio().Any(p => p.IDPERSONA == codigoPer); if (!existe) { clsasignarfamilia nuevaRelacion = new clsasignarfamilia(); nuevaRelacion.CodigoPersona = codigoPer; nuevaRelacion.CodigoParentezco = codigoPar; nuevaRelacion.CodigoFamilia = codigoFam; nuevaRelacion = objDAF.ConsultaFamilias(nuevaRelacion); nuevaLista.Add(nuevaRelacion); ddlRepresentante.DataSource = objDPersona.consultarIndividuos(nuevaLista).Where(p => p.FECHANACIMIENTOPERSONA.Value.Year <= DateTime.Now.Year - 13).Select(p => new { ID = p.IDPERSONA, NOMBRE = p.PRIMERNOMBREPERSONA + " " + p.SEGUNDONOMBREPERSONA + " " + p.PRIMERAPELLIDOPERSONA + " " + p.SEGUNDOAPELLIDOPERSONA }).OrderBy(a => a.NOMBRE).ToList(); ddlRepresentante.DataTextField = "NOMBRE"; ddlRepresentante.DataValueField = "ID"; ddlRepresentante.DataBind(); cargarRepresentante(); gvFamilia.DataSource = nuevaLista.Select(l => new { IDPERSONA = l.CodigoPersona, NOMBRE = l.PrimerNombre + " " + l.SegundoNombre + " " + l.PrimerApellido + " " + l.SegundoApellido, PARENTEZCO = l.Parentezco, FAMILIA = l.NombreFamilia }); gvFamilia.DataKeyNames = new string[] { "IDPERSONA" }; gvFamilia.DataBind(); } else { Response.Write("<script>window.alert('No se puede agregar un individuo dos veces a la misma familia');</script>"); } cargarIndividuoSinFamilia(); }
protected void gvFamilia_RowDeleting(object sender, GridViewDeleteEventArgs e) { try { int idPersona; int.TryParse(gvFamilia.DataKeys[e.RowIndex]["IDPERSONA"].ToString(), out idPersona); clsasignarfamilia eliminado = nuevaLista.Where(p => p.CodigoPersona == idPersona).First(); nuevaLista.Remove(eliminado); } catch { MsgBox("Evite refrescar la página al eliminar individuos", this.Page, this); } ddlRepresentante.DataSource = objDPersona.consultarIndividuos(nuevaLista).Where(p => p.FECHANACIMIENTOPERSONA.Value.Year <= DateTime.Now.Year - 13).Select(p => new { ID = p.IDPERSONA, NOMBRE = p.PRIMERNOMBREPERSONA + " " + p.SEGUNDONOMBREPERSONA + " " + p.PRIMERAPELLIDOPERSONA + " " + p.SEGUNDOAPELLIDOPERSONA }).OrderBy(a => a.NOMBRE).ToList(); ddlRepresentante.DataTextField = "NOMBRE"; ddlRepresentante.DataValueField = "ID"; ddlRepresentante.DataBind(); cargarRepresentante(); gvFamilia.DataSource = nuevaLista.Select(l => new { IDPERSONA = l.CodigoPersona, NOMBRE = l.PrimerNombre + " " + l.SegundoNombre + " " + l.PrimerApellido + " " + l.SegundoApellido, PARENTEZCO = l.Parentezco, FAMILIA = l.NombreFamilia }); gvFamilia.DataBind(); }
public clsasignarfamilia ConsultaFamilias(clsasignarfamilia nuevaRelacion) { try { clsasignarfamilia retorno = new clsasignarfamilia(); PERSONA per = bd.PERSONA.Where(p => p.IDPERSONA == nuevaRelacion.CodigoPersona).First(); retorno.CodigoPersona = nuevaRelacion.CodigoPersona; retorno.PrimerNombre = per.PRIMERNOMBREPERSONA; retorno.SegundoNombre = per.SEGUNDONOMBREPERSONA; retorno.PrimerApellido = per.PRIMERAPELLIDOPERSONA; retorno.SegundoApellido = per.SEGUNDOAPELLIDOPERSONA; retorno.CodigoFamilia = nuevaRelacion.CodigoFamilia; FAMILIA fam = bd.FAMILIA.Where(f => f.IDFAMILIA == nuevaRelacion.CodigoFamilia).First(); retorno.NombreFamilia = fam.NOMBREFAMILIA;; retorno.CodigoParentezco = nuevaRelacion.CodigoParentezco; PARENTEZCO par = bd.PARENTEZCO.Where(pa => pa.IDPARENTEZCO == nuevaRelacion.CodigoParentezco).First(); retorno.Parentezco = par.NOMBREPARENTEZCO; return(retorno); } catch (Exception ex) { return(new clsasignarfamilia()); } }