//Eliminar Fila private void btnEliminar_Click(object sender, EventArgs e) { var filas = dgvOdontologos.SelectedRows; if (filas.Count == 0 || filas.Count > 1) { MessageBox.Show("Debe Seleccionar una fila", "Sistema", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } foreach (DataGridViewRow f in filas) { var matricula = f.Cells[0].Value.ToString(); var nombreApellido = f.Cells[2].Value.ToString() + " " + f.Cells[3].Value.ToString(); var elec = MessageBox.Show("Esta seguro que desea eliminar los datos", "Sistema", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation); if (elec == DialogResult.Yes) { var tablaPacientesOdont = pacientesRepo.ObtenerPacientesDTmat(matricula); if (tablaPacientesOdont.Rows.Count > 0) { MessageBox.Show($"El Odontologo {nombreApellido} tiene Pacientes registrados", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { odontologosRepo.Eliminar(matricula); } } } ActualizarGrilla(); }
private void ActualizarGrilla(long matricula) { //limpia la grilla dgvPacientes.Rows.Clear(); DataTable tablaPacientes; //Recupero un datatable con los pacientes if (matricula != 0) { tablaPacientes = pacientesRepo.ObtenerPacientesDTmat(matricula.ToString()); } else { tablaPacientes = pacientesRepo.ObtenerPacientesDT(); } //Recorro la tabla fila por fila foreach (DataRow filaTabla in tablaPacientes.Rows) { if (filaTabla.HasErrors) { continue; } //Creo un arreglo de strings en el cual guardo los datos de cada fila var filaGrilla = new string[] { filaTabla.ItemArray[0].ToString(), filaTabla.ItemArray[1].ToString(), filaTabla.ItemArray[2].ToString(), filaTabla.ItemArray[3].ToString(), filaTabla.ItemArray[4].ToString(), filaTabla.ItemArray[5].ToString(), filaTabla.ItemArray[6].ToString(), filaTabla.ItemArray[7].ToString(), }; //Agrego en la DGV en cada fila el arreglo que contiene los datos de cada fila de la tabla dgvPacientes.Rows.Add(filaGrilla); } }
//Agregar odontologo private void btnAgregar_Click(object sender, EventArgs e) { var odontologo = new Odontologo(); odontologo.nombre = txtNombre.Text; odontologo.apellido = txtApellido.Text; odontologo.domicilio = txtDomicilio.Text; odontologo.fechaNacimiento = dtpFechaNacimiento.Value; if (!odontologo.ValidarNumero(txtMatricula.Text.ToString())) { MessageBox.Show("Ingrese correctamente el numero de la Matricula", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else { odontologo.nroMatricula = long.Parse(txtMatricula.Text); } if (!odontologo.ValidarNumero(txtDocumento.Text.ToString())) { MessageBox.Show("Ingrese correctamente el numero de la Documento", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } odontologo.nroDocumento = long.Parse(txtDocumento.Text); if (!odontologo.NombreValido()) { MessageBox.Show("El nombre ingresado no es valido", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (!odontologo.ApellidoInvalido()) { MessageBox.Show("El apellido ingresado no es valido", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (!odontologo.DomicilioInvalido()) { MessageBox.Show("El domicilio ingresado no es valido", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (!odontologo.FechaInvalida(dtpFechaNacimiento.Value)) { MessageBox.Show("La fecha Ingresada tiene que ser 24 años menor", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (odontologosRepo.Validar(odontologo.nroMatricula.ToString())) { //verifico que a la hora de modificar un odontologo el numero de matricula //no es el mismo elimino el anterior odontologo registrado if (nroMat != txtMatricula.Text.ToString()) { var nombreApellido = txtNombre.Text + txtApellido.Text; var tablaPacientesOdont = pacientesRepo.ObtenerPacientesDTmat(nroMat); if (tablaPacientesOdont.Rows.Count > 0) { MessageBox.Show($"El Odontologo {nombreApellido} tiene Pacientes registrados", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); this.Close(); } else { odontologosRepo.Eliminar(nroMat); if (odontologosRepo.Guardar(odontologo)) { MessageBox.Show("Odontologo Registrado con exito", "Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); LimpiarCampos(); } } } } else { //MessageBox requiere 4 parametros. string mensajePrincipal = "El Odontologo ya se encuentra registrado"; string mensaje = "Desea Modificar los Datos"; var result = MessageBox.Show(mensaje, mensajePrincipal, MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { if (odontologosRepo.Actualizar(odontologo, odontologo.nroMatricula.ToString())) { MessageBox.Show("Datos Actualizados con Exito"); } this.Close(); } LimpiarCampos(); } }