]> git.llucax.com Git - z.facultad/75.10/miklolife.git/blob - demo/src/Dominio/Afiliado.cs
Inicializo con los datos para que lo de guille ande, creo que esta todo, hay 1 caso...
[z.facultad/75.10/miklolife.git] / demo / src / Dominio / Afiliado.cs
1 namespace Dominio {
2         namespace Afiliados {
3
4                 using System;
5                 using System.Collections;
6                 using Dominio.Planes;
7                 using Excepciones;
8
9                 public class Afiliado : Persona 
10                 {
11                         private DateTime _fechaAfiliacion;
12                         private int _codigo = int.MinValue;
13                         private DateTime _fechaBaja = DateTime.MinValue;
14                         private int _moroso;
15                         private Afiliado _titular;
16                         private Plan _plan;
17                         private ArrayList _historialPlanes;
18                         private ArrayList _Autorizaciones;
19
20                         public DateTime FechaAfiliacion 
21                         {
22                                 get { return _fechaAfiliacion; }
23                         }
24
25                         public int Codigo 
26                         {
27                                 get { return _codigo; }
28                                 set { _codigo = value; }
29                         }
30
31                         public DateTime FechaBaja 
32                         {
33                                 get { return _fechaBaja; }
34                         }
35
36                         public int Moroso 
37                         {
38                                 get { return _moroso; }
39                                 set { _moroso = value; }
40                         }
41
42                         public Afiliado Titular 
43                         {
44                                 get { return _titular; }
45                                 set { _titular = value; }
46                         }
47
48                         public Plan PlanActual {
49                                 get { return _plan; }
50                                 set { _plan = value; }
51                         }
52
53                         public Afiliado (ETipoDocumento tipoDoc, int nroDoc):base(tipoDoc, nroDoc, null)
54                         {
55                         }
56
57                         public Afiliado (int codigo)
58                         {
59                                 _codigo = codigo;
60                         }
61
62                         public Afiliado (Solicitante sol, Plan plan, DateTime afiliacion) 
63                                 : base (sol.TipoDocumento, sol.NroDocumento, sol.Nombre)
64                         {
65                                 Apellido = sol.Apellido;
66                                 EMail = sol.EMail;
67                                 FechaNacimiento = sol.FechaNacimiento;
68                                 Sexo = sol.Sexo;
69                                 _fechaAfiliacion = afiliacion;
70                                 _moroso = 0;
71                                 /* TODO : Asignar el codigo que corresponda */
72                                 _codigo = 0;
73                                 _plan = plan;
74                                 Direccion = sol.Direccion;      
75                         }
76                         
77                         public int ObtenerCantidadDePrestacionesRealizadas (int codPrestacion)
78                         {
79                                 return 0;
80                         }
81
82                         //Devuelve porcentaje de cobertura.
83                         //En teoria lanza exepcion si se rechaza, y dentro de la expecione estaria motivo
84                         //de rechazo, y se lanzaria otro tipo de excepcion para errores de otro tipo i.e: codigos
85                         
86                         public float VerificarCobertura (string codPrestacion)  
87                         //Lanza VerificarCoberturaException o AutorizacionRechazadaException
88                         {
89                                 
90                                 return 0;
91                         }
92
93                 }
94
95         }
96 }