Example usage for org.hibernate.criterion Restrictions ilike

List of usage examples for org.hibernate.criterion Restrictions ilike

Introduction

In this page you can find the example usage for org.hibernate.criterion Restrictions ilike.

Prototype

public static Criterion ilike(String propertyName, Object value) 

Source Link

Document

A case-insensitive "like" (similar to Postgres ilike operator)

Usage

From source file:controllers.WniosekController.java

public String Zatwierdz(String from) {
        HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext()
                .getRequest();/*from w w w.  ja va2s . c  om*/

        Session session = ConnectionFactory.getSessionFactory().openSession();
        Transaction tx = session.beginTransaction();
        String login_zalogowanego = UserController.getUserName();

        Criteria cr = session.createCriteria(Users.class);
        cr.add(Restrictions.ilike("login", login_zalogowanego));
        List<Users> result = cr.list();

        if (from.equals("zobaczWniosekKwestor")) {
            wniosekView.setStan(MaszynaStanow.getNextState(wniosekView.getStan(), null));
            wniosekView.setKontrasygnata_data(new Date());
            wniosekView.setKwestor_ID(result.get(0).getUser_id());
        } else if (from.equals("zobaczWniosekDzialNauk")) {
            wniosekView.setStan(MaszynaStanow.getNextState(wniosekView.getStan(), null));
            wniosekView.setPotwierdzenie_pokrycia_fin_ze_srodkow_data(new Date());
            wniosekView.setKierownik_dzialu_naukID(result.get(0).getUser_id());

        } else if (from.equals("zobaczWniosekKBRIPM")) {
            wniosekView.setStan(MaszynaStanow.getNextState(wniosekView.getStan(), null));
            wniosekView.setPotwierdzenie_zgodnosci_budzet_data(new Date());
            wniosekView.setKierownik_BRPM_BWM_ID(result.get(0).getUser_id());

        } else if (from.equals("zobaczWniosekSzefPionu")) {
            wniosekView.setStan(MaszynaStanow.getNextState(wniosekView.getStan(), null));
            wniosekView.setSzef_pionuID(result.get(0).getUser_id());

        } else if (from.equals("zobaczWniosekDZP")) {
            wniosekView.setStan(MaszynaStanow.getNextState(wniosekView.getStan(), null));
            wniosekView.setData_zlozenia_w_dziale_zam_pub(new Date());
            wniosekView.setOsoba_przyjmujaca_wniosek_ID(result.get(0).getUser_id());

            przedmiot_zamowienia.setOsoba_opiniujaca_tryb_udzielania_zam_ID(result.get(0).getUser_id());
            session.update(przedmiot_zamowienia);

            int i = 1;
            for (Przedmiot_zamowienia_item pzi : listaPrzedmiotowZamowienia) {
                pzi.setOpinia_dot_trybu_udzielania_zam(request.getParameter("opinia" + i));
                session.update(pzi);
                i++;
            }

        } else if (from.equals("zobaczWniosekPelnomocnikRektora")) {
            wniosekView.setStan(MaszynaStanow.getNextState(wniosekView.getStan(), null));
            wniosekView.setPelnomocnik_rektora_ID(result.get(0).getUser_id());
            przedmiot_zamowienia.setPelnomocnik_rektora_ID(result.get(0).getUser_id());
            session.update(przedmiot_zamowienia);

        }

        session.update(wniosekView);
        session.flush();
        tx.commit();
        session.close();

        return "wnioskiDoAkceptacji";

        //        if(!uwaga.getTresc().equals(""))
        //        {
        //            Session session = ConnectionFactory.getSessionFactory().openSession();
        //            Transaction tx = session.beginTransaction();
        //            uwaga.setWniosek_id(wniosekView.getWniosek_ID());
        //            String login_zalogowanego = UserController.getUserName();
        //            Criteria cr = session.createCriteria(Users.class);
        //            cr.add(Restrictions.ilike("login", login_zalogowanego));
        //            List<Users> result = cr.list();
        //            uwaga.setUser_id(result.get(0).getUser_id());
        //            session.save(uwaga);
        //            tx.commit();
        //            session.close();
        //        }
        //        uwaga = new Uwagi();

    }

From source file:criteria.CriteriaCliente.java

public static Criteria listaClientes(String filter) {
    Criteria criteria = Hibernate.getSession().createCriteria(Cliente.class);
    criteria.add(Restrictions.ilike("nomeCliente", "%" + filter + "%"));
    return criteria;
}

From source file:cz.jirutka.rsql.hibernate.AbstractCriterionBuilder.java

License:Open Source License

/**
 * Apply a case-insensitive "like" constraint to the named property. Value
 * should contains wildcards "*" (% in SQL) and "_".
 * //from   w w w.  j  a v a  2s  . com
 * @param propertyPath property name prefixed with an association alias
 * @param argument value
 * @return Criterion
 */
protected Criterion createLike(String propertyPath, Object argument) {
    String like = (String) argument;
    like = like.replace(LIKE_WILDCARD, '%');

    return Restrictions.ilike(propertyPath, like);
}

From source file:cz.jirutka.rsql.hibernate.AbstractCriterionBuilderTest.java

License:Open Source License

@Test
public void testCreateCriterion3args() {
    String property = "foo";
    Criterion exptected;//w  w w. j  a va  2  s .  co m
    Criterion actual;

    exptected = Restrictions.eq(property, "bar");
    actual = instance.createCriterion(property, Comparison.EQUAL, "bar");
    assertEquals(exptected.toString(), actual.toString());

    exptected = Restrictions.ilike(property, "bar%");
    actual = instance.createCriterion(property, Comparison.EQUAL, "bar*");
    assertEquals(exptected.toString(), actual.toString());

    exptected = Restrictions.ne(property, "bar");
    actual = instance.createCriterion(property, Comparison.NOT_EQUAL, "bar");
    assertEquals(exptected.toString(), actual.toString());

    exptected = Restrictions.not(Restrictions.ilike(property, "%bar"));
    actual = instance.createCriterion(property, Comparison.NOT_EQUAL, "*bar");
    assertEquals(exptected.toString(), actual.toString());

    exptected = Restrictions.gt(property, 42);
    actual = instance.createCriterion(property, Comparison.GREATER_THAN, 42);
    assertEquals(exptected.toString(), actual.toString());

    exptected = Restrictions.ge(property, -42);
    actual = instance.createCriterion(property, Comparison.GREATER_EQUAL, -42);
    assertEquals(exptected.toString(), actual.toString());

    exptected = Restrictions.lt(property, 42.2);
    actual = instance.createCriterion(property, Comparison.LESS_THAN, 42.2);
    assertEquals(exptected.toString(), actual.toString());

    exptected = Restrictions.le(property, -42.2);
    actual = instance.createCriterion(property, Comparison.LESS_EQUAL, -42.2);
    assertEquals(exptected.toString(), actual.toString());

}

From source file:cz.jirutka.rsql.visitor.hibernate.HibernateCriterionVisitor.java

License:Apache License

@Override
public Criterion visit(ComparisonNode node) {
    String name = node.getSelector();
    /*// w  w w  .  j  a v a  2s . co  m
     Get the path and property names
     */
    Tuple<Type, String>[] path = getPath(root, name);
    Type type = getType(path);
    boolean isPrimitive = type instanceof StringRepresentableType;
    boolean isCustom = type instanceof CustomType;
    boolean isCollection = type instanceof CollectionType;

    String exp = getExpression(path, isCollection);
    List<Object> arguments = new ArrayList<Object>(node.getArguments().size());
    for (String argument : node.getArguments()) {
        Object value = argument;
        if (isPrimitive) {
            value = ((StringRepresentableType) type).fromStringValue((String) value);
        } else if (isCustom) {
            value = ((CustomType) type).stringToObject((String) value);
        } else if (isCollection) {
            value = IntegerType.INSTANCE.fromString((String) value);
        }
        if (value instanceof String) {
            value = toSqlWildcardString((String) value);
        }
        arguments.add(value);
    }
    ComparisonOperator operator = node.getOperator();

    assert arguments.size() >= 1;

    Object firstArgument = arguments.get(0);
    if (operator.equals(RSQLOperators.EQUAL)) {
        if (!isCollection) {
            if (String.class.isInstance(firstArgument) && ((String) firstArgument).contains("%")) {
                return Restrictions.ilike(exp, firstArgument);
            } else {
                return Restrictions.eq(exp, firstArgument);
            }
        } else {
            return Restrictions.sizeEq(exp, (Integer) firstArgument);
        }
    } else if (operator.equals(RSQLOperators.NOT_EQUAL)) {
        if (!isCollection) {
            if (String.class.isInstance(firstArgument) && ((String) firstArgument).contains("%")) {
                return Restrictions.not(Restrictions.ilike(exp, firstArgument));
            } else {
                return Restrictions.ne(exp, firstArgument);
            }
        } else {
            return Restrictions.sizeNe(exp, (Integer) firstArgument);
        }
    } else if (operator.equals(RSQLOperators.GREATER_THAN)) {
        if (!isCollection) {
            return Restrictions.gt(exp, firstArgument);
        } else {
            return Restrictions.sizeGt(exp, (Integer) firstArgument);
        }
    } else if (operator.equals(RSQLOperators.GREATER_THAN_OR_EQUAL)) {
        if (!isCollection) {
            return Restrictions.ge(exp, firstArgument);
        } else {
            return Restrictions.sizeGe(exp, (Integer) firstArgument);
        }
    } else if (operator.equals(RSQLOperators.LESS_THAN)) {
        if (!isCollection) {
            return Restrictions.lt(exp, firstArgument);
        } else {
            return Restrictions.sizeLt(exp, (Integer) firstArgument);
        }
    } else if (operator.equals(RSQLOperators.LESS_THAN_OR_EQUAL)) {
        if (!isCollection) {
            return Restrictions.le(exp, firstArgument);
        } else {
            return Restrictions.sizeLe(exp, (Integer) firstArgument);
        }
    } else if (operator.equals(RSQLOperators.IN)) {
        if (!isCollection) {
            return Restrictions.in(exp, arguments);
        }
    } else if (operator.equals(RSQLOperators.NOT_IN)) {
        if (!isCollection) {
            return Restrictions.not(Restrictions.in(exp, arguments));
        }
    }
    throw new IllegalArgumentException("Unknown operation " + operator.toString() + " for property" + name);
}