Example usage for org.hibernate.criterion Restrictions disjunction

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

Introduction

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

Prototype

public static Disjunction disjunction() 

Source Link

Document

Group expressions together in a single disjunction (A or B or C...).

Usage

From source file:com.inkubator.hrm.dao.impl.PayTempKalkulasiEmpPajakDaoImpl.java

public void doSearchByParam(String searchParameter, Criteria criteria, Long taxComponentId) {
    criteria.createAlias("taxComponent", "taxComponent", JoinType.INNER_JOIN);
    criteria.createAlias("empData", "empData", JoinType.INNER_JOIN);
    criteria.createAlias("empData.bioData", "bioData", JoinType.INNER_JOIN);
    criteria.add(Restrictions.eq("taxComponent.id", taxComponentId));
    if (StringUtils.isNotEmpty(searchParameter)) {
        Disjunction disjunction = Restrictions.disjunction();
        disjunction.add(Restrictions.like("empData.nik", searchParameter, MatchMode.ANYWHERE));
        disjunction.add(Restrictions.like("bioData.firstName", searchParameter, MatchMode.ANYWHERE));
        disjunction.add(Restrictions.like("bioData.lastName", searchParameter, MatchMode.ANYWHERE));
        criteria.add(disjunction);/*from w ww  .j  a v a 2 s .co  m*/
        //            criteria.add(Restrictions.like("bioData.firstName", parameter, MatchMode.ANYWHERE));
    }
    criteria.add(Restrictions.isNotNull("id"));
}

From source file:com.inkubator.hrm.dao.impl.TempAttendanceRealizationDaoImpl.java

private void doSearchPaidOvertimeByParam(PaidOvertimeSearchParameter searchParameter, Criteria criteria) {
    criteria.createAlias("empData", "empData", JoinType.INNER_JOIN);
    criteria.createAlias("empData.bioData", "bioData", JoinType.INNER_JOIN);

    if (StringUtils.isNotBlank(searchParameter.getEmpName())) {
        Disjunction disjunctionName = Restrictions.disjunction();
        disjunctionName/* w  ww .  j  av  a 2s  .co m*/
                .add(Restrictions.like("bioData.firstName", searchParameter.getEmpName(), MatchMode.ANYWHERE));
        disjunctionName
                .add(Restrictions.like("bioData.middleName", searchParameter.getEmpName(), MatchMode.ANYWHERE));
        disjunctionName
                .add(Restrictions.like("bioData.lastName", searchParameter.getEmpName(), MatchMode.ANYWHERE));
        criteria.add(disjunctionName);
    }

    if (StringUtils.isNotBlank(searchParameter.getNik())) {
        criteria.add(Restrictions.like("empData.nik", searchParameter.getNik(), MatchMode.ANYWHERE));
    }
    criteria.add(Restrictions.isNotNull("id"));
}

From source file:com.inkubator.hrm.dao.impl.WtFingerExceptionDaoImpl.java

private void doSearch(WtFingerExceptionSearchParameter searchParameter, Criteria criteria) {
    criteria.createAlias("empData", "empData", JoinType.INNER_JOIN);
    criteria.createAlias("empData.bioData", "bioData", JoinType.INNER_JOIN);
    criteria.createAlias("empData.jabatanByJabatanId", "jabatanByJabatanId", JoinType.INNER_JOIN);

    if (StringUtils.isNotEmpty(searchParameter.getEmpData())) {
        Disjunction disjunction = Restrictions.disjunction();
        disjunction.add(Restrictions.like("bioData.firstName", searchParameter.getEmpData(), MatchMode.START));
        disjunction.add(Restrictions.like("bioData.lastName", searchParameter.getEmpData(), MatchMode.START));
        criteria.add(disjunction);//from   ww  w  .  j av  a 2  s.c om
    }
    if (searchParameter.getNik() != null) {
        criteria.add(Restrictions.like("empData.nik", searchParameter.getNik(), MatchMode.START));
    }
    if (searchParameter.getNamaJabatan() != null) {
        criteria.add(Restrictions.like("jabatanByJabatanId.name", searchParameter.getNamaJabatan(),
                MatchMode.ANYWHERE));
    }
    if (searchParameter.getCodeJabatan() != null) {
        criteria.add(Restrictions.like("jabatanByJabatanId.code", searchParameter.getCodeJabatan(),
                MatchMode.START));
    }
    criteria.add(Restrictions.isNotNull("id"));
}

From source file:com.inkubator.sms.gateway.dao.impl.UserDaoImpl.java

@Override
public SmsGatewayUser getByUserIdOrEmail(String param) {
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    Disjunction disjunction = Restrictions.disjunction();
    disjunction.add(Restrictions.eq("userId", param));
    disjunction.add(Restrictions.eq("emailAddress", param));
    criteria.add(disjunction);// ww w . j  av a 2  s.  co  m
    return (SmsGatewayUser) criteria.uniqueResult();
}

From source file:com.isotrol.impe3.hib.query.FilterSupport.java

License:Open Source License

/**
 * Adds an or criteria./* w  w  w  .  j a v  a  2s .com*/
 * @param c Criteria.
 * @param values The criterions.
 * @return The criteria for method chaining.
 */
public static Criteria or(Criteria c, Criterion... values) {
    boolean added = false;
    final Disjunction d = Restrictions.disjunction();

    for (Criterion value : values) {
        if (value != null) {
            d.add(value);
            added = true;
        }
    }

    if (added) {
        c.add(d);
    }

    return c;
}

From source file:com.itrus.ca.common.service.BaseService.java

License:Open Source License

protected static Junction dataScopeFilterByWorkDealInfo(User user, String Alias, String office) {

    // ????/*w  w w.  ja v a 2  s  . c  om*/
    List<String> dataScope = Lists.newArrayList();
    Junction junction = Restrictions.disjunction();
    // ???
    if (!user.isAdmin()) {
        for (Role r : user.getRoleList()) {
            if (!dataScope.contains(r.getDataScope()) && StringUtils.isNotBlank(Alias)) {
                boolean isDataScopeAll = false;
                if (Role.DATA_SCOPE_ALL.equals(r.getDataScope())) {
                    isDataScopeAll = true;
                } else if (Role.DATA_SCOPE_COMPANY_AND_CHILD.equals(r.getDataScope())) {
                    junction.add(Restrictions.eq(office, user.getCompany().getId()));
                    junction.add(Restrictions.like(Alias,
                            user.getCompany().getParentIds() + user.getCompany().getId() + ",%"));
                } else if (Role.DATA_SCOPE_COMPANY.equals(r.getDataScope())) {
                    junction.add(Restrictions.eq(Alias, user.getCompany().getId()));
                    //                  junction.add(Restrictions.and(Restrictions.eq(Alias+".parent.id", user.getCompany().getId()),
                    //                        Restrictions.eq(Alias+".type", "2"))); // ?
                } else if (Role.DATA_SCOPE_OFFICE_AND_CHILD.equals(r.getDataScope())) {
                    junction.add(Restrictions.eq(office, user.getOffice().getId()));
                    junction.add(Restrictions.like(Alias,
                            user.getOffice().getParentIds() + user.getOffice().getId() + ",%"));
                } else if (Role.DATA_SCOPE_OFFICE.equals(r.getDataScope())) {
                    junction.add(Restrictions.eq(office, user.getOffice().getId()));
                } else if (Role.DATA_SCOPE_CUSTOM.equals(r.getDataScope())) {
                    junction.add(Restrictions.in(office, r.getOfficeIdList()));
                }
                //else if (Role.DATA_SCOPE_SELF.equals(r.getDataScope())){
                if (isDataScopeAll) {
                    // ?????
                    junction = Restrictions.disjunction();
                    break;
                }
                dataScope.add(r.getDataScope());
            }
        }
    }
    return junction;
}

From source file:com.jacobheric.youbrew.dao.impl.ExpenseDAOImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
public List<Expense> search(ExpenseCriteria expenseCriteria) {

    Criteria c = this.getSessionFactory().getCurrentSession().createCriteria(Expense.class);

    //// w  w w . ja v a2 s .  com
    //Property restrictions
    if (expenseCriteria.getQuery() != null) {
        Disjunction d = Restrictions.disjunction();

        d.add(Restrictions.like("name", expenseCriteria.getQuery().trim(), MatchMode.ANYWHERE));
        d.add(Restrictions.like("tasteNotes", expenseCriteria.getQuery().trim(), MatchMode.ANYWHERE));
        d.add(Restrictions.like("brewNotes", expenseCriteria.getQuery().trim(), MatchMode.ANYWHERE));

        c.add(d);
    }

    //
    //Determine the total before limiting (useful for paging)
    c.setProjection(Projections.rowCount());
    expenseCriteria.setTotal(((Integer) c.uniqueResult()).intValue());
    c.setProjection(null);
    c.setResultTransformer(Criteria.ROOT_ENTITY);

    //
    //Start & limit grid page restrictions
    if (expenseCriteria.getStart() != null) {
        c.setFirstResult(expenseCriteria.getStart());
    }

    if (expenseCriteria.getLimit() != null) {
        c.setMaxResults(expenseCriteria.getLimit());
    }

    return c.list();
}

From source file:com.jacobheric.youbrew.dao.impl.RecipeDAOImpl.java

License:Open Source License

/**
 * @param recipeCriteria - custom criteria object
 * @return list of recipe criteria//from  w  w  w  .  jav a2s.c  o  m
 */
@SuppressWarnings("unchecked")
public List<Recipe> search(RecipeCriteria recipeCriteria) {

    Criteria c = this.getSessionFactory().getCurrentSession().createCriteria(Recipe.class);

    //
    //Property restrictions
    if (recipeCriteria.getQuery() != null) {
        Disjunction d = Restrictions.disjunction();

        d.add(Restrictions.like("name", recipeCriteria.getQuery().trim(), MatchMode.ANYWHERE));
        d.add(Restrictions.like("tasteNotes", recipeCriteria.getQuery().trim(), MatchMode.ANYWHERE));
        d.add(Restrictions.like("brewNotes", recipeCriteria.getQuery().trim(), MatchMode.ANYWHERE));

        c.add(d);
    }

    //
    //Determine the total before limiting (useful for paging)
    c.setProjection(Projections.rowCount());
    recipeCriteria.setTotal(((Integer) c.uniqueResult()).intValue());
    c.setProjection(null);
    c.setResultTransformer(Criteria.ROOT_ENTITY);

    //
    //Start & limit grid page restrictions
    if (recipeCriteria.getStart() != null) {
        c.setFirstResult(recipeCriteria.getStart());
    }

    if (recipeCriteria.getLimit() != null) {
        c.setMaxResults(recipeCriteria.getLimit());
    }

    return c.list();
}

From source file:com.jaspersoft.jasperserver.api.engine.scheduling.hibernate.HibernateReportJobsPersistenceService.java

License:Open Source License

protected List getJobsByID(List<ReportJobIdHolder> jobIDList) {
    HibernateTemplate hibernateTemplate = getHibernateTemplate();
    DetachedCriteria crit = DetachedCriteria.forClass(PersistentReportJob.class);
    Disjunction criterion = Restrictions.disjunction();
    for (ReportJobIdHolder idHolder : jobIDList)
        criterion.add(Restrictions.eq("id", idHolder.getId()));
    crit.add(criterion);//from   w ww .  j  a  v a 2s .c om
    List persistentJobs = hibernateTemplate.findByCriteria(crit);
    return persistentJobs;
}

From source file:com.jaspersoft.jasperserver.api.engine.scheduling.hibernate.HibernateReportJobsPersistenceService.java

License:Open Source License

protected List getJobs(List<ReportJob> jobIDList) {
    HibernateTemplate hibernateTemplate = getHibernateTemplate();
    DetachedCriteria crit = DetachedCriteria.forClass(PersistentReportJob.class);
    Disjunction criterion = Restrictions.disjunction();
    for (ReportJob idHolder : jobIDList)
        criterion.add(Restrictions.eq("id", idHolder.getId()));
    crit.add(criterion);//w w  w  . j ava2s .  c  o m
    List persistentJobs = hibernateTemplate.findByCriteria(crit);
    return persistentJobs;
}