From: Ricardo Markiewicz Date: Wed, 6 Jul 2005 23:10:02 +0000 (+0000) Subject: * Buscar Afiliado y Buscar Prestaciones integrados en la ventana de pedido X-Git-Tag: svn_import~30 X-Git-Url: https://git.llucax.com/z.facultad/75.10/miklolife.git/commitdiff_plain/8b7129f1d37e6c979d08f4b67d6581f0de055269?ds=inline * Buscar Afiliado y Buscar Prestaciones integrados en la ventana de pedido de autorizacion manual --- diff --git a/demo/glade/buscar_afiliado.glade b/demo/glade/buscar_afiliado.glade index 8c2f7db..2880856 100644 --- a/demo/glade/buscar_afiliado.glade +++ b/demo/glade/buscar_afiliado.glade @@ -4,6 +4,8 @@ + 400 + 500 True Buscar Afiliado GTK_WINDOW_TOPLEVEL @@ -18,6 +20,7 @@ GDK_GRAVITY_NORTH_WEST True True + @@ -40,7 +43,6 @@ GTK_RELIEF_NORMAL True -7 - @@ -49,7 +51,7 @@ True True True - Select + Seleccionar True GTK_RELIEF_NORMAL True @@ -370,7 +372,6 @@ LC False False False - diff --git a/demo/glade/pedido_autorizacion_manual.glade b/demo/glade/pedido_autorizacion_manual.glade index ca0ec4b..53569b4 100644 --- a/demo/glade/pedido_autorizacion_manual.glade +++ b/demo/glade/pedido_autorizacion_manual.glade @@ -285,6 +285,7 @@ True GTK_RELIEF_NORMAL True + 2 @@ -323,6 +324,7 @@ True GTK_RELIEF_NORMAL True + 2 diff --git a/demo/src/Vistas/BuscarAfiliado.cs b/demo/src/Vistas/BuscarAfiliado.cs new file mode 100644 index 0000000..ac0d86c --- /dev/null +++ b/demo/src/Vistas/BuscarAfiliado.cs @@ -0,0 +1,107 @@ + +using System; +using System.Collections; +using Gtk; +using Glade; + +using Controlador.Afiliacion; +using Dominio.Autorizaciones; +using Dominio.Planes; +using Dominio.Afiliados; +using Dominio; + +public class VBuscarAfiliado +{ + Glade.XML xml; + string retorno = null; + + + [Widget] TreeView lista; + + /* Busqueda */ + [Widget] ComboBox s_tipoDocumento; + [Widget] Entry s_nroDocument; + [Widget] Entry s_apellido; + [Widget] Entry s_codigo; + + public VBuscarAfiliado () + { + xml = new Glade.XML (null, "buscar_afiliado.glade", "buscar_afiliado", null); + xml.Autoconnect (this); + + lista.Model = new ListStore (typeof(int), typeof(string), typeof(int), typeof (string), typeof(string)); + + /* Columnas */ + lista.HeadersVisible = true; + lista.AppendColumn ("Codigo", new CellRendererText (), "text", 0); + lista.AppendColumn ("Tipo Doc.", new CellRendererText (), "text", 1); + lista.AppendColumn ("NĂºmero Doc.", new CellRendererText (), "text", 2); + lista.AppendColumn ("Nombre", new CellRendererText (), "text", 3); + lista.AppendColumn ("Apellido", new CellRendererText (), "text", 4); + } + + public void OnBuscarAfiliado (object o, EventArgs args) + { + ETipoDocumento tipoDoc; + try { + TreeIter iter; + s_tipoDocumento.GetActiveIter (out iter); + tipoDoc = (ETipoDocumento)Enum.Parse (typeof (ETipoDocumento), (string)s_tipoDocumento.Model.GetValue (iter, 0), true); + } catch (Exception e) { + tipoDoc = ETipoDocumento.NONE; + } + int nroDoc; + try { + nroDoc = Int32.Parse (s_nroDocument.Text); + } catch (Exception e) { + nroDoc = 0; + } + int cod; + try { + cod = Int32.Parse (s_codigo.Text); + } catch (Exception e) { + cod = 0; + } + + AfiliadoSolicitanteController c = new AfiliadoSolicitanteController (); + ListStore store = (ListStore)lista.Model; + store.Clear (); + ArrayList lst = c.BuscarAfiliados (tipoDoc, nroDoc, cod, null); + foreach (Afiliado p in lst) { + TreeIter i = store.Append (); + store.SetValue (i, 0, p.Codigo); + store.SetValue (i, 1, p.TipoDocumento.ToString ()); + store.SetValue (i, 2, p.NroDocumento); + store.SetValue (i, 3, p.Nombre); + store.SetValue (i, 4, p.Apellido); + } + + c.Dispose (); + } + + public void OnDialogResponse (object o, ResponseArgs args) + { + if (args.ResponseId == ResponseType.Cancel) + return; + + /* Todo el seleccionado. TODO : abortar si no hay nada seleccionado! :) */ + + TreeSelection fromSel = lista.Selection; + TreeIter iter; + TreeModel model; + + if (fromSel.GetSelected (out model, out iter)) { + retorno = String.Format ("{0}", (int)model.GetValue (iter, 0)); + } + } + + public string Run () + { + Dialog w = (Dialog)xml.GetWidget ("buscar_afiliado"); + w.Run (); + w.Destroy (); + + return retorno; + } +} + diff --git a/demo/src/Vistas/PedidoAutorizacionManual.cs b/demo/src/Vistas/PedidoAutorizacionManual.cs index c53395c..2eacfc5 100644 --- a/demo/src/Vistas/PedidoAutorizacionManual.cs +++ b/demo/src/Vistas/PedidoAutorizacionManual.cs @@ -47,6 +47,22 @@ public class VPedidoAutorizacionManual } } + public void OnBuscarAfiliado (object o, EventArgs args) + { + VBuscarAfiliado v = new VBuscarAfiliado (); + string r = v.Run (); + if (r != null) + afiliado.Text = r; + } + + public void OnBuscarPrestacion (object o, EventArgs args) + { + VBuscarPrestacion v = new VBuscarPrestacion (); + string r = v.Run (); + if (r != null) + prestacion.Text = r; + } + public void OnResponse (object o, ResponseArgs args) { if (args.ResponseId == ResponseType.Cancel)