1 namespace Controlador {
4 using Dominio.Afiliados;
11 using System.Collections;
13 public class AfiliadoSolicitanteController : Controller
15 private ArrayList _afiliados;
16 private ArrayList _solicitantes;
18 public AfiliadoSolicitanteController ():base()
23 public ArrayList ObtenerSolicitantesAfiliar ()
25 Query query = Db.query();
26 query.constrain(typeof(Solicitante));
27 query.descend("_promotor").constrain(null);
28 query.descend("_pendiente").constrain(false);
29 query.descend("_titular").constrain(null);
31 ObjectSet result = query.execute();
32 ArrayList lst = ObjectSetToArrayList (result);
37 public ArrayList ObtenerFamiliaresAfiliar (Solicitante s)
39 Query query = Db.query();
40 query.constrain(typeof(Solicitante));
41 query.descend("_promotor").constrain(null);
42 query.descend("_pendiente").constrain(false);
43 query.descend("_titular").constrain(s);
45 ObjectSet result = query.execute();
46 ArrayList lst = ObjectSetToArrayList (result);
51 public Afiliado ExisteAfiliado (ETipoDocumento tipoDoc, int nroDoc)
53 Afiliado afil = new Afiliado (tipoDoc, nroDoc);
54 ObjectSet result = Db.get (afil);
55 afil = (Afiliado)result.next ();
60 public Afiliado ExisteAfiliado (int codigo)
62 Afiliado afil = new Afiliado (ETipoDocumento.NONE, 0);
64 ObjectSet result = Db.get (afil);
65 afil = (Afiliado)result.next ();
70 public ArrayList ObtenerFamiliares (ETipoDocumento tipoDoc, int nroDoc)
72 ArrayList salida = new ArrayList ();
73 /* Afiliado a = GETAFILIADO(tipoDoc, nroDoc
74 * foreach(Solicitante s in _solicitantes)
81 public Afiliado AfiliarTitular (ETipoDocumento tipoDoc, int nroDoc, Plan plan)
83 /* Obtengo el Solicitante asi luego lo borro */
84 Solicitante s = new Solicitante (tipoDoc, nroDoc, null, null);
87 ArrayList a = GetSolicitantes (s);
88 s = (Solicitante)a[0];
91 Console.WriteLine ("ERROR");
93 /* Creo el afiliado */
94 Afiliado afil = new Afiliado (s, plan, DateTime.Now);
95 AutoIncrementable i = new AutoIncrementable ();
96 afil.Codigo = i.NextAfiliado ();
99 /* Agrego el afiliado */
101 /* Saco el solicitante */
107 public Afiliado AfiliarFamiliar (Afiliado AfiTi, ETipoDocumento tipoDoc, int nroDoc, Plan plan)
109 /* Obtengo el Solicitante asi luego lo borro */
110 Solicitante s = new Solicitante (tipoDoc, nroDoc, null, null);
113 ArrayList a = GetSolicitantes (s);
114 s = (Solicitante)a[0];
117 Console.WriteLine ("ERROR");
119 /* Creo el afiliado */
120 Afiliado afil = new Afiliado (s, plan, DateTime.Now);
121 afil.Titular = AfiTi;
122 AutoIncrementable i = new AutoIncrementable ();
123 afil.Codigo = i.NextAfiliado ();
126 /* Agrego el afiliado */
128 /* Saco el solicitante */
133 public ArrayList Buscar (ETipoDocumento tipoDoc, int nroDoc)
135 ArrayList salida = new ArrayList ();
140 public void EstablecerPendiente() {}
141 public void Visitado () {}
142 public void EliminarSolicitante () {}
144 public bool ExisteSolicitante (ETipoDocumento tipoDoc, int nroDoc)
146 Solicitante c = new Solicitante (tipoDoc, nroDoc, null, null);
150 //do something with Db4o
151 ObjectSet result = Db.get(c);
152 if (result.next() != null)
155 catch (Exception e) {
156 Console.WriteLine (e);
161 public void AgregarSolicitante (
162 ETipoDocumento tipoDoc, int nroDoc, string nombre, string apellido, string email,
163 DateTime fechaNac, string calle, int numero, int piso, string dpto, string telefono,
164 ESexo sexo, string disponibilidad, int cantidadfamiliares, string observaciones
167 Solicitante s = new Solicitante (tipoDoc, nroDoc, nombre, apellido);
169 s.FechaNacimiento = fechaNac;
171 s.Disponibilidad = disponibilidad;
172 s.Familiares = cantidadfamiliares;
173 s.Observaciones = observaciones;
178 SDireccion d = new SDireccion ();
182 d.Departamento = dpto;
184 d.Provincia = EProvincia.RIO_NEGRO;
185 d.Telefono = telefono;
192 public void EliminarAfiliado () {}
193 public void ModificarAfiliado () {}
195 private bool SaveAfiliado (Afiliado a)
201 public bool SaveSolicitante (Solicitante s)
204 //do something with db4o
207 catch (Exception e) {
208 Console.WriteLine (e);
213 public Solicitante GetSolicitante (ETipoDocumento tipoDoc, int nroDoc)
215 Solicitante s = new Solicitante (tipoDoc, nroDoc, null, null);
217 ArrayList lst = GetSolicitantes (s);
222 return (Solicitante)lst[0];
225 public ArrayList GetSolicitantes (Solicitante s)
227 ArrayList lst = new ArrayList ();
229 ObjectSet result = Db.get(s);
233 while ((s = (Solicitante)result.next ()) != null) {
237 catch (Exception e) {
238 Console.WriteLine (e);
243 public void AsociarPromotor (ETipoDocumento tipoDoc, int nroDoc, int promotor)
246 Solicitante s = GetSolicitante (tipoDoc, nroDoc);
248 Promotor p = new Promotor (ETipoDocumento.DNI, 12345678, "123", "123");
253 catch (Exception e) {
254 Console.WriteLine (e);
258 public ArrayList BuscarAfiliados (ETipoDocumento tipoDoc, int nroDoc, int codigo, string apellido)
260 Afiliado a = new Afiliado (codigo);
261 a.TipoDocumento = tipoDoc;
262 a.NroDocumento = nroDoc;
263 a.Apellido = apellido;
265 Query query = Db.query();
266 query.constrain(typeof(Afiliado));
268 query.descend("_codigo").constrain(codigo);
269 if (tipoDoc != ETipoDocumento.NONE)
270 query.descend("_tipoDocumento").constrain(tipoDoc);
272 query.descend("_nroDocumento").constrain(nroDoc);
273 if (apellido != null)
274 query.descend("_apellido").constrain(apellido);
276 ObjectSet result = query.execute ();
277 return ObjectSetToArrayList (result);