public List<ILoteItemEstoque> buscarLote(IEntidadeItemEstoque itemEstoque) {
   EntityManagerFactory factory;
   EntityManager manager;
   factory = Persistence.createEntityManagerFactory("simacrJPA");
   manager = factory.createEntityManager();
   EntidadeItemEstoque eie = manager.find(EntidadeItemEstoque.class, itemEstoque.getId());
   return eie.getILotes();
 }
 public void excluir(IEntidadeItemEstoque itemEstoque) {
   EntityManagerFactory factory;
   EntityManager manager;
   factory = Persistence.createEntityManagerFactory("simacrJPA");
   manager = factory.createEntityManager();
   EntidadeItemEstoque eie = manager.find(EntidadeItemEstoque.class, itemEstoque.getId());
   eie.removeTodosLotes();
   manager.remove(eie);
   manager.getTransaction().begin();
   manager.getTransaction().commit();
 }
 public boolean remover(IEntidadeItemEstoque itemEstoque, Integer quantidade) {
   try {
     EntityManagerFactory factory;
     EntityManager manager;
     factory = Persistence.createEntityManagerFactory("simacrJPA");
     manager = factory.createEntityManager();
     EntidadeItemEstoque eie = manager.find(EntidadeItemEstoque.class, itemEstoque.getId());
     eie.setQuantidade(0 - quantidade);
     manager.getTransaction().begin();
     manager.getTransaction().commit();
     return true;
   } catch (Exception e) {
     return false;
   }
 }
 public void excluirLote(IEntidadeItemEstoque itemEstoque, ILoteItemEstoque loteItemEstoque) {
   EntityManagerFactory factory;
   EntityManager manager;
   factory = Persistence.createEntityManagerFactory("simacrJPA");
   manager = factory.createEntityManager();
   EntidadeItemEstoque eie = manager.find(EntidadeItemEstoque.class, itemEstoque.getId());
   EntidadeLoteItemEstoque remover = null;
   for (EntidadeLoteItemEstoque lote : eie.getLotes())
     if (lote.getId() == loteItemEstoque.getId()) {
       remover = lote;
       break;
     }
   eie.setQuantidade(0 - remover.getQuantidade());
   eie.removeLote(remover);
   manager.remove(remover);
   manager.getTransaction().begin();
   manager.getTransaction().commit();
 }