private boolean validarCampos() {
    boolean valido = true;
    String mensagem = "";

    if (funcionario.getCategoria() == null) {
      mensagem += "\n- Selecione uma Categoria";
      valido = false;
    }

    try {
      Funcionario f =
          new DAO()
              .localizar(
                  Funcionario.class, "FuncionarioPorLogin", funcionario.getUsuario().getUsuario());
      if (f != null && !f.equals(funcionario)) {
        valido = false;
        mensagem += "\n- Usuário já existe.";
      }
    } catch (Throwable t) {
      valido = false;
      new TratadorExcecao(t, this, true);
    }

    if (!valido) {
      mensagem = "Corrija os campos abaixo:" + mensagem;
      JOptionPane.showMessageDialog(
          this, mensagem, "Salvar Funcionário", JOptionPane.WARNING_MESSAGE);
    }

    return valido;
  }