namespace Dominio {
-namespace Afiliados {
+ namespace Afiliados {
-using System;
-using System.Collections;
-using Dominio.Planes;
-using Excepciones;
+ using System;
+ using System.Collections;
+ using Dominio.Planes;
+ using Excepciones;
-public class Afiliado : Persona
-{
- private DateTime _fechaAfiliacion;
- private int _codigo;
- private DateTime _fechaBaja = DateTime.MinValue;
- private int _moroso;
- private Afiliado _titular;
- private Plan _plan;
- private ArrayList _historialPlanes;
- private ArrayList _Autorizaciones;
+ public class Afiliado : Persona
+ {
+ private DateTime _fechaAfiliacion;
+ private int _codigo = int.MinValue;
+ private DateTime _fechaBaja = DateTime.MinValue;
+ private int _moroso;
+ private Afiliado _titular;
+ private Plan _plan;
+ private ArrayList _historialPlanes;
+ private ArrayList _Autorizaciones;
- public DateTime FechaAfiliacion {
- get { return _fechaAfiliacion; }
- }
- public int Codigo {
- get { return _codigo; }
- }
- public DateTime FechaBaja {
- get { return _fechaBaja; }
- }
- public int Moroso {
- get { return _moroso; }
- set { _moroso = value; }
- }
- public Afiliado Titular {
- get { return _titular; }
- set { _titular = value; }
- }
- public Plan PlanActual {
- get { return _plan; }
- }
+ public DateTime FechaAfiliacion
+ {
+ get { return _fechaAfiliacion; }
+ }
- public Afiliado (ETipoDocumento tipoDoc, int nroDoc):base(tipoDoc, nroDoc, null)
- {
- }
- public Afiliado (int codigo)
- {
- this._codigo=codigo;
- }
- public Afiliado (Solicitante sol, Plan plan, DateTime afiliacion):base (sol.TipoDocumento, sol.NroDocumento, sol.Nombre)
- {
- Apellido = sol.Apellido;
- EMail = sol.EMail;
- FechaNacimiento = sol.FechaNacimiento;
- Sexo = sol.Sexo;
- _fechaAfiliacion = afiliacion;
- _moroso = 0;
- /* TODO : Asignar el codigo que corresponda */
- _codigo = 0;
- _plan = plan;
- }
-
- public int ObtenerCantidadDePrestacionesRealizadas (int codPrestacion)
- {
- return 0;
- }
+ public int Codigo
+ {
+ get { return _codigo; }
+ set { _codigo = value; }
+ }
- //Devuelve porcentaje de cobertura.
- //En teoria lanza exepcion si se rechaza, y dentro de la expecione estaria motivo
- //de rechazo, y se lanzaria otro tipo de excepcion para errores de otro tipo i.e: codigos
-
- public float VerificarCobertura (string codPrestacion)
- //Lanza VerificarCoberturaException o AutorizacionRechazadaException
- {
-
- return 0;
- }
+ public DateTime FechaBaja
+ {
+ get { return _fechaBaja; }
+ }
-}
+ public int Moroso
+ {
+ get { return _moroso; }
+ set { _moroso = value; }
+ }
-}
+ public Afiliado Titular
+ {
+ get { return _titular; }
+ set { _titular = value; }
+ }
+
+ public Plan PlanActual {
+ get { return _plan; }
+ set { _plan = value; }
+ }
+
+ public Afiliado (ETipoDocumento tipoDoc, int nroDoc):base(tipoDoc, nroDoc, null)
+ {
+ }
+
+ public Afiliado (int codigo)
+ {
+ _codigo = codigo;
+ }
+
+ public Afiliado (Solicitante sol, Plan plan, DateTime afiliacion)
+ : base (sol.TipoDocumento, sol.NroDocumento, sol.Nombre)
+ {
+ Apellido = sol.Apellido;
+ EMail = sol.EMail;
+ FechaNacimiento = sol.FechaNacimiento;
+ Sexo = sol.Sexo;
+ _fechaAfiliacion = afiliacion;
+ _moroso = 0;
+ /* TODO : Asignar el codigo que corresponda */
+ _codigo = 0;
+ _plan = plan;
+ Direccion = sol.Direccion;
+ }
+
+ public int ObtenerCantidadDePrestacionesRealizadas (int codPrestacion)
+ {
+ return 0;
+ }
+
+ //Devuelve porcentaje de cobertura.
+ //En teoria lanza exepcion si se rechaza, y dentro de la expecione estaria motivo
+ //de rechazo, y se lanzaria otro tipo de excepcion para errores de otro tipo i.e: codigos
+
+ public float VerificarCobertura (string codPrestacion)
+ //Lanza VerificarCoberturaException o AutorizacionRechazadaException
+ {
+
+ return 0;
+ }
+
+ }
+
+ }
}