예제 #1
0
        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();
            }
        }
예제 #2
0
        // 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();
            }
        }
예제 #3
0
        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();
            }
        }