/// <summary> /// Toma al afiliado principal calcula la cantidad de familiares a cargo y luego procesa los afiliados /// restantes que esten asociados seteando el nro de Afiliado de manera incremental /// </summary> /// <param name="afiliados"></param> public void GuardarRegistroAfiliado(List <Usuario> afiliados) { try { if (afiliados != null) { var repo = new AfiliadoDao(); afiliados[0].CantidadFamiliaresACargo = afiliados.Count - 1; var nroAfiliado = afiliados[0].NroAfiliado; afiliados[0].NroAfiliado = Convert.ToInt64(nroAfiliado + "01"); repo.Add(afiliados[0]); afiliados.Remove(afiliados[0]); var i = 2; foreach (var afiliado in afiliados) { afiliado.NroAfiliado = Convert.ToInt64(nroAfiliado + "0" + i.ToString()); afiliado.CantidadFamiliaresACargo = 0; repo.Add(afiliado); i++; } } } catch (Exception e) { Console.WriteLine(e); } }
public void AfiliarFamiliar(Usuario afiliadoPrincipal, Usuario familiar) { var repo = new AfiliadoDao(); var ultimoAfiliado = this.ObtenerGrupoFamiliar(afiliadoPrincipal.NroDocumento).OrderByDescending(x => x.NroAfiliado).FirstOrDefault(); if (ultimoAfiliado != null) { familiar.NroAfiliado = ultimoAfiliado.NroAfiliado + 1; } afiliadoPrincipal.CantidadFamiliaresACargo = afiliadoPrincipal.CantidadFamiliaresACargo + 1; repo.Add(familiar); repo.Update(afiliadoPrincipal); }
public void Add(Afiliado vo) { _dao.Add(vo); }