public static Persona traerPersona(DatosdePersonaporCuip.RetornoDatosPersonaCuip _personaADP) { List <Tipo> Errores = new List <Tipo>(); Persona persona = new Persona(); try { if (_personaADP.PersonaCuip != null) { Domicilio domicilio = new Domicilio(_personaADP.PersonaCuip.domi_calle, _personaADP.PersonaCuip.domi_nro, _personaADP.PersonaCuip.domi_piso, _personaADP.PersonaCuip.domi_dpto, _personaADP.PersonaCuip.domi_cod_postal.ToString(), new Tipo(_personaADP.PersonaCuip.domi_cod_pcia.ToString(), ""), _personaADP.PersonaCuip.domi_localidad); Contacto contacto = new Contacto(_personaADP.PersonaCuip.email, string.Concat(_personaADP.PersonaCuip.telediscado, _personaADP.PersonaCuip.telefono.ToString()), string.Concat(_personaADP.PersonaCuip.telediscado, _personaADP.PersonaCuip.telefono.ToString())); persona = new Persona(long.Parse(_personaADP.PersonaCuip.cuip), _personaADP.PersonaCuip.ape_nom, int.Parse(_personaADP.PersonaCuip.doc_nro), _personaADP.PersonaCuip.doc_c_tipo, _personaADP.PersonaCuip.f_naci, _personaADP.PersonaCuip.sexo, _personaADP.PersonaCuip.f_falle, (((_personaADP.PersonaCuip.cod_estcivil == 2) || (_personaADP.PersonaCuip.cod_estcivil == 6)) && ((DateTime.Now.Year - _personaADP.PersonaCuip.f_naci.Year) < 18)), domicilio, contacto ); } else { } return(persona); } catch (Exception err) { log.Error(string.Format("{0} - Error:{1}->{2}", System.Reflection.MethodBase.GetCurrentMethod().Name, err.Source, err.Message)); return(null); } }
public static bool HijoTieneMadrePresaOFallecida(long cuilHijo, long cuilPadre, out long cuilDeLaMadre, out bool?madrePresa, out bool madreFallecida) { try { bool madrePresaOFallecida = false; madrePresa = null; madreFallecida = false; cuilDeLaMadre = 0; WSPW04.WS_PW04 srv = new WSPW04.WS_PW04(); log.Debug("Busco relaciones del hijo del titular"); log.DebugFormat("CuilTitular: {0}", cuilPadre); log.DebugFormat("CuilHijo: {0}", cuilHijo); WSPW04.ListaPw04 listaRelaciones = srv.ObtenerRelacionesxCuil(cuilHijo.ToString(), 1); if (listaRelaciones == null) { madrePresaOFallecida = false; log.Debug("El hijo no presenta relaciones al salir del servicio"); } else { if (listaRelaciones.Lista != null) { log.Debug("El hijo tiene relaciones al salir del servicio"); //List<WSPW04.DatosPw04> lista = new List<WSPW04.DatosPw04>(); List <WSPW04.DatosPw04> lst = listaRelaciones.Lista.ToList(); if (lst != null) { log.Debug("Recorro los hijos en busqueda del cuil de la madre"); int i = 0; foreach (WSPW04.DatosPw04 l in lst) { log.DebugFormat("Hijo Nro {0} tiene cod_Relacion {1}, base {2} y es hijo de cuil distinto del padre {3}", i, l.c_relacion, l.Base, l.cuil_rela != cuilPadre.ToString()); if (l.c_relacion == 3 && l.Base == "B" && l.cuil_rela != cuilPadre.ToString()) { log.Debug("Encontre a la madre"); cuilDeLaMadre = long.Parse(l.cuil_rela); log.DebugFormat("CuilDeLaMadre: {0}", cuilDeLaMadre); } i = i + 1; } } else { madrePresaOFallecida = false; log.Debug("ListaVacia: El hijo no presenta relaciones al salir del servicio"); log.DebugFormat("La salida de la funcion {0} es {1}", System.Reflection.MethodBase.GetCurrentMethod().Name, madrePresaOFallecida); return(madrePresaOFallecida); } } else { madrePresaOFallecida = false; log.Debug("ListaRelVacia: El hijo no presenta relaciones al salir del servicio"); log.DebugFormat("La salida de la funcion {0} es {1}", System.Reflection.MethodBase.GetCurrentMethod().Name, madrePresaOFallecida); return(madrePresaOFallecida); } /* * Activos_ServiciosComplementariosWs.Activos_ServiciosComplementariosWs srv1 = new Activos_ServiciosComplementariosWs.Activos_ServiciosComplementariosWs(); * Activos_ServiciosComplementariosWs.DatosDeConsultaCondenadoProcesado[] datos = srv1.ConsultaCondenadoProcesado(decimal.Parse(cuilDeLaMadre.ToString())); * * if (datos.Any()) * { * madrePresaOFallecida = true; * madrePresa = true; * } */ if (cuilDeLaMadre != 0) { log.Debug("Voy a buscar los datos de la madre en ADP"); DatosdePersonaporCuip.DatosdePersonaporCuip srv2 = new DatosdePersonaporCuip.DatosdePersonaporCuip(); DatosdePersonaporCuip.RetornoDatosPersonaCuip adp = srv2.ObtenerPersonaxCUIP(cuilDeLaMadre.ToString()); if (adp.PersonaCuip != null) { log.Debug("La madre esta en adp"); if (adp.PersonaCuip.f_falle > DateTime.MinValue) { madrePresaOFallecida = true; log.Debug("La madre fallecio"); madreFallecida = true; } } else { log.Debug("La madre no esta en adp"); madrePresaOFallecida = false; } } else { log.Debug("La madre no pudo ser encontrada en las relaciones del hijo"); madrePresaOFallecida = false; } } log.DebugFormat("La salida de la funcion {0} es {1}", System.Reflection.MethodBase.GetCurrentMethod().Name, madrePresaOFallecida); return(madrePresaOFallecida); } catch (Exception err) { throw err; } }