public void cadastrarOrcamento(boolean cond, String forma_pag, String obs, String garantia) {
    if (itens.size() > 0) {
      Orcamento orcamento = new Orcamento();
      orcamento.setForma_pag(forma_pag);
      orcamento.setObs(obs);
      orcamento.setGarantia(garantia);
      orcamento.setCliente(Config.getCliente());
      orcamento.setDia_orcamento(Calendar.getInstance());
      orcamento.setValor(valorTotal);
      if (cond) {
        dao.create(orcamento);
        orcamento.setItens(itens);
        try {
          dao.edit(orcamento);
        } catch (Exception ex) {
        }
        JOptionPane.showMessageDialog(null, "Salvo");
        int op =
            JOptionPane.showConfirmDialog(
                null, "Deseja imprimir?", "Messagem", JOptionPane.YES_OPTION);
        if (JOptionPane.YES_OPTION == op) {
          impressao.imprimirOrcamento(orcamento);
        }

      } else {
        impressao.imprimirOrcamento(orcamento);
      }
      limpar();
    } else {
      JOptionPane.showMessageDialog(null, "Adicione algum Produto.", "Atenção", 0);
    }
  }
  private void mostrarDados() {
    try {
      tfOBS.setText(orcamento.getObs());

      cbFormaPagamento.addItem("" + orcamento.getForma_pag());

      controleOrcamento.setValorTotal(orcamento.getValor());
      controleOrcamento.setItens(orcamento.getItens());

      verificarNumero();
      preecherJTable();

    } catch (Exception erro) {
    }
  }
 private void deletarLista(Orcamento o) {
   for (Itens i : o.getItens()) {
     try {
       dao.destroy(i.getId(), Itens.class);
     } catch (NonexistentEntityException ex) {
     }
   }
 }
 private List<Itens> criarLista(Orcamento o) {
   List<Itens> itensAux = new ArrayList<Itens>();
   for (Itens i : o.getItens()) {
     try {
       dao.create(i);
       itens.add(i);
     } catch (Exception ex) {
     }
   }
   return itensAux;
 }
 public List<Orcamento> alterarExluirOrcamento(Long id) {
   List<Object> objects = new ArrayList<Object>();
   List<Orcamento> orcamentos = new ArrayList<Orcamento>();
   objects = dao.findObjectEntities(Orcamento.class);
   Iterator i = objects.iterator();
   while (i.hasNext()) {
     try {
       Orcamento o = (Orcamento) i.next();
       if (o.getCliente().getId().toString().equalsIgnoreCase(id.toString())) {
         try {
           o.setCliente(null);
           dao.edit(o);
           orcamentos.add(o);
         } catch (Exception erro) {
         }
       }
     } catch (Exception eroo) {
     }
   }
   return orcamentos;
 }
  private void verificarNumero() {
    try {
      char[] garantia = orcamento.getGarantia().toCharArray();
      int cont = 0;
      String a = "";
      String b = "";
      String c = "";
      boolean ano = true;
      boolean mes = false;
      boolean dia = false;

      for (int i = 0; i < garantia.length; ++i) {
        try {
          int teste = Integer.parseInt("" + garantia[i]);
          if (ano) {
            a += garantia[i];
          } else if (mes) {
            b += garantia[i];
          } else if (dia) {
            c += garantia[i];
          }

        } catch (NumberFormatException erro) {
          if (ano && a.length() > 0) {
            ano = false;
            mes = true;
            ++cont;
          } else if (mes && b.length() > 0) {
            mes = false;
            dia = true;
          }
        }
      }

      tfAno.setText(a);
      tfMes.setText(b);
      tfDia.setText(c);
    } catch (Exception erro) {
    }
  }
  public void alterarOrcamento(String forma_pag, String obs, String garantia, Orcamento orcamento) {
    if (itens.size() > 0) {

      orcamento.setForma_pag(forma_pag);
      orcamento.setObs(obs);
      orcamento.setGarantia(garantia);
      orcamento.setCliente(Config.getCliente());
      orcamento.setDia_orcamento(Calendar.getInstance());
      orcamento.setValor(valorTotal);
      List<Itens> itensAux = new ArrayList<Itens>();
      try {
        orcamento.setItens(itensAux);
        dao.edit(orcamento);
        deletarLista(orcamento);

        orcamento.setItens(itens);
      } catch (Exception ex) {
        System.out.println("erro de itens 1");
      }
      try {
        // orcamento.setItens(criarLista(orcamento));
        dao.edit(orcamento);
      } catch (Exception ex) {
        System.out.println("erro de itens 2");
      }
      JOptionPane.showMessageDialog(null, "Salvo");
      int op =
          JOptionPane.showConfirmDialog(
              null, "Deseja imprimir?", "Messagem", JOptionPane.YES_OPTION);
      if (JOptionPane.YES_OPTION == op) {
        impressao.imprimirOrcamento(orcamento);
      }
      limpar();
    } else {
      JOptionPane.showMessageDialog(null, "Adicione algum Produto.", "Atenção", 0);
    }
  }