Example usage for org.hibernate.criterion Restrictions not

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

Introduction

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

Prototype

public static Criterion not(Criterion expression) 

Source Link

Document

Return the negation of an expression

Usage

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

private void doSearchByParam(Long companyId, EmpDataSearchParameter dataSearchParameter, Criteria criteria) {

    /**/*from w  w w .  j ava  2 s.  com*/
     * automatically get relations of jabatanByJabatanId, department,
     * company don't create alias for that entity, or will get error :
     * duplicate association path
     */
    criteria = this.addJoinRelationsOfCompanyId(criteria, companyId);
    criteria.add(Restrictions.not(Restrictions.eq("status", HRMConstant.EMP_TERMINATION)));
    criteria.createAlias("wtGroupWorking", "wtGroupWorking", JoinType.INNER_JOIN);
    if (dataSearchParameter.getJabatanKode() != null) {
        criteria.add(Restrictions.like("jabatanByJabatanId.code", dataSearchParameter.getJabatanKode(),
                MatchMode.START));
    }

    if (dataSearchParameter.getJabatanName() != null) {
        criteria.add(Restrictions.like("jabatanByJabatanId.name", dataSearchParameter.getJabatanName(),
                MatchMode.ANYWHERE));
    }

    if (dataSearchParameter.getNIK() != null) {
        criteria.add(Restrictions.like("nik", dataSearchParameter.getNIK(), MatchMode.START));
    }
    criteria.createAlias("bioData", "bioData", JoinType.INNER_JOIN);
    if (dataSearchParameter.getName() != null) {
        //            Disjunction disjunction = Restrictions.disjunction();
        //            disjunction.add(Restrictions.like("bioData.firstName", dataSearchParameter.getName(), MatchMode.START));
        //            disjunction.add(Restrictions.like("bioData.lastName", dataSearchParameter.getName(), MatchMode.START));
        //            criteria.add(disjunction);
        criteria.add(Restrictions.ilike("bioData.combineName", dataSearchParameter.getName().toLowerCase(),
                MatchMode.ANYWHERE));
    }
}

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

@Override
public List<EmpData> getAllDataByNameOrNik(String param, Long companyId) {
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    /**/*from  ww w .  j a va  2  s.  c  o  m*/
     * automatically get relations of jabatanByJabatanId, department,
     * company don't create alias for that entity, or will get error :
     * duplicate association path
     */
    criteria = this.addJoinRelationsOfCompanyId(criteria, companyId);
    //criteria.add(Restrictions.neOrIsNotNull("status", HRMConstant.EMP_TERMINATION));
    criteria.add(Restrictions.isNotNull("status"));
    criteria.add(Restrictions
            .not(Restrictions.in("status", Arrays.asList(HRMConstant.EMP_TERMINATION, HRMConstant.EMP_DISCHAGED,
                    HRMConstant.EMP_LAID_OFF, HRMConstant.EMP_STOP_CONTRACT, HRMConstant.EMP_PENSION))));

    criteria.createAlias("bioData", "bioData", JoinType.INNER_JOIN);
    Disjunction disjunction = Restrictions.disjunction();
    disjunction.add(Restrictions.like("bioData.firstName", param, MatchMode.ANYWHERE));
    disjunction.add(Restrictions.like("bioData.lastName", param, MatchMode.ANYWHERE));
    disjunction.add(Restrictions.like("nik", param, MatchMode.ANYWHERE));
    criteria.add(disjunction);
    criteria.setMaxResults(20);
    return criteria.list();
}

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

@Override
public List<EmpData> getAllDataByNameOrNik(String param) {
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    //criteria.add(Restrictions.neOrIsNotNull("status", HRMConstant.EMP_TERMINATION));
    criteria.add(Restrictions.isNotNull("status"));
    criteria.add(Restrictions
            .not(Restrictions.in("status", Arrays.asList(HRMConstant.EMP_TERMINATION, HRMConstant.EMP_DISCHAGED,
                    HRMConstant.EMP_LAID_OFF, HRMConstant.EMP_STOP_CONTRACT, HRMConstant.EMP_PENSION))));

    criteria.createAlias("bioData", "bioData", JoinType.INNER_JOIN);
    Disjunction disjunction = Restrictions.disjunction();
    disjunction.add(Restrictions.like("bioData.firstName", param, MatchMode.ANYWHERE));
    disjunction.add(Restrictions.like("bioData.lastName", param, MatchMode.ANYWHERE));
    disjunction.add(Restrictions.like("nik", param, MatchMode.ANYWHERE));
    criteria.add(disjunction);/*from ww  w .  jav  a2s  .c  o m*/
    criteria.setMaxResults(20);
    return criteria.list();
}

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

@Override
public List<EmpData> getTotalBySearchEmployee(PlacementOfEmployeeWorkScheduleModel model) {
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    /**/*ww  w . j a  v  a2  s . c o m*/
     * automatically get relations of jabatanByJabatanId, department,
     * company don't create alias for that entity, or will get error :
     * duplicate association path
     */
    //        criteria = this.addJoinRelationsOfCompanyId(criteria, HrmUserInfoUtil.getCompanyId());
    criteria.add(Restrictions.neOrIsNotNull("status", HRMConstant.EMP_TERMINATION));

    criteria.createAlias("wtGroupWorking", "wg", JoinType.LEFT_OUTER_JOIN);
    criteria.createAlias("employeeType", "empType", JoinType.INNER_JOIN);
    criteria.createAlias("bioData", "bio", JoinType.INNER_JOIN);
    criteria.createAlias("golonganJabatan", "goljab", JoinType.INNER_JOIN);
    //ambil yg working groupnya bukan yg dipilih, dan belum punya working group
    if (model.getWorkingGroupId() != 0 || model.getWorkingGroupId() != null) {
        Disjunction disjunction = Restrictions.disjunction();
        disjunction.add(Restrictions.isNull("wtGroupWorking"));
        disjunction.add(Restrictions.not(Restrictions.eq("wg.id", model.getWorkingGroupId())));
        criteria.add(disjunction);
    }
    //departermen equal or like
    if (model.getDepartmentLikeOrEqual() != 3) {
        if (Objects.equals(model.getDepartmentLikeOrEqual(), HRMConstant.DEPARTMENT_EQUAL)) {
            criteria.add(Restrictions.eq("department.departmentName", model.getDepartmentName()));
        } else {
            criteria.add(Restrictions.like("department.departmentName", model.getDepartmentName(),
                    MatchMode.ANYWHERE));
        }
    }
    //employee type equal or like
    if (model.getEmployeeTypeLikeOrEqual() != 3) {
        if (Objects.equals(model.getEmployeeTypeLikeOrEqual(), HRMConstant.EMPLOYEE_TYPE_EQUAL)) {
            criteria.add(Restrictions.eq("empType.name", model.getEmployeeTypeName()));
        } else {
            criteria.add(Restrictions.like("empType.name", model.getEmployeeTypeName(), MatchMode.ANYWHERE));
        }
    }
    //gender
    criteria.add(Restrictions.eq("bio.gender", model.getGender()));
    //goljab
    if (model.getGolonganJabatanId() != 0) {
        criteria.add(Restrictions.eq("goljab.id", model.getGolonganJabatanId()));
    }

    String sortBy;
    if (Objects.equals(model.getSortBy(), HRMConstant.SORT_BY_NIK)) {
        sortBy = "nik";
    } else {
        sortBy = "bio.firstName";
    }

    if (Objects.equals(model.getOrderBy(), HRMConstant.ORDER_BY_ASC)) {
        criteria.addOrder(Order.asc(sortBy));
    } else {
        criteria.addOrder(Order.desc(sortBy));
    }
    return criteria.list();
}

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

@Override
public List<String> getAllNikBetween(String from, String until) {
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    /**//from  ww w  .  j  a  v a 2s. co  m
     * automatically get relations of jabatanByJabatanId, department,
     * company don't create alias for that entity, or will get error :
     * duplicate association path
     */
    criteria = this.addJoinRelationsOfCompanyId(criteria, HrmUserInfoUtil.getCompanyId());
    criteria.add(Restrictions.not(Restrictions.eq("status", HRMConstant.EMP_TERMINATION)));

    criteria.add(Restrictions.ge("nik", from));
    criteria.add(Restrictions.le("nik", until));
    criteria.setProjection(Projections.property("nik"));
    return criteria.list();
}

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

@Override
public List<EmpData> getAllDataNotTerminate() {
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    /**//from w ww . java  2s.  c o m
     * automatically get relations of jabatanByJabatanId, department,
     * company don't create alias for that entity, or will get error :
     * duplicate association path
     */
    criteria = this.addJoinRelationsOfCompanyId(criteria, HrmUserInfoUtil.getCompanyId());
    criteria.add(Restrictions.not(Restrictions.eq("status", HRMConstant.EMP_TERMINATION)));
    return criteria.list();
}

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

@Override
public List<EmpData> getAllDataNotTerminateWithSearchParameter(String nikOrName) {
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    /**/*from   w  ww . j  a v a 2s.  c o  m*/
     * automatically get relations of jabatanByJabatanId, department,
     * company don't create alias for that entity, or will get error :
     * duplicate association path
     */
    criteria = this.addJoinRelationsOfCompanyId(criteria, HrmUserInfoUtil.getCompanyId());
    criteria.add(Restrictions.not(Restrictions.eq("status", HRMConstant.EMP_TERMINATION)));
    criteria.createAlias("bioData", "bioData", JoinType.INNER_JOIN);
    if (nikOrName != null) {
        Disjunction disjunction = Restrictions.disjunction();
        disjunction.add(Restrictions.ilike("bioData.combineName", nikOrName.toLowerCase(), MatchMode.ANYWHERE));
        disjunction.add(Restrictions.like("nik", nikOrName, MatchMode.ANYWHERE));
        criteria.add(disjunction);
    }
    return criteria.list();
}

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

@Override
public List<EmpData> getAllDataWithoutJoinCompany(String nikOrName) {
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    criteria.add(Restrictions.not(Restrictions.eq("status", HRMConstant.EMP_TERMINATION)));

    if (StringUtils.isNotEmpty(nikOrName)) {
        criteria.createAlias("bioData", "bioData", JoinType.INNER_JOIN);
        Disjunction disjunction = Restrictions.disjunction();
        disjunction.add(Restrictions.ilike("bioData.combineName", nikOrName.toLowerCase(), MatchMode.ANYWHERE));
        disjunction.add(Restrictions.like("nik", nikOrName, MatchMode.ANYWHERE));
        criteria.add(disjunction);/*from ww w .  j  a  v  a2 s . c o m*/
    }
    return criteria.list();
}

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

@Override
public Long getTotalEmpDataNotTerminate() {
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    /**//from w  w w.  ja  v  a 2  s . c o  m
     * automatically get relations of jabatanByJabatanId, department,
     * company don't create alias for that entity, or will get error :
     * duplicate association path
     */
    criteria = this.addJoinRelationsOfCompanyId(criteria, HrmUserInfoUtil.getCompanyId());
    criteria.add(Restrictions.not(Restrictions.eq("status", HRMConstant.EMP_TERMINATION)));

    return (Long) criteria.setProjection(Projections.rowCount()).uniqueResult();
}

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

@Override
public Long getTotalByTaxFreeIsNull() {
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    /**//from  www. j ava 2 s  .  c  o  m
     * automatically get relations of jabatanByJabatanId, department,
     * company don't create alias for that entity, or will get error :
     * duplicate association path
     */
    criteria = this.addJoinRelationsOfCompanyId(criteria, HrmUserInfoUtil.getCompanyId());
    criteria.add(Restrictions.not(Restrictions.eq("status", HRMConstant.EMP_TERMINATION)));

    criteria.add(Restrictions.isNull("taxFree"));
    return (Long) criteria.setProjection(Projections.rowCount()).uniqueResult();
}