]> git.llucax.com Git - z.facultad/75.10/miklolife.git/blob - demo/src/Dominio/Afiliado.cs
* Copio la direccion cuando creo un Afiliado en base a un Solicitante
[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                         }
51
52                         public Afiliado (ETipoDocumento tipoDoc, int nroDoc):base(tipoDoc, nroDoc, null)
53                         {
54                         }
55
56                         public Afiliado (int codigo)
57                         {
58                                 _codigo = codigo;
59                         }
60
61                         public Afiliado (Solicitante sol, Plan plan, DateTime afiliacion) 
62                                 : base (sol.TipoDocumento, sol.NroDocumento, sol.Nombre)
63                         {
64                                 Apellido = sol.Apellido;
65                                 EMail = sol.EMail;
66                                 FechaNacimiento = sol.FechaNacimiento;
67                                 Sexo = sol.Sexo;
68                                 _fechaAfiliacion = afiliacion;
69                                 _moroso = 0;
70                                 /* TODO : Asignar el codigo que corresponda */
71                                 _codigo = 0;
72                                 _plan = plan;
73                                 Direccion = sol.Direccion;      
74                         }
75                         
76                         public int ObtenerCantidadDePrestacionesRealizadas (int codPrestacion)
77                         {
78                                 return 0;
79                         }
80
81                         //Devuelve porcentaje de cobertura.
82                         //En teoria lanza exepcion si se rechaza, y dentro de la expecione estaria motivo
83                         //de rechazo, y se lanzaria otro tipo de excepcion para errores de otro tipo i.e: codigos
84                         
85                         public float VerificarCobertura (string codPrestacion)  
86                         //Lanza VerificarCoberturaException o AutorizacionRechazadaException
87                         {
88                                 
89                                 return 0;
90                         }
91
92                 }
93
94         }
95 }