Example usage for org.hibernate.criterion DetachedCriteria add

List of usage examples for org.hibernate.criterion DetachedCriteria add

Introduction

In this page you can find the example usage for org.hibernate.criterion DetachedCriteria add.

Prototype

public DetachedCriteria add(Criterion criterion) 

Source Link

Document

Add a restriction

Usage

From source file:com.callcenter.controller.command.Whom.java

License:Apache License

public void addSearchFilter(DetachedCriteria criteria) {
    String actualNumber = number.replaceAll("\\*", "%").replaceAll("\\?", "_");
    if (type == Whom.Type.TO_AND_FROM) {
        criteria.add(
                Restrictions.or(Restrictions.ilike(Constants.CallRecord.CALLED_ID_PROPERTY_NAME, actualNumber),
                        Restrictions.ilike(Constants.CallRecord.CALLER_ID_PROPERTY_NAME, actualNumber)));
        return;/* w  w  w  .ja v  a2  s .  c o m*/
    }
    if (type == Whom.Type.TO) {
        criteria.add(Restrictions.ilike(Constants.CallRecord.CALLED_ID_PROPERTY_NAME, actualNumber));
        return;
    }
    criteria.add(Restrictions.ilike(Constants.CallRecord.CALLER_ID_PROPERTY_NAME, actualNumber));
}

From source file:com.cimmyt.model.dao.impl.CompanyDAOImpl.java

License:Apache License

/**
 * /*from   w  w  w  .ja  va2  s  .c  o m*/
 * @param criteria
 * @param companyFilter
 */
protected void buildCriteria(DetachedCriteria criteria, Company companyFilter) {
    if (companyFilter.getIdCompany() != null) {
        criteria.add(Restrictions.eq("idCompany", companyFilter.getIdCompany()));
    }

    if (companyFilter.getName() != null && companyFilter.getName().trim().length() > 0) {
        criteria.add(Restrictions.like("name", "%" + companyFilter.getName() + "%"));
    }
}

From source file:com.cimmyt.model.dao.impl.InvestigatorDAOImpl.java

License:Apache License

@Override
protected void buildCriteria(DetachedCriteria criteria, Investigator filter) {
    // TODO Auto-generated method stub
    if (filter.getInvestigatorid() != null) {
        criteria.add(Restrictions.eq("investigatorid", filter.getInvestigatorid()));
    }/*ww  w  .  j a v  a2 s  .c  om*/

    if (filter.getInvest_name() != null && !filter.getInvest_name().isEmpty()) {
        criteria.add(Restrictions.like("invest_name", "%" + filter.getInvest_name() + "%"));
    }

    if (filter.isStatus())
        criteria.add(Restrictions.eq("status", filter.isStatus()));
}

From source file:com.cimmyt.model.dao.impl.LabStudyDAOImpl.java

License:Apache License

@Override
protected void buildCriteria(DetachedCriteria criteria, LabStudy filter) {
    if (filter.getLabstudyid() != null) {
        criteria.add(Restrictions.eq("labstudyid", filter.getLabstudyid()));
    }//from w  w w  . j a v  a 2  s.com

    if (filter.getInvestigatorid() != null) {
        criteria.add(Restrictions.eq("investigatorid", filter.getInvestigatorid()));
    }

    if (StrUtils.notEmpty(filter.getTitle())) {
        criteria.add(Restrictions.like("title", "%" + filter.getTitle() + "%"));
    }
}

From source file:com.cimmyt.model.dao.impl.LabStudyDAOImpl.java

License:Apache License

@Override
protected void buildCriteria(DetachedCriteria criteria, LabStudy filter, Integer id) {
    criteria.createAlias("studytemplateid", "tmplate", CriteriaSpecification.LEFT_JOIN)
            .createAlias("status", "st", CriteriaSpecification.LEFT_JOIN)
            .createAlias("project", "proj", CriteriaSpecification.LEFT_JOIN)
            .createAlias("investigatorid", "invest", CriteriaSpecification.LEFT_JOIN);

    if (filter != null && filter.getLabstudyid() != null) {
        criteria.add(Restrictions.eq("labstudyid", filter.getLabstudyid()));
    }/*ww  w  .  j av a  2s.c  om*/

    if (idstRol != null) {
        switch (idstRol) {
        case ConstantsDNA.ROLE_RESEARCHER:
        case ConstantsDNA.ROLE_RESEARCHER_ASSISTENT:
        case ConstantsDNA.ROLE_ASSISTENT:
            if (filter != null && filter.getInvestigatorid() != null) {
                criteria.add(Restrictions.eq("investigatorid.investigatorid", filter.getInvestigatorid()));
            }
            if (id != null) {
                if (id.intValue() > 0)
                    criteria.add(Restrictions.eq("investigatorid.investigatorid", id));
            }
            break;
        }
    } else {
        if (filter != null && filter.getInvestigatorid() != null) {
            criteria.add(Restrictions.eq("investigatorid.investigatorid", filter.getInvestigatorid()));
        }
    }

    if (filter != null && StrUtils.notEmpty(filter.getTitle())) {
        criteria.add(Restrictions.like("title", "%" + filter.getTitle() + "%"));
    }

    if (filter != null && StrUtils.notEmpty(filter.getPrefix())) {
        criteria.add(Restrictions.like("prefix", filter.getPrefix(), MatchMode.ANYWHERE));
    }

    criteria.addOrder(Order.desc("labstudyid"));
}

From source file:com.cimmyt.model.dao.impl.LabStudyDAOImpl.java

License:Apache License

private void addCriteria(DetachedCriteria criteria, List<DsSearchParam> params,
        boolean useSampleDetailFilters) {
    boolean hasAND = false;
    boolean hasOR = false;

    List<DsSearchParam> paramList = new ArrayList<DsSearchParam>(params);

    criteria.createAlias("project", VALUE_PROJECT)
            .createAlias("investigatorid", "investigator", CriteriaSpecification.LEFT_JOIN)
            .createAlias("season", "season", CriteriaSpecification.LEFT_JOIN)
            .createAlias("location", "location", CriteriaSpecification.LEFT_JOIN);

    if (useSampleDetailFilters)
        criteria.createAlias("sampleDetailCollection", VALUE_SAMPLE, CriteriaSpecification.INNER_JOIN);

    //separates 'OR' from other operators, to use in disjunction
    List<DsSearchParam> orParams = new ArrayList<DsSearchParam>();
    for (DsSearchParam p : paramList) {
        if (p.getOperator().equals(TypeCondition.OR)) {
            orParams.add(p);//from w  w w.  j  av  a  2s .c om
        }
    }
    paramList.removeAll(orParams);

    String qualifiedParam = null;
    Conjunction conjunction = Restrictions.conjunction();

    for (DsSearchParam param : paramList) {
        hasAND = true;

        qualifiedParam = param.getQualifier();
        DataType dataType = OperatorImp.getType(param.getElement(), param.getQualifier());
        Operator condition = OperatorImp.valueOf(param.getCondition());

        addDynamicCriterion(conjunction, condition, dataType, qualifiedParam, param.getValue());
    }

    Disjunction disjunction = Restrictions.disjunction();
    for (DsSearchParam param : orParams) {
        hasOR = true;

        qualifiedParam = param.getQualifier();
        DataType dataType = OperatorImp.getType(param.getElement(), param.getQualifier());
        Operator condition = OperatorImp.valueOf(param.getCondition());

        addDynamicCriterion(disjunction, condition, dataType, qualifiedParam, param.getValue());
    }

    if (hasAND) {
        if (hasOR) {
            criteria.add(Restrictions.or(conjunction, disjunction));
        } else {
            criteria.add(conjunction);
        }
    } else if (hasOR) {
        criteria.add(disjunction);
    }
}

From source file:com.cimmyt.model.dao.impl.LabStudyDAOImpl.java

License:Apache License

private void addCurrentSampleFilters(DetachedCriteria criteria, List<Integer> studyIdList) {
    if (studyIdList != null) {
        if (studyIdList.size() > 0)
            criteria.add(Restrictions.in("labstudyid", studyIdList));
        else//from   w w  w .  j  a  v  a 2 s .  com
            criteria.add(Restrictions.isNull("labstudyid"));
    }
}

From source file:com.cimmyt.model.dao.impl.LocationCatalogDAOImpl.java

License:Apache License

@Override
protected void buildCriteria(DetachedCriteria criteria, LocationCatalog filter) {
    // TODO Auto-generated method stub
    if (filter.getLocationid() != null) {
        criteria.add(Restrictions.eq("locationid", filter.getLocationid()));
    }//from ww  w  .j  a va  2 s  .  c om

    if (filter.getLocation_name() != null && !filter.getLocation_name().isEmpty()) {
        criteria.add(Restrictions.like("location_name", "%" + filter.getLocation_name() + "%"));
    }
}

From source file:com.cimmyt.model.dao.impl.MethodMixtureDAOImpl.java

License:Apache License

@Override
protected void buildCriteria(DetachedCriteria criteria, MixtureMethod filter) {
    if (filter != null) {
        if (filter.getDescription() != null && !filter.getDescription().equals("")) {
            criteria.add(Restrictions.eq("description", filter.getDescription()));
        }//www  .jav  a 2 s.  co  m
        if (filter.getMixtureMethodId() > 0) {
            criteria.add(Restrictions.eq("mixtureMethodId", filter.getMixtureMethodId()));
        }
    }

}

From source file:com.cimmyt.model.dao.impl.ProjectDAOImpl.java

License:Apache License

@Override
protected void buildCriteria(DetachedCriteria criteria, Project filter) {
    if (filter.getProjectid() != null) {
        criteria.add(Restrictions.eq("projectid", filter.getProjectid()));
    }/*from www  .  ja v a  2 s .  c om*/
    if (filter.getProjectname() != null && !filter.getProjectname().isEmpty()) {
        criteria.add(Restrictions.like("projectname", "%" + filter.getProjectname() + "%"));
    }
    if (filter.getProjectdescription() != null && !filter.getProjectdescription().isEmpty()) {
        criteria.add(Restrictions.like("projectdescription", "%" + filter.getProjectdescription() + "%"));
    }
    if (filter.getPurposename() != null && !filter.getPurposename().isEmpty()) {
        criteria.add(Restrictions.like("purposename", "%" + filter.getPurposename() + "%"));
    }
    if (filter.getPurposedescription() != null && !filter.getPurposedescription().isEmpty()) {
        criteria.add(Restrictions.like("purposedescription", "%" + filter.getPurposedescription() + "%"));
    }
    criteria.addOrder(Order.desc("projectid"));
}