query.descend("_pendiente").constrain(false);
query.descend("_titular").constrain(s);
- Console.WriteLine (query);
ObjectSet result = query.execute();
- Console.WriteLine (result);
ArrayList lst = ObjectSetToArrayList (result);
return lst;
}
- public bool ExisteAfiliado (ETipoDocumento tipoDoc, int nroDoc)
+ public Afiliado ExisteAfiliado (ETipoDocumento tipoDoc, int nroDoc)
{
- foreach (Afiliado afil in _afiliados) {
- if ((afil.TipoDocumento == tipoDoc) && (afil.NroDocumento == nroDoc))
- return true;
- }
- return false;
+ Afiliado afil = new Afiliado (tipoDoc, nroDoc);
+ ObjectSet result = Db.get (afil);
+ afil = (Afiliado)result.next ();
+
+ return afil;
}
- public bool ExisteAfiliado (int codigo)
+ public Afiliado ExisteAfiliado (int codigo)
{
- foreach (Afiliado afil in _afiliados) {
- if (afil.Codigo == codigo)
- return true;
- }
- return false;
+ Afiliado afil = new Afiliado (ETipoDocumento.NONE, 0);
+ afil.Codigo = codigo;
+ ObjectSet result = Db.get (afil);
+ afil = (Afiliado)result.next ();
+
+ return afil;
}
public ArrayList ObtenerFamiliares (ETipoDocumento tipoDoc, int nroDoc)
**/
return salida;
}
+
+ public Afiliado AfiliarTitular (ETipoDocumento tipoDoc, int nroDoc, int codplan)
+ {
+ /* 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");
+
+ Plan c = new Plan ();
+ c.Codigo = codplan;
+ ObjectSet r = Db.get (c);
+ Plan plan = r.next () as Plan;
+
+ /* Creo el afiliado */
+ Afiliado afil = new Afiliado (s, plan, DateTime.Now);
+ AutoIncrementable i = new AutoIncrementable ();
+ afil.Codigo = i.NextAfiliado ();
+ i.Dispose ();
+
+ /* Agrego el afiliado */
+ Db.set (afil);
+ /* Saco el solicitante */
+ Db.delete (s);
+ return afil;
+ }
+
- public bool afiliarTitular (ETipoDocumento tipoDoc, int nroDo, Plan plan)
+ public Afiliado AfiliarFamiliar (Afiliado AfiTi, ETipoDocumento tipoDoc, int nroDoc, Plan plan)
{
- try {
- //do something with db4o
- }
- catch (Exception e){}
- return true;
+ /* 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;
+ AutoIncrementable i = new AutoIncrementable ();
+ afil.Codigo = i.NextAfiliado ();
+ i.Dispose ();
+
+ /* Agrego el afiliado */
+ Db.set (afil);
+ /* Saco el solicitante */
+ Db.delete (s);
+ return afil;
}
public ArrayList Buscar (ETipoDocumento tipoDoc, int nroDoc)
}
}
+ public ArrayList BuscarAfiliados (ETipoDocumento tipoDoc, int nroDoc, int codigo, string apellido)
+ {
+ Afiliado a = new Afiliado (codigo);
+ a.TipoDocumento = tipoDoc;
+ a.NroDocumento = nroDoc;
+ a.Apellido = apellido;
+
+ Query query = Db.query();
+ query.constrain(typeof(Afiliado));
+ if (codigo != 0)
+ query.descend("_codigo").constrain(codigo);
+ if (tipoDoc != ETipoDocumento.NONE)
+ query.descend("_tipoDocumento").constrain(tipoDoc);
+ if (nroDoc != 0)
+ query.descend("_nroDocumento").constrain(nroDoc);
+ if (apellido != null)
+ query.descend("_apellido").constrain(apellido);
+
+ ObjectSet result = query.execute ();
+ return ObjectSetToArrayList (result);
+ }
+
}
}