private void buttonAction_Click(object sender, EventArgs e) { string nombre = this.textBoxNombre.Text; string apellido1 = this.textBoxApellido1.Text; string apellido2 = this.textBoxApellido2.Text; string codigo = this.textBoxCodigo.Text; string direccion = this.textBoxDireccion.Text; DateTime f = this.dtpFechaNacimiento.Value; Sexo s = (this.domainUpDownSexo.Text == @"Masculino") ? Sexo.Masculino : Sexo.Femenino; string n = textBoxNivel.Text; string aplicador = this.ap.User.Nombre; string lugar = this.cbLugar.Text; switch (this.op) { case Opciones.Buscar: #region Buscar this.listViewPacientes.Items.Clear(); var criterios = new List <Busqueda>(); if (this.checkBoxNombre.Checked) { var b = new Busqueda { campo = Criterios_Busqueda.nombre, valor = nombre }; criterios.Add(b); } if (this.checkBoxApellido1.Checked) { var b = new Busqueda { campo = Criterios_Busqueda.apellido1, valor = apellido1 }; criterios.Add(b); } if (this.checkBoxApellido2.Checked) { var b = new Busqueda { campo = Criterios_Busqueda.apellido2, valor = apellido2 }; criterios.Add(b); } if (this.checkBoxCodigo.Checked) { var b = new Busqueda { campo = Criterios_Busqueda.codigo, valor = codigo }; criterios.Add(b); } if (this.checkBoxSexo.Checked) { var b = new Busqueda { campo = Criterios_Busqueda.sexo, valor = (this.domainUpDownSexo.Text == @"Masculino") ? "M" : "F" }; criterios.Add(b); } List <Paciente> pacientes = ap.buscar_Paciente(criterios); if (pacientes != null) { foreach (Paciente p in pacientes) { AddItemToListView(p); } } var resp = new Resp(Resources.MSG_SearchFinished); resp.ShowDialog(this); this.Dispose(); #endregion break; case Opciones.Agregar: #region Agregar try { var new_pac = new Paciente(); if (new_pac.Existe_Paciente(codigo)) { var r = new Resp(Resources.MSG_Paciente_CodeNotAvailable); r.ShowDialog(this); return; } //if (!FunctionLibrary.InRange( // FunctionLibrary.GetAge(f), // FunctionLibrary.AgeFirstLevel, // FunctionLibrary.AgeMaxSecondLevel)) //{ // var r = new Resp(Resources.MSG_Edad_NotInRange); // r.ShowDialog(this); // return; //} if (!ap.insertarPaciente(codigo, nombre, apellido1, apellido2, direccion, f, s, n, aplicador, lugar)) { this.ap.Configuracion.recuperar(this.ap.Lista_CodigoPacientes()); codigo = this.ap.Configuracion.siguiente_codigo(); MessageBox.Show(this, Resources.MSG_LostConfig + codigo); this.ap.insertarPaciente(codigo, nombre, apellido1, apellido2, direccion, f, s, n, aplicador, lugar); } var p = new Paciente(); p.LoadByID(codigo); AddItemToListView(p); var rr = new Resp(Resources.MSG_Paciente_AddOK); rr.ShowDialog(this); LimpiarFormularioPaciente(); } catch (Exception) { var c = new Resp(Resources.MSG_Paciente_InputDataError); c.ShowDialog(this); } #endregion break; case Opciones.Editar: #region Editar try { ap.Modificar_Paciente(codigo, nombre, apellido1, apellido2, direccion, f, s, n, aplicador, lugar); var p = new Paciente(); p.LoadByID(codigo); this.listViewPacientes.Items.Clear(); AddItemToListView(p); var r = new Resp(Resources.MSG_Paciente_EditOK); r.ShowDialog(this); } catch (Exception) { var c = new Resp(Resources.MSG_Paciente_InputDataError); c.ShowDialog(this); return; } #endregion break; default: throw new ArgumentOutOfRangeException(); } }