**/
return salida;
}
-
+
public Afiliado AfiliarTitular (ETipoDocumento tipoDoc, int nroDoc, Plan plan)
{
/* Obtengo el Solicitante asi luego lo borro */
return afil;
}
+
+ public Afiliado AfiliarFamiliar (Afiliado AfiTi, ETipoDocumento tipoDoc, int nroDoc, Plan plan)
+ {
+ /* Obtengo el Solicitante asi luego lo borro */
+ Solicitante s = new Solicitante (tipoDoc, nroDoc, null, null);
+ s.Pendiente = false;
+ s.Promotor = null;
+ ArrayList a = GetSolicitantes (s);
+ s = (Solicitante)a[0];
+
+ if (s == null)
+ Console.WriteLine ("ERROR");
+
+ /* Creo el afiliado */
+ Afiliado afil = new Afiliado (s, plan, DateTime.Now);
+ afil.Titular = AfiTi;
+
+ /* Agrego el afiliado */
+ Db.set (afil);
+ /* Saco el solicitante */
+ Db.delete (s);
+ return afil;
+ }
+
public ArrayList Buscar (ETipoDocumento tipoDoc, int nroDoc)
{
ArrayList salida = new ArrayList ();
TreeModel model;
TreeSelection sel = lista.Selection;
- TreePath[] rows = sel.GetSelectedRows (out model);
- if (rows != null) {
- model.GetIter (out iter, rows[0]);
+ if (sel.GetSelected(out model, out iter) == true) {
ETipoDocumento tipoDoc = (ETipoDocumento)Enum.Parse (typeof (ETipoDocumento), (string)model.GetValue (iter, 0), true);
int nroDoc = (int)model.GetValue (iter, 1);
- Console.WriteLine ("{0} {1}", tipoDoc, nroDoc);
-
AfiliadoSolicitanteController c = new AfiliadoSolicitanteController ();
Afiliado a = c.ExisteAfiliado (tipoDoc, nroDoc);
if (a == null) {
- Console.WriteLine ("Afiliando");
+ Afiliar (model, iter, c);
} else {
Console.WriteLine ("Lo borro o lo reactivo!");
}
}
}
- private void Afiliar (TreeModel model, TreePath path)
+ private void Afiliar (TreeModel model, TreeIter parent, AfiliadoSolicitanteController c)
{
+ ETipoDocumento tipoDoc = (ETipoDocumento)Enum.Parse (typeof (ETipoDocumento), (string)model.GetValue (parent, 0), true);
+ int nroDoc = (int)model.GetValue (parent, 1);
+
+ /* Afilio el titular */
+ Afiliado AfiTitular = c.AfiliarTitular (tipoDoc, nroDoc, null);
+ Console.WriteLine ("Titular afiliado!! {0} {1}", tipoDoc, nroDoc);
+
+ /* Obtengo el primer familiar, si es que existe */
+ TreeIter iter;
+ if (model.IterChildren (out iter, parent) == true) {
+ tipoDoc = (ETipoDocumento)Enum.Parse (typeof (ETipoDocumento), (string)model.GetValue (iter, 0), true);
+ nroDoc = (int)model.GetValue (iter, 1);
+
+ Console.WriteLine ("Titular familiar!! {0} {1}", tipoDoc, nroDoc);
+ while (model.IterNext (ref iter) == true) {
+ tipoDoc = (ETipoDocumento)Enum.Parse (typeof (ETipoDocumento), (string)model.GetValue (iter, 0), true);
+ nroDoc = (int)model.GetValue (iter, 1);
+
+ Console.WriteLine ("Titular familiar!! {0} {1}", tipoDoc, nroDoc);
+ c.AfiliarFamiliar (AfiTitular, tipoDoc, nroDoc, null);
+ }
+ }
}
public void Run ()