public void btnCerrarSesion_Click(object sender, EventArgs e) { if (MessageBox.Show("¿Desea cerrar sesión?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { this.Close(); Inicio_Sesion ini = new Inicio_Sesion(); ini.Show(); } }
// botones del form: private void btnEliminarUsuario_Click(object sender, EventArgs e)//agregar validacion en sql de cedula y nacionalidad. pueden haber dos cedulas iguales, con nacionalidades distintas: V o E { try { if (dgvUsuarios.SelectedRows.Count == 1) { if ((txtCedulaUsuario.Text != "") && (txtApellidoUsuario.Text != "") && (txtNombreUsuario.Text != "")) { if ((txtCedulaUsuario.Text != "Cédula") && (txtApellidoUsuario.Text != "Apellido") && (txtNombreUsuario.Text != "Nombre")) { int id = Convert.ToInt32(txtCedulaUsuario.Text); comboboxshow(); if (id == Clases.Usuario_logeado.id_usuario)//si el id seleccionado es igual al lider que está en la sesion: { if (conexion.abrirconexion() == true) { //metodo para verificar la existencia de más lideres. (no se puede eliminar la cuenta si es el unico lider en la base de datos). int MasLideres = Clases.Usuarios.lideresexisten(conexion.conexion, Clases.Usuario_logeado.cargo_usuario); conexion.cerrarconexion(); if (MasLideres > 1)//si el entero es mayor a 1, significa que hay más lideres y se procede a la eliminacion del mismo { if (MessageBox.Show("¿Está seguro de eliminar su cuenta?", "AVISO", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes) { if (conexion.abrirconexion() == true) { if (MessageBox.Show("La sesión terminará en cuanto se complete la eliminacion de su cuenta", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information) == DialogResult.OK) { int resultado; resultado = Clases.Usuarios.EliminarUsuarios(conexion.conexion, id, nacionalidad_usuario); if (resultado > 0) { limpiarCeldas(); actualizarTabla(conexion.conexion, nombre, apellido, cargo); Pagina_principal pag_pri = new Pagina_principal(); this.Close(); pag_pri.Close(); Inicio_Sesion ini = new Inicio_Sesion(); ini.Show(); } }//segunda validacion de eliminacion conexion.cerrarconexion(); } } //verificación de eliminacion de cuenta } //si maslideres es == 1, sólo existe 1 lider, por ende no se podrá eliminar la cuenta else { MessageBox.Show("No se puede eliminar su cuenta: es el único líder en el sistema.", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Information); } } } else //si la cuenta que se quiere eliminar no es la del lider: { if (MessageBox.Show("¿Está seguro de eliminar al usuario " + txtNombreUsuario.Text + "?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes) { if (conexion.abrirconexion() == true) { int resultado; resultado = Clases.Usuarios.EliminarUsuarios(conexion.conexion, id, nacionalidad_usuario); if (resultado > 0) { limpiarCeldas(); actualizarTabla(conexion.conexion, nombre, apellido, cargo); dgvUsuarios.ClearSelection(); habilitar(); } conexion.cerrarconexion(); } }//fin comprobacion eliminar usuario } } else { MessageBox.Show("Debe seleccionar un usuario.", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Debe seleccionar un usuario.", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Debe seleccionar un usuario.", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (MySql.Data.MySqlClient.MySqlException ex) { MessageBox.Show(ex.Message); conexion.cerrarconexion(); } }
private void ActualizarDatos() { try { conexion.cerrarconexion(); if (conexion.abrirconexion() == true) { if (txtNombreUser.Text == "") { errorProviderNombre.SetError(txtNombreUser, "Debe proporcionar un nombre válido."); txtNombreUser.Focus(); } else if (txtApellidoUser.Text == "") { errorProviderNombre.SetError(txtNombreUser, ""); errorProviderApellido.SetError(txtApellidoUser, "Debe proporcionar un apellido válido."); txtApellidoUser.Focus(); } else if (txtCorreoUser.Text == "*****@*****.**") { errorProviderApellido.SetError(txtApellidoUser, ""); errorProviderCorreo.SetError(txtCorreoUser, "Debe proporcionar un correo electrónico válido."); txtCorreoUser.Focus(); } else //si todo OK { btnActualizarDatos.Enabled = true; txtCorreoUser.BackColor = Color.FromArgb(218, 232, 240); usuario.correo_usuario = txtCorreoUser.Text; txtTlfnUser.BackColor = Color.FromArgb(218, 232, 240); usuario.tlfn_usuario = txtTlfnUser.Text; usuario.nombre_usuario = txtNombreUser.Text; usuario.apellido_usuario = txtApellidoUser.Text; usuario.cargo_usuario = lblCargo.Text; usuario.id_usuario = Convert.ToInt32(lblCedula.Text); usuario.imagen_usuario = Clases.Helper.ImageToByteArray(picFotoUser.Image); usuario.password = Clases.Usuario_logeado.password; int resultado; resultado = Clases.Usuarios.ActualizarUsuarios(conexion.conexion, usuario); conexion.cerrarconexion(); if (conexion.abrirconexion() == true) { if (resultado != 0) { int resultado2 = 0; resultado2 = Clases.Usuarios.ActualizarFotoUsuario(conexion.conexion, usuario); conexion.cerrarconexion(); if (resultado2 != 0) { MessageBox.Show("Los datos han sido actualizados correctamente.", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.None); MessageBox.Show("Deberá iniciar sesión nuevamente.", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Information); conexion.cerrarconexion(); this.Close(); Inicio_Sesion ini = new Inicio_Sesion(); ini.Show(); } else { MessageBox.Show("Hubo un error al actualizar la foto", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("No se pudo actualizar los datos.", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Error); } conexion.cerrarconexion(); } } } } catch (MySql.Data.MySqlClient.MySqlException ex) { MessageBox.Show(ex.Message); conexion.cerrarconexion(); } }