public List pesquisaProduto(Produto produto, Integer tipoPesquisa, String porPesquisa) { if (produto.getDescricao().isEmpty()) { return new ArrayList(); } try { String por; if (porPesquisa.equals("Inicial")) { por = ""; } else { por = "%"; } String descricao = por + produto.getDescricao() + "%"; String queryString = "" + "SELECT P.* \n" + " FROM est_produto AS P \n" + " WHERE trim(UPPER(func_translate(P.ds_descricao))) LIKE trim(UPPER(func_translate('" + descricao + "'))) \n" + " OR ( \n" + " trim(UPPER(func_translate(P.ds_modelo))) LIKE trim(UPPER(func_translate('" + produto.getDescricao() + "'))) \n" + " OR trim(UPPER(func_translate(P.ds_marca))) LIKE trim(UPPER(func_translate('" + produto.getDescricao() + "'))) \n" + " OR trim(UPPER(func_translate(P.ds_fabricante))) LIKE trim(UPPER(func_translate('" + produto.getDescricao() + "'))) \n" + ") \n" + "ORDER BY P.ds_descricao \n" + " "; Query query = getEntityManager().createNativeQuery(queryString, Produto.class); List list = query.getResultList(); if (!list.isEmpty()) { return list; } } catch (Exception e) { return new ArrayList(); } return new ArrayList(); }
public List listaEstoquePorProduto(Produto p) { try { Query q = getEntityManager() .createQuery( "SELECT E FROM Estoque AS E WHERE E.produto.id = :p1 ORDER BY E.filial.filial.pessoa.nome ASC, E.estoqueTipo.descricao ASC"); q.setParameter("p1", p.getId()); List list = q.getResultList(); if (!list.isEmpty()) { return list; } } catch (Exception e) { } return new ArrayList(); }
public Estoque listaEstoquePorProdutoFilial(Produto p, Filial l) { try { Query q = getEntityManager() .createQuery( "SELECT E FROM Estoque AS E WHERE E.produto.id = :p1 AND E.filial.id = :p2 ORDER BY E.filial.filial.pessoa.nome"); q.setParameter("p1", p.getId()); q.setParameter("p2", l.getId()); List list = q.getResultList(); if (!list.isEmpty()) { return (Estoque) q.getSingleResult(); } } catch (Exception e) { } return null; }