]> git.llucax.com Git - z.facultad/75.10/miklolife.git/blobdiff - demo/src/Dominio/Solicitante.cs
* Algunas cosas necesarias para dar de alta planes, como se buscar prestaciones.
[z.facultad/75.10/miklolife.git] / demo / src / Dominio / Solicitante.cs
index 98c0aced4995aec9f9a0eb820dea508f171933b6..f3dd4fc3a68f1d0c012a71646888a3a616830fb1 100644 (file)
@@ -1,6 +1,12 @@
 namespace Dominio {
 namespace Afiliados {
 
 namespace Dominio {
 namespace Afiliados {
 
+public enum ESolicitanteEstados {
+       PENDIENTE_VISITA,
+       LISTO_PARA_VISITAR,
+       LISTO_PARA_AFILIAR
+}
+
 
 public class Solicitante : Persona 
 {
 
 public class Solicitante : Persona 
 {
@@ -8,7 +14,7 @@ public class Solicitante : Persona
        private int _familiares;
        private string _observaciones;
        private bool _pendiente;
        private int _familiares;
        private string _observaciones;
        private bool _pendiente;
-       private Afiliado _titular;
+       private Persona _titular;
        private Promotor _promotor = null;
 
        public string Disponibilidad {
        private Promotor _promotor = null;
 
        public string Disponibilidad {
@@ -27,7 +33,7 @@ public class Solicitante : Persona
                get { return _pendiente; }
                set { _pendiente = value; }
        }
                get { return _pendiente; }
                set { _pendiente = value; }
        }
-       public Afiliado Titular {
+       public Persona Titular {
                get { return _titular; }
                set { _titular = value; }
        }
                get { return _titular; }
                set { _titular = value; }
        }
@@ -35,10 +41,20 @@ public class Solicitante : Persona
                get { return _promotor; }
                set { _promotor = value; }
        }
                get { return _promotor; }
                set { _promotor = value; }
        }
+       public ESolicitanteEstados Estado {
+               get {
+                       if ((_pendiente == true) && (_promotor == null))
+                               return ESolicitanteEstados.PENDIENTE_VISITA;
+                       if ((_pendiente == false) && (_promotor != null))
+                               return ESolicitanteEstados.LISTO_PARA_VISITAR;
+                       return ESolicitanteEstados.LISTO_PARA_AFILIAR;
+               }
+       }
 
        public Solicitante (ETipoDocumento tD, int nroD, string nombre, string apellido):base(tD,nroD,nombre)
        {
                Apellido = apellido;
 
        public Solicitante (ETipoDocumento tD, int nroD, string nombre, string apellido):base(tD,nroD,nombre)
        {
                Apellido = apellido;
+               _pendiente = true;
        }
 }
 
        }
 }