TreeModel model;
TreeSelection sel = lista.Selection;
- /* TODO :ASUMO QUE SELECCIONO EL TITULAR !!!
- * Despues lo fixeo ... Quiero que ande :D
- */
- if (sel.GetSelected (out model, out iter)) {
+
+ 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);
AfiliadoSolicitanteController c = new AfiliadoSolicitanteController ();
Afiliado a = c.ExisteAfiliado (tipoDoc, nroDoc);
+
if (a == null) {
- /* TODO : Seleccionar plan! */
- Afiliado titular = c.AfiliarTitular (tipoDoc, nroDoc, null);
+ Afiliar (model, iter, c);
} else {
Console.WriteLine ("Lo borro o lo reactivo!");
}
}
}
+ 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 ()
{
Dialog w = (Dialog)xml.GetWidget ("agregar_afiliado");