private void btAgregarFamiliar_Click(object sender, EventArgs e) { NuevoAfiliado form = new NuevoAfiliado(3, afiliadoAMod.idFamilia); this.Visible = false; form.ShowDialog(); this.Visible = true; }
private void button_Aceptar_Click(object sender, EventArgs e) { SqlCommand modificarAfi = new SqlCommand("ELIMINAR_CAR.modificarAfiliado", DBConnector.ObtenerConexion()); modificarAfi.CommandType = CommandType.StoredProcedure; modificarAfi.Parameters.Add(new SqlParameter("@id_afiliado", afiliadoAMod.idAfiliado)); Boolean huboCambios = false; //Telefono if (seCambioTelefono) { huboCambios = true; modificarAfi.Parameters.AddWithValue("@telefono", Int64.Parse(tel.Text)); } else { modificarAfi.Parameters.AddWithValue("@telefono", DBNull.Value); } //Direccion if (!afiliadoAMod.direccion.Equals(direc.Text)) { huboCambios = true; modificarAfi.Parameters.Add(new SqlParameter("@direccion", direc.Text)); } else { modificarAfi.Parameters.Add(new SqlParameter("@direccion", DBNull.Value)); } //Estado civil if (afiliadoAMod.estadoCivil != (estado_civil)estadoCiv.SelectedItem) { huboCambios = true; modificarAfi.Parameters.AddWithValue("@estado_civil", (Int32)estadoCiv.SelectedItem); } else { modificarAfi.Parameters.AddWithValue("@estado_civil", DBNull.Value); } //MAIL if (!afiliadoAMod.mail.Equals(mail.Text)) { huboCambios = true; modificarAfi.Parameters.AddWithValue("@mail", mail.Text); } else { modificarAfi.Parameters.AddWithValue("@mail", DBNull.Value); } //Sexo if (afiliadoAMod.sexo != (sexo)Sexo.SelectedItem) { huboCambios = true; modificarAfi.Parameters.AddWithValue("@sexo", (int)Sexo.SelectedItem); } else { modificarAfi.Parameters.AddWithValue("@sexo", DBNull.Value); } //Plan if (afiliadoAMod.idPlan != ((Plan)planMed.SelectedItem).id_plan) { huboCambios = true; modificarAfi.Parameters.AddWithValue("@id_plan", ((Plan)planMed.SelectedItem).id_plan); } else { modificarAfi.Parameters.AddWithValue("@id_plan", DBNull.Value); } if (huboCambios) { DialogResult resultado = MessageBox.Show("¿Desea realizar estos cambios?", "Clinica-FRBA", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); if (resultado == DialogResult.OK) { if (afiliadoAMod.idPlan != ((Plan)planMed.SelectedItem).id_plan) { MotivoCambioPlan motivo = new MotivoCambioPlan(); this.Visible = false; motivo.ShowDialog(); this.Visible = true; modificarAfi.Parameters.AddWithValue("@fecha_cambio", ClinicaFrba.Utils.Fechas.getCurrentDateTime().Date); if (motivo.fueCerradoPorusuario) { modificarAfi.Parameters.AddWithValue("@motivo_cambio_plan", "No especificado"); } else { modificarAfi.Parameters.AddWithValue("@motivo_cambio_plan", ((RichTextBox)motivo.Controls["tb_motivo"]).Text); } } else { modificarAfi.Parameters.AddWithValue("@fecha_cambio", DBNull.Value); modificarAfi.Parameters.AddWithValue("@motivo_cambio_plan", DBNull.Value); } modificarAfi.ExecuteNonQuery(); MessageBox.Show("El afiliado fue modificado correctamente", "Clinica-FRBA", MessageBoxButtons.OK, MessageBoxIcon.Information); huboCambios = false; seCambioTelefono = false; if ((tipo == 0) && ((estado_civil)estadoCiv.SelectedItem == estado_civil.Casado) && afiliadoAMod.estadoCivil != estado_civil.Casado) { DialogResult res = MessageBox.Show("¿Desea agregar a su conyuge?", "Clinica-FRBA", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (res == DialogResult.Yes) { NuevoAfiliado conyuge = new NuevoAfiliado(1, afiliadoAMod.idFamilia); this.Visible = false; conyuge.ShowDialog(); this.Visible = true; } } if ((tipo == 0) && ((estado_civil)estadoCiv.SelectedItem == estado_civil.Concubinato) && afiliadoAMod.estadoCivil != estado_civil.Concubinato) { DialogResult res = MessageBox.Show("¿Desea agregar a su conyuge?", "Clinica-FRBA", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (res == DialogResult.Yes) { NuevoAfiliado conyuge = new NuevoAfiliado(2, afiliadoAMod.idFamilia); this.Visible = false; conyuge.ShowDialog(); this.Visible = true; } } afiliadoAMod = Afiliado.getAfiliadoPorID(afiliadoAMod.idAfiliado); // Lo recargamos } } }
private void botonAceptar_Click(object sender, EventArgs e) { Errores errores = new Errores(); if (textBox_NombAfi.TextLength == 0) { errores.agregarError("El nombre del afiliado no puede ser nulo"); } if (textBox_ApAfi.TextLength == 0) { errores.agregarError("El apellido del afiliado no puede ser nulo"); } if (textBox_NumDoc.TextLength == 0) { errores.agregarError("El número de documento del afiliado no puede ser nulo"); } if (PlanMedAfi.SelectedItem == null) { errores.agregarError("El plan médico del afiliado no puede ser nulo"); } SqlCommand cuantosHayConDNI = new SqlCommand("ELIMINAR_CAR.verificar_doc_afiliado", DBConnector.ObtenerConexion()); int cantDNI = 0; cuantosHayConDNI.CommandType = CommandType.StoredProcedure; cuantosHayConDNI.Parameters.AddWithValue("@tipo", (int)comboBox_TipoDoc.SelectedItem); cuantosHayConDNI.Parameters.AddWithValue("@dni", Int64.Parse(textBox_NumDoc.Text)); cuantosHayConDNI.Parameters.AddWithValue("@resultado", cantDNI); cuantosHayConDNI.Parameters["@resultado"].Direction = ParameterDirection.Output; cuantosHayConDNI.ExecuteNonQuery(); cantDNI = (int)cuantosHayConDNI.Parameters["@resultado"].Value; if (cantDNI > 0) { errores.agregarError("El tipo y numero de documento ingresado ya existe."); } if (errores.huboError()) { MessageBox.Show(errores.stringErrores(), "Clinica-FRBA: ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); } else //Coportamiento si esta todo ok { //Insertar Chabon if (tipo == 0) { SqlCommand insertar = new SqlCommand("ELIMINAR_CAR.insertarAfiliadoRaiz", DBConnector.ObtenerConexion()); insertar.CommandType = CommandType.StoredProcedure; insertar.Parameters.Add(new SqlParameter("@tipo_doc", (Int32)comboBox_TipoDoc.SelectedValue)); insertar.Parameters.Add(new SqlParameter("@n_doc", Decimal.Parse(textBox_NumDoc.Text))); insertar.Parameters.Add(new SqlParameter("@nombre", textBox_NombAfi.Text)); insertar.Parameters.Add(new SqlParameter("@apellido", textBox_ApAfi.Text)); insertar.Parameters.Add(new SqlParameter("@direccion", textBox_DirecAfi.Text)); int telefono; if (Int32.TryParse(textBox_TelAfi.Text, out telefono)) { insertar.Parameters.Add(new SqlParameter("@telefono", Int64.Parse(textBox_TelAfi.Text))); } else { insertar.Parameters.Add(new SqlParameter("@telefono", DBNull.Value)); } insertar.Parameters.Add(new SqlParameter("@mail", textBox_MailAfi.Text)); insertar.Parameters.Add(new SqlParameter("@fecha_nac", dtp_fecha_nac.Value)); insertar.Parameters.Add(new SqlParameter("@estado_civil", (Int32)comboBox_EstadoCivilAfi.SelectedItem)); insertar.Parameters.Add(new SqlParameter("@sexo", (Int32)comboBox_SexoAfi.SelectedItem)); insertar.Parameters.Add(new SqlParameter("@id_plan", ((Plan)PlanMedAfi.SelectedItem).id_plan)); int familiares = 0; //Le ponemos 0 a cargo porque no cuenta el conyuge y al agregar los demas se suman // if (Int32.TryParse(textBox_CantFami.Text, out familiares)) ; //else familiares = 0; insertar.Parameters.Add(new SqlParameter("@familiares_a_cargo", familiares)); insertar.Parameters.Add(new SqlParameter("@id_familia_out", numFam)); Int64 id_afiliado = 0; insertar.Parameters.Add(new SqlParameter("@id_afiliado_out", id_afiliado)); insertar.Parameters["@id_familia_out"].Direction = ParameterDirection.Output; insertar.Parameters["@id_afiliado_out"].Direction = ParameterDirection.Output; insertar.ExecuteNonQuery(); numFam = (Int64)insertar.Parameters["@id_familia_out"].Value; id_afiliado = (Int64)insertar.Parameters["@id_afiliado_out"].Value; } else if (tipo == 1 || tipo == 2) { SqlCommand insertar = new SqlCommand("ELIMINAR_CAR.insertarConyuge", DBConnector.ObtenerConexion()); insertar.CommandType = CommandType.StoredProcedure; insertar.Parameters.Add(new SqlParameter("@id_familia", numFam)); insertar.Parameters.Add(new SqlParameter("@tipo_doc", (Int32)comboBox_TipoDoc.SelectedValue)); insertar.Parameters.Add(new SqlParameter("@n_doc", Decimal.Parse(textBox_NumDoc.Text))); insertar.Parameters.Add(new SqlParameter("@nombre", textBox_NombAfi.Text)); insertar.Parameters.Add(new SqlParameter("@apellido", textBox_ApAfi.Text)); insertar.Parameters.Add(new SqlParameter("@direccion", textBox_DirecAfi.Text)); int telefono; if (Int32.TryParse(textBox_TelAfi.Text, out telefono)) { insertar.Parameters.Add(new SqlParameter("@telefono", Int64.Parse(textBox_TelAfi.Text))); } else { insertar.Parameters.Add(new SqlParameter("@telefono", DBNull.Value)); } insertar.Parameters.Add(new SqlParameter("@mail", textBox_MailAfi.Text)); insertar.Parameters.Add(new SqlParameter("@fecha_nac", dtp_fecha_nac.Value)); insertar.Parameters.Add(new SqlParameter("@estado_civil", (Int32)comboBox_EstadoCivilAfi.SelectedItem)); insertar.Parameters.Add(new SqlParameter("@sexo", (Int32)comboBox_SexoAfi.SelectedItem)); insertar.Parameters.Add(new SqlParameter("@id_plan", ((Plan)PlanMedAfi.SelectedItem).id_plan)); Int64 id_afiliado = 0; insertar.Parameters.Add(new SqlParameter("@id_afiliado_out", id_afiliado)); insertar.Parameters["@id_afiliado_out"].Direction = ParameterDirection.Output; insertar.ExecuteNonQuery(); id_afiliado = (Int64)insertar.Parameters["@id_afiliado_out"].Value; } else { SqlCommand insertar = new SqlCommand("ELIMINAR_CAR.insertarDependiente", DBConnector.ObtenerConexion()); insertar.CommandType = CommandType.StoredProcedure; insertar.Parameters.Add(new SqlParameter("@id_familia", numFam)); insertar.Parameters.Add(new SqlParameter("@tipo_doc", (Int32)comboBox_TipoDoc.SelectedValue)); insertar.Parameters.Add(new SqlParameter("@n_doc", Decimal.Parse(textBox_NumDoc.Text))); insertar.Parameters.Add(new SqlParameter("@nombre", textBox_NombAfi.Text)); insertar.Parameters.Add(new SqlParameter("@apellido", textBox_ApAfi.Text)); insertar.Parameters.Add(new SqlParameter("@direccion", textBox_DirecAfi.Text)); int telefono; if (Int32.TryParse(textBox_TelAfi.Text, out telefono)) { insertar.Parameters.Add(new SqlParameter("@telefono", Int64.Parse(textBox_TelAfi.Text))); } else { insertar.Parameters.Add(new SqlParameter("@telefono", DBNull.Value)); } insertar.Parameters.Add(new SqlParameter("@mail", textBox_MailAfi.Text)); insertar.Parameters.Add(new SqlParameter("@fecha_nac", dtp_fecha_nac.Value)); insertar.Parameters.Add(new SqlParameter("@estado_civil", (Int32)comboBox_EstadoCivilAfi.SelectedItem)); insertar.Parameters.Add(new SqlParameter("@sexo", (Int32)comboBox_SexoAfi.SelectedItem)); insertar.Parameters.Add(new SqlParameter("@id_plan", ((Plan)PlanMedAfi.SelectedItem).id_plan)); Int64 id_afiliado = 0; insertar.Parameters.Add(new SqlParameter("@id_afiliado_out", id_afiliado)); insertar.Parameters["@id_afiliado_out"].Direction = ParameterDirection.Output; insertar.ExecuteNonQuery(); id_afiliado = (Int64)insertar.Parameters["@id_afiliado_out"].Value; } MessageBox.Show("El afiliado fue agregado corrrectamente\n", "Clinica-FRBA", MessageBoxButtons.OK); //Casteo a tipo de dato, porque devuelve object if ((tipo == 0) && ((estado_civil)comboBox_EstadoCivilAfi.SelectedItem == estado_civil.Casado)) { DialogResult res = MessageBox.Show("¿Desea agregar a su conyuge?", "Clinica-FRBA", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (res == DialogResult.Yes) { NuevoAfiliado conyuge = new NuevoAfiliado(1, numFam); this.Visible = false; conyuge.ShowDialog(); this.Visible = true; } } if ((tipo == 0) && ((estado_civil)comboBox_EstadoCivilAfi.SelectedItem == estado_civil.Concubinato)) { DialogResult res = MessageBox.Show("¿Desea agregar a su conyuge?", "Clinica-FRBA", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (res == DialogResult.Yes) { NuevoAfiliado conyuge = new NuevoAfiliado(2, numFam); this.Visible = false; conyuge.ShowDialog(); this.Visible = true; } } if ((tipo == 0) && textBox_CantFami.TextLength > 0 && (int.Parse(textBox_CantFami.Text) > 0)) { int cantFamiliares = int.Parse(textBox_CantFami.Text); for (int i = 0; i < cantFamiliares; i++) { DialogResult resultado = MessageBox.Show("¿Desea agregar un nuevo familiar a cargo?", "Clinica-FRBA", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (resultado == DialogResult.Yes) { NuevoAfiliado familiar = new NuevoAfiliado(3, numFam); this.Visible = false; familiar.ShowDialog(); this.Visible = true; } else { break; } } } this.Close(); } }
private void button1_Click(object sender, EventArgs e) { switch (ABMAfi.SelectedIndex) { case 0: NuevoAfiliado form = new NuevoAfiliado(0, -1); this.Visible = false; form.ShowDialog(); this.Visible = true; break; case 1: SeleccionarAfiliado selecB = new SeleccionarAfiliado(); this.Visible = false; selecB.ShowDialog(); this.Visible = true; if (selecB.fueCerradoPorUsuario) { this.Close(); return; } else { afiliadoSeleccionado = ((Afiliado)((DataGridView)selecB.Controls["dgv_afiliado"]).CurrentRow.DataBoundItem); } DialogResult resultado = MessageBox.Show("¿Desea eliminar a este afiliado?", "Clinica-FRBA", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); if (resultado == DialogResult.OK) { SqlCommand eliminar; if (afiliadoSeleccionado.idAfiliado.ToString().EndsWith("01")) { eliminar = new SqlCommand("ELIMINAR_CAR.eliminarAfiliadoRaiz", DBConnector.ObtenerConexion()); } else { eliminar = new SqlCommand("ELIMINAR_CAR.eliminarAfiliadoNoRaiz", DBConnector.ObtenerConexion()); } eliminar.CommandType = CommandType.StoredProcedure; eliminar.Parameters.Add(new SqlParameter("@id_afiliado", (Int64)afiliadoSeleccionado.idAfiliado)); eliminar.Parameters.Add(new SqlParameter("@id_familia", (Int64)afiliadoSeleccionado.idFamilia)); eliminar.Parameters.Add(new SqlParameter("@fecha_baja", ClinicaFrba.Utils.Fechas.getCurrentDateTime().Date)); eliminar.ExecuteNonQuery(); MessageBox.Show("El afiliado fue eliminado correctamente", "Clinica-FRBA", MessageBoxButtons.OK, MessageBoxIcon.Information); } break; case 2: SeleccionarAfiliado selecM = new SeleccionarAfiliado(); this.Visible = false; selecM.ShowDialog(); this.Visible = true; if (selecM.fueCerradoPorUsuario) { this.Close(); return; } else { afiliadoSeleccionado = ((Afiliado)((DataGridView)selecM.Controls["dgv_afiliado"]).CurrentRow.DataBoundItem); } ModificarAfiliado modif = new ModificarAfiliado(this.afiliadoSeleccionado); this.Visible = false; modif.ShowDialog(); this.Visible = true; break; case 3: SeleccionarAfiliado listar = new SeleccionarAfiliado(1); this.Visible = false; listar.ShowDialog(); this.Visible = true; break; } }