]> git.llucax.com Git - z.facultad/75.10/miklolife.git/blob - demo/src/Main.cs
Inicializo con los datos para que lo de guille ande, creo que esta todo, hay 1 caso...
[z.facultad/75.10/miklolife.git] / demo / src / Main.cs
1
2 using System;
3 using System.Collections;
4 using Gtk;
5 using Glade;
6 using Dominio.Afiliados;
7 using Dominio.Planes;
8 using Dominio.Autorizaciones;
9 using com.db4o;
10 using com.db4o.query;
11
12 public class App
13 {
14         Dialog wConsultarAfiliado;
15         ArrayList lst;
16         Glade.XML xmla;
17         [Widget] Image logo;
18
19         #region Tests
20
21         private static void EjecutarTests()
22         {
23                 Tests.TestsAutorizacion.Instancia.EjecutarTodos();
24                 
25                 Console.Read();
26         /*      
27                 Controlador.RecibirPrestacionesController rpc = new Controlador.RecibirPrestacionesController();
28                 using ( rpc )
29                 {
30                         rpc.InsertarDatosNecesarios(); 
31
32                         rpc.procesarInfoRecibida();
33                 }
34 */
35                 //Acá pueden agregar más, si quieren
36         }
37
38         #endregion Tests
39
40         #region Entry Point
41
42         static public void Main (string[] args)
43         {
44                 if ( args.Length > 0) {
45                         if (args[0].Equals ("--test")) {
46                                 EjecutarTests();
47                                 return;
48                         }
49                         Console.WriteLine ("Parametro no válido");
50                         return;
51                 }
52                 new App ();
53         }
54
55         #endregion Entry Point
56
57         Glade.XML gxml;
58         public App ()
59         {
60                 Application.Init();
61
62                 gxml = new Glade.XML (null, "main.glade", "main", null);
63                 gxml.Autoconnect (this);
64
65                 #warning Descomentar para inicializar la base de datos con algunos valores de prueba !
66                 logo.FromFile = "logo.png";
67                 InitDemo ();
68                 Application.Run();
69         }
70         
71         private void InitDemo ()
72         {
73                 /* Algunas categorias */
74                 Categoria c1 = new Categoria ();
75                 c1.Codigo = 1;
76                 c1.Nombre = "Odontologia";
77
78                 Categoria c2 = new Categoria ();
79                 c2.Codigo = 2;
80                 c2.Nombre = "Traumatologia";
81
82                 Prestacion p1 = new Prestacion ();
83                 p1.Codigo = "30303";
84                 p1.Nombre = "Extracion Muelas de Juicio";
85                 p1.Categoria = c1;
86
87                 Prestacion p2 = new Prestacion ();
88                 p2.Codigo = "30101";
89                 p2.Nombre = "Aplique de Fluor";
90                 p2.Categoria = c1;
91
92                 Prestacion p3 = new Prestacion ();
93                 p3.Codigo = "661095";
94                 p3.Nombre = "Yeso parcial";
95                 p3.Categoria = c2;
96
97                 Prestacion p4 = new Prestacion ();
98                 p4.Codigo = "201011";
99                 p4.Nombre = "Aplique clavos fractura multiple";
100                 p4.Categoria = c2;
101
102                 Plan plan = new Plan (1.0f);
103                 plan.Descripcion = "Plan Basico";
104                 plan.PermanenciaMinima = 2;
105                 plan.Codigo = 99;
106
107                 Cobertura cob = new Cobertura (p1, 1.0f, 15.0f);
108                 plan.AgregarCobertura (cob);
109
110                 /* Inicio afiliados */
111                 Afiliado afil = new Afiliado (987);
112                 afil.TipoDocumento = ETipoDocumento.DNI;
113                 afil.NroDocumento = 27000193;
114                 afil.PlanActual = plan;
115
116                 Afiliado afil2 = new Afiliado (666);
117                 afil.TipoDocumento = ETipoDocumento.DNI;
118                 afil.NroDocumento = 27000193;
119                 afil.PlanActual = plan;
120                 /* Inicio prestadores */
121                 Prestador prestador = new Prestador ("30-12345678-1");
122                 prestador.Nombre = "DePrueba";
123                 prestador.Email = "DePrueba@mail.com";
124
125                 p1.AgregarPrestador (prestador);
126                 p2.AgregarPrestador (prestador);
127                 p3.AgregarPrestador (prestador);
128                 p4.AgregarPrestador (prestador);
129
130                 /* Autorizaciones */
131                 AutorizacionManual auth1 = new AutorizacionManual (new DateTime(2005, 7, 1));
132                 auth1.FechaVencimiento = auth1.FechaSolicitud.AddDays (60);
133                 auth1.FechaResolucion = auth1.FechaSolicitud.AddDays (1);
134                 auth1.PorcentajeCobertura = 12.5f;
135                 auth1.Prestador = prestador;
136                 auth1.Prestacion = p1;
137                 auth1.Afiliado = afil;
138                 auth1.Aprobada = true;
139                 auth1.Codigo = 88;
140
141                 /* Autorizaciones */
142                 AutorizacionManual auth2 = new AutorizacionManual (new DateTime(2005, 5, 1));
143                 auth2.FechaVencimiento = auth2.FechaSolicitud.AddDays (60);
144                 auth1.FechaResolucion = auth2.FechaSolicitud.AddDays (1);
145                 auth2.Aprobada = true;
146                 auth2.PorcentajeCobertura = 90.0f;
147                 auth2.Prestador = prestador;
148                 auth2.Prestacion = p3;
149                 auth2.Afiliado = afil2;
150                 auth2.Codigo = 112; 
151
152                 AutorizacionAutomatica auth3 = new AutorizacionAutomatica(new DateTime (2005, 6, 28));
153                 auth3.FechaVencimiento = auth3.FechaSolicitud.AddDays (60);
154                 auth3.Aprobada = true;
155                 auth3.PorcentajeCobertura = 12.5f;
156                 auth3.Prestador = prestador;
157                 auth3.Prestacion = p1;
158                 auth3.Afiliado = afil;
159                 auth3.Codigo = 112; 
160
161                 AutorizacionAutomatica auth4 = new AutorizacionAutomatica(new DateTime (2005, 6, 28));
162                 auth4.FechaVencimiento = auth4.FechaSolicitud.AddDays (60);
163                 auth4.Aprobada = true;
164                 auth4.PorcentajeCobertura = 20.0f;
165                 auth4.Prestador = prestador;
166                 auth4.Prestacion = p2;
167                 auth4.Afiliado = afil;
168                 auth4.Codigo = 112; 
169
170                 ObjectContainer db;
171                 db = Db4o.openFile("os.yap");
172                 db.set (auth1);
173                 db.set (auth2);
174                 db.set (auth3);
175                 db.set (auth4);
176                 db.set (p1);
177                 db.set (p2);
178                 db.set (p3);
179                 db.set (p4);
180                 db.set (afil);
181                 db.set (afil2);
182                 db.close ();
183         }
184
185         public void OnSalirActivate (object o, EventArgs args)
186         {
187                 Application.Quit ();
188         }
189         
190         public void OnDeleteEvent(object o, DeleteEventArgs args)
191         {
192                 Application.Quit ();
193         }
194
195         public void OnIngresarSolicitud(object o, EventArgs args)
196         {
197                 VIngresarSolicitud v = new VIngresarSolicitud ();
198                 v.Run ();
199         }
200
201         public void OnEmitirHojaDeRuta (object o, EventArgs args)
202         {
203                 VEmitirHojaDeRuta v = new VEmitirHojaDeRuta ();
204                 v.Run ();
205         }
206
207         public void OnAgregarAfiliado (object o, EventArgs args)
208         {
209                 VAgregarAfiliado v = new VAgregarAfiliado ();
210                 v.Run ();
211         }
212
213         public void OnMantenerPlanes (object o, EventArgs args)
214         {
215                 VMantenerPlanes v = new VMantenerPlanes ();
216                 v.Run ();
217         }
218
219         public void OnMantenerPrestaciones (object o, EventArgs args)
220         {
221                 VMantenerPrestaciones v = new VMantenerPrestaciones ();
222                 v.Run ();
223         }
224
225         public void OnMantenerPrestadores (object o, EventArgs args)
226         {
227                 VMantenerPrestadores v = new VMantenerPrestadores ();
228                 v.Run ();
229         }
230
231         public void OnRegistrarVisitas (object o, EventArgs args)
232         {
233                 VRegistrarVisitas v = new VRegistrarVisitas ();
234                 v.Run ();
235         }
236
237         public void OnPedidoAutorizacionManual (object o, EventArgs args)
238         {
239                 VPedidoAutorizacionManual v = new VPedidoAutorizacionManual ();
240                 v.Run ();
241         }
242
243         public void OnActualizarAutorizaciones (object o, EventArgs args)
244         {
245                 VRevisarAutorizacionManual v = new VRevisarAutorizacionManual ();
246                 v.Run ();
247         }
248
249         public void OnConsultarAfiliado (object o, EventArgs args)
250         {
251                 VConsultarAfiliado v = new VConsultarAfiliado ();
252                 v.Run ();
253         }
254
255         public void OnConsultarAutorizaciones (object o, EventArgs args)
256         {
257                 VConsultarAutorizaciones v = new VConsultarAutorizaciones ();
258                 v.Run ();
259         }
260
261         public void OnPedidoAutorizacionAutomatica (object o, EventArgs args)
262         {
263         }
264
265         ProgressBar progreso;
266
267         public void OnProcesarInformes (object o, EventArgs args)
268         {
269                 /* Recibir y Cotejar */
270                 Dialog dialog = new Dialog ("Espere por favor ...", (Window)gxml.GetWidget ("main"), Gtk.DialogFlags.DestroyWithParent);
271                 dialog.Modal = true;
272
273                 progreso = new ProgressBar ();
274                 dialog.VBox.PackStart (new Label ("Procesando ..."), false, false, 12);
275                 dialog.VBox.PackStart (progreso, false, false, 12);
276                 dialog.ShowAll ();
277                 Controlador.RecibirPrestacionesController rpc = new Controlador.RecibirPrestacionesController();
278                 using ( rpc )
279                 {
280                         //rpc.InsertarDatosNecesarios(); 
281                         rpc.procesarInfoRecibida(this);
282                 }
283                 dialog.Destroy ();
284
285                 MessageDialog md = new MessageDialog ((Window)gxml.GetWidget ("main"), 
286                         DialogFlags.DestroyWithParent,
287                         MessageType.Info, 
288                         ButtonsType.Close, "El proceso terminó satisfactoriamente.");
289
290                 int result = md.Run ();
291                 md.Destroy();
292                          
293         }
294
295         public void UpdateIdle ()
296         {
297                 progreso.Pulse ();
298                 while (Gtk.Global.EventsPending)
299                         Gtk.Main.IterationDo (false);
300         }       
301 }
302