// METODO ENCARGADO DE REGISTRAR UN NUEVO USUARIO JEFE DE SUCURSAL
  @FXML
  private void guardarJefeSuc(ActionEvent event) throws SQLException {

    limpiarMensajesSuc();

    // Validacion de campos vacios
    if (validacion.validarVacios(txtNombreJefeSuc.getText())) {
      lblMensajeNombreSuc.setText("campo obligatorio");
      return;
    }

    // Validacion de campos solo letras
    if (validacion.soloLetras(txtNombreJefeSuc.getText())) {
      lblMensajeNombreSuc.setText("este campo solo recibe letras");
      return;
    }

    if (validacion.validarVacios(txtApellidoJefeSuc.getText())) {
      lblMensajeApellidoSuc.setText("campo obligatorio");
      return;
    }

    // Validacion de campos solo letras
    if (validacion.soloLetras(txtApellidoJefeSuc.getText())) {
      lblMensajeApellidoSuc.setText("este campo solo recibe letras");
      return;
    }

    if (validacion.validarVacios(txtNombreSuc.getText())) {
      lblMensajeNomSucursal.setText("campo obligatorio");
      return;
    }

    if (validacion.validarVacios(txtCiudadSucursal.getText())) {
      lblMensajeCiudadSuc.setText("campo obligatorio");
      return;
    }

    // Validacion de campos solo letras
    if (validacion.soloLetras(txtCiudadSucursal.getText())) {
      lblMensajeCiudadSuc.setText("este campo solo recibe letras");
      return;
    }

    if (validacion.validarVacios(txtDireccionSuc.getText())) {
      lblMensajeDirecSuc.setText("campo obligatorio");
      return;
    }

    if (validacion.validarVacios(txtTelefonoSuc.getText())) {
      lblMensajeTelefSuc.setText("campo obligatorio");
      return;
    }

    // Validacion de campos solo numeros
    if (validacion.soloNumeros(txtTelefonoSuc.getText())) {
      lblMensajeTelefSuc.setText("este campo solo recibe numeros");
      return;
    }

    if (validacion.validarVacios(txtEmailSuc.getText())) {
      lblMensajeEmailSuc.setText("campo obligatorio");
      return;
    }

    // Validacion de sintaxis de correo
    if (!validacion.validarCorreo(txtEmailSuc.getText())) {
      lblMensajeEmailSuc.setText("correo invalido");
      return;
    }

    // validar el radiobuton
    if (!(rbEstadoActivoSuc.isSelected() || rbEstadoInactivoSuc.isSelected())) {
      lblMensajeEstadoSuc.setText("debe seleccionar el estado");
      return;
    }

    String nombres = txtNombreJefeSuc.getText();
    String apellidos = txtApellidoJefeSuc.getText();
    String nombreSucursal = txtNombreSuc.getText();
    String ciudadSucursal = txtCiudadSucursal.getText();
    String direccionSucursal = txtDireccionSuc.getText();
    String telefono = txtTelefonoSuc.getText();
    String e_mail = txtEmailSuc.getText();

    estadoUsuario = 1;

    String clave = claveGenerada.GenerarClave();

    Usuario nuevoUsuario = new Usuario();
    nuevoUsuario.setEstado(estadoUsuario);
    nuevoUsuario.setNombres(nombres);
    nuevoUsuario.setApellidos(apellidos);
    nuevoUsuario.setCargo("Jefe de Sucursal");
    nuevoUsuario.setTelefono(telefono);
    nuevoUsuario.setE_mail(e_mail);
    nuevoUsuario.setClave(clave);

    PreparedStatement estado = usuarioDao.nuevoUsuario(nuevoUsuario);

    try {
      int n = estado.executeUpdate();
      JOptionPane.showMessageDialog(
          null, "Usuario registrado exitosamente\nClave asignada: " + clave);
      estado.close();
    } catch (SQLException e) {
      System.out.println("Error " + e);
    }

    Sucursal nuevaSucursal = new Sucursal();

    // Consulta del id del jefe ingresado
    ResultSet resultadoUltimoId = sucursalDao.ultimoId();

    // While para recorrer el ResultSet y obtener el ultimoid
    while (resultadoUltimoId.next()) {
      jefeId = resultadoUltimoId.getInt("jefeid");
    }

    nuevaSucursal.setCodigoJefe(jefeId);
    nuevaSucursal.setNombre(nombreSucursal);
    nuevaSucursal.setCiudad(ciudadSucursal);
    nuevaSucursal.setDireccion(direccionSucursal);

    PreparedStatement estado2 = sucursalDao.nuevaSucursal(nuevaSucursal);

    try {
      int n = estado2.executeUpdate();
      estado2.close();
    } catch (SQLException e) {
      System.out.println("Error " + e);
    }

    limpiarCamposSuc();
  }
  // METODO ENCARGADO DE MODIFICAR UN USUARIO JEFE DE SUCURSAL
  @FXML
  private void modificarJefeSuc(ActionEvent event) throws SQLException {

    limpiarMensajesSuc();

    // Validacion de campos vacios
    if (validacion.validarVacios(txtNombreJefeSuc.getText())) {
      lblMensajeNombreSuc.setText("campo obligatorio");
      return;
    }

    // Validacion de campos solo letras
    if (validacion.soloLetras(txtNombreJefeSuc.getText())) {
      lblMensajeNombreSuc.setText("este campo solo recibe letras");
      return;
    }

    if (validacion.validarVacios(txtApellidoJefeSuc.getText())) {
      lblMensajeApellidoSuc.setText("campo obligatorio");
      return;
    }

    // Validacion de campos solo letras
    if (validacion.soloLetras(txtApellidoJefeSuc.getText())) {
      lblMensajeApellidoSuc.setText("este campo solo recibe letras");
      return;
    }

    if (validacion.validarVacios(txtNombreSuc.getText())) {
      lblMensajeNomSucursal.setText("campo obligatorio");
      return;
    }

    if (validacion.validarVacios(txtCiudadSucursal.getText())) {
      lblMensajeCiudadSuc.setText("campo obligatorio");
      return;
    }

    // Validacion de campos solo letras
    if (validacion.soloLetras(txtCiudadSucursal.getText())) {
      lblMensajeCiudadSuc.setText("este campo solo recibe letras");
      return;
    }

    if (validacion.validarVacios(txtDireccionSuc.getText())) {
      lblMensajeDirecSuc.setText("campo obligatorio");
      return;
    }

    if (validacion.validarVacios(txtTelefonoSuc.getText())) {
      lblMensajeTelefSuc.setText("campo obligatorio");
      return;
    }

    // Validacion de campos solo numeros
    if (validacion.soloNumeros(txtTelefonoSuc.getText())) {
      lblMensajeTelefSuc.setText("este campo solo recibe numeros");
      return;
    }

    if (validacion.validarVacios(txtEmailSuc.getText())) {
      lblMensajeEmailSuc.setText("campo obligatorio");
      return;
    }

    // Validacion de sintaxis de correo
    if (!validacion.validarCorreo(txtEmailSuc.getText())) {
      lblMensajeEmailSuc.setText("correo invalido");
      return;
    }

    // validar el radiobuton
    if (!(rbEstadoActivoSuc.isSelected() || rbEstadoInactivoSuc.isSelected())) {
      lblMensajeEstadoSuc.setText("debe seleccionar el estado");
      return;
    }

    String nombres = txtNombreJefeSuc.getText();
    String apellidos = txtApellidoJefeSuc.getText();
    String nombreSucursal = txtNombreSuc.getText();
    String ciudadSucursal = txtCiudadSucursal.getText();
    String direccionSucursal = txtDireccionSuc.getText();
    String telefono = txtTelefonoSuc.getText();
    String e_mail = txtEmailSuc.getText();

    if (rbEstadoActivoSuc.isSelected()) {
      estadoUsuario = 1;
    }

    if (rbEstadoInactivoSuc.isSelected()) {
      estadoUsuario = 2;
    }

    Usuario modificarUsuario = new Usuario();
    modificarUsuario.setEstado(estadoUsuario);
    modificarUsuario.setNombres(nombres);
    modificarUsuario.setApellidos(apellidos);
    modificarUsuario.setTelefono(telefono);
    modificarUsuario.setE_mail(e_mail);
    modificarUsuario.setCodigoUsuario(Integer.parseInt(codigoUsuario));

    PreparedStatement estado = usuarioDao.modificarUsuario(modificarUsuario);

    try {
      int n = estado.executeUpdate();
      JOptionPane.showMessageDialog(null, "Usuario modificado exitosamente");
      estado.close();
    } catch (SQLException e) {
      System.out.println("Error " + e);
    }

    // Consulta para obtener el jefeid
    ResultSet resultadoJefeId = jefeSucursalDao.consultarJefeId(codigoUsuario);

    // While para recorrer el ResultSet y obtener el jefeid del Jefe_Sucursal
    while (resultadoJefeId.next()) {
      jefeId = resultadoJefeId.getInt("jefeid");
    }

    Sucursal modificarSucursal = new Sucursal();

    modificarSucursal.setCodigoJefe(jefeId);
    modificarSucursal.setNombre(nombreSucursal);
    modificarSucursal.setCiudad(ciudadSucursal);
    modificarSucursal.setDireccion(direccionSucursal);

    PreparedStatement estado2 = sucursalDao.modificarSucursal(modificarSucursal);

    try {
      int n = estado2.executeUpdate();
      estado2.close();
    } catch (SQLException e) {
      System.out.println("Error " + e);
    }

    limpiarCamposSuc();
  }