Example usage for org.hibernate.criterion Restrictions neOrIsNotNull

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

Introduction

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

Prototype

public static Criterion neOrIsNotNull(String propertyName, Object value) 

Source Link

Document

Apply a "not equal" constraint to the named property.

Usage

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

@Override
public List<EmpData> getEmployeeByOtSearchParameter(DistributionOvetTimeModel model) {
    DetachedCriteria listEmp = DetachedCriteria.forClass(OverTimeDistribution.class)
            .setProjection(Property.forName("empData.id"))
            .createAlias("wtOverTime", "wtOverTime", JoinType.INNER_JOIN)
            .add(Restrictions.eq("wtOverTime.id", model.getOverTimeId()));
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    /**/*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.neOrIsNotNull("status", HRMConstant.EMP_TERMINATION));

    criteria.createAlias("overTimeDistributions", "ot", JoinType.LEFT_OUTER_JOIN);
    criteria.createAlias("ot.wtOverTime", "wt", JoinType.LEFT_OUTER_JOIN);
    criteria.createAlias("employeeType", "empType", JoinType.INNER_JOIN);
    criteria.createAlias("bioData", "bio", JoinType.INNER_JOIN);
    criteria.add(Property.forName("id").notIn(listEmp));
    //        criteria.createAlias("golonganJabatan", "goljab", JoinType.INNER_JOIN);
    /*if (model.getOverTimeId() != 0 || model.getOverTimeId() != null) {
            
    Criterion andCondition = Restrictions.conjunction()
            .add(Restrictions.isNotNull("ot.empData"))
            .add(Restrictions.not(Restrictions.eq("wt.id", model.getOverTimeId())));
            
    //                   criteria.add(Restrictions.isNull("ot.empData"));
    Criterion completeCondition
            = Restrictions.disjunction().add(andCondition)
            .add(Restrictions.isNull("ot.empData"));
            
    //            Disjunction conjunction = Restrictions.conjunction();
    //            disjunction.add(Restrictions.isNotNull("ot.empData"));
    //            disjunction.add(Restrictions.not(Restrictions.eq("ot.wtOverTime.id", model.getOverTimeId())));
    criteria.add(completeCondition);
    }*/
    //balance
    //        if (model.getStartBalance() != 0.0){
    //            criteria.add(Restrictions.eq("lv.balance", model.getStartBalance()));
    //        }
    //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 likeS
    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));
    }
    criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
    return criteria.list();
}

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

/**
 * automatically get relations of jabatanByJabatanId, department, company
 * don't create alias for that entity, or will get error : duplicate
 * association path// w ww  . j a  v a  2s. c  o  m
 */
/*
criteria = this.addJoinRelationsOfCompanyId(criteria, HrmUserInfoUtil.getCompanyId());
criteria.add(Restrictions.neOrIsNotNull("status", HRMConstant.EMP_TERMINATION));
        
//    criteria.createAlias("leaveDistributions", "lv", 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);
criteria.add(Property.forName("id").notIn(listEmp));
//ambil yg working groupnya bukan yg dipilih, dan belum punya working group
//    if (model.getLeaveSchemeId() != 0 || model.getLeaveSchemeId() != null) {
//        Disjunction disjunction = Restrictions.disjunction();
//        disjunction.add(Restrictions.isNull("lv.empData"));
//        disjunction.add(Restrictions.not(Restrictions.eq("lv.leave.id", model.getLeaveSchemeId())));
//        criteria.add(disjunction);
//    }
*/ @Override
public List<EmpData> getEmployeeBySearchEmployeePermit(PermitDistributionModel model) {
    DetachedCriteria listEmp = DetachedCriteria.forClass(PermitDistribution.class)
            .setProjection(Property.forName("empData.id"))
            .createAlias("permitClassification", "pc", JoinType.INNER_JOIN)
            .add(Restrictions.eq("pc.id", model.getPermitId()));
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    /**
     * 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("permitDistributions", "lv", 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);
    criteria.add(Property.forName("id").notIn(listEmp));
    //ambil yg working groupnya bukan yg dipilih, dan belum punya working group
    /*if (model.getPermitId() != 0 || model.getPermitId() != null) {
     Disjunction disjunction = Restrictions.disjunction();
     disjunction.add(Restrictions.isNull("permitDistributions"));
     disjunction.add(Restrictions.not(Restrictions.eq("lv.permitClassification.id", model.getPermitId())));
     //disjunction.add(Restrictions.sqlRestriction(sql, values, types));
     criteria.add(disjunction);
     }*/
    //balance
    //        if (model.getStartBalance() != 0.0){
    //            criteria.add(Restrictions.eq("lv.balance", model.getStartBalance()));
    //        }
    //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 likeS
    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));
    }
    criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
    return criteria.list();
}

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

public List<EmpData> getEmployeeBySearchEmployeeFingerException(WtFingerExceptionModel model) {
    Criteria criteria = getCurrentSession().createCriteria(getEntityClass());
    /**//from   w  ww. 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("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.getLeaveSchemeId() != 0 || model.getLeaveSchemeId() != null) {
    //            Disjunction disjunction = Restrictions.disjunction();
    //            disjunction.add(Restrictions.isNull("lv.empData"));
    //            disjunction.add(Restrictions.not(Restrictions.eq("lv.leave.id", model.getLeaveSchemeId())));
    //            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 likeS
    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.itrus.ca.modules.sys.service.OfficeService.java

License:Open Source License

public List<Office> findByParentId(Long areaId) {
    DetachedCriteria dc = officeDao.createDetachedCriteria();
    if (areaId == null) {
        return null;
    }//from  ww  w.  j a v  a2  s.c o  m
    if (areaId != null) {

        if (StringUtils.isNotEmpty(areaId.toString())) {
            dc.add(Restrictions.eq("parent.id", areaId));
        } else {
            return null;
        }
    }
    dc.add(Restrictions.neOrIsNotNull("type", "1"));
    dc.add(Restrictions.eq("delFlag", Office.DEL_FLAG_NORMAL));
    dc.addOrder(Order.asc("code"));
    dc.addOrder(Order.desc("id"));
    return officeDao.find(dc);
}

From source file:com.itrus.ca.modules.sys.service.OfficeService.java

License:Open Source License

public List<Office> findByParentIds(List<Long> areaIds) {
    DetachedCriteria dc = officeDao.createDetachedCriteria();
    if (areaIds == null) {
        return null;
    }/*from  www .ja v a 2s  .  co m*/
    if (areaIds != null) {

        if (StringUtils.isNotEmpty(areaIds.toString())) {
            dc.add(Restrictions.in("parent.id", areaIds));
        } else {
            return null;
        }
    }
    dc.add(Restrictions.neOrIsNotNull("type", "1"));
    dc.add(Restrictions.eq("delFlag", Office.DEL_FLAG_NORMAL));
    dc.addOrder(Order.asc("code"));
    dc.addOrder(Order.desc("id"));
    return officeDao.find(dc);
}

From source file:kltn.dao.ATMLocationDAO.java

public List<AtmLocation> findByGeocodingStatus(char status) {
    Session session = HibernateUtil.getSessionFactory().openSession();
    List<AtmLocation> list = null;
    Transaction tx = null;/*from   w ww  . jav a 2s  .c  o  m*/
    try {

        tx = session.beginTransaction();
        Criteria cr = session.createCriteria(AtmLocation.class);
        if (status == '1') {
            cr.add(Restrictions.neOrIsNotNull("latd", ""));
        } else if (status == '0') {
            cr.add(Restrictions.eqOrIsNull("latd", ""));
        }
        cr.addOrder(Order.asc("id"));
        list = cr.list();
        tx.commit();
    } catch (HibernateException he) {
        if (tx != null && tx.isActive()) {
            tx.rollback();
        }
    } finally {
        session.close();
    }
    return list;
}

From source file:kltn.dao.ATMLocationDAO.java

public List<AtmLocation> filter(String province, String district, String precinct, String bank) {
    Session session = HibernateUtil.getSessionFactory().openSession();
    List<AtmLocation> list = null;
    Transaction tx = null;//ww  w  .j a v a2  s  .co  m
    try {

        tx = session.beginTransaction();
        Criteria cr = session.createCriteria(AtmLocation.class);
        if (!province.isEmpty()) {
            cr.add(Restrictions.eq("provinceCity", province).ignoreCase());
        }
        if (!district.isEmpty()) {
            cr.add(Restrictions.eq("district", district).ignoreCase());
        }
        if (!precinct.isEmpty()) {
            cr.add(Restrictions.eq("precinct", precinct).ignoreCase());
        }
        if (!bank.isEmpty()) {
            cr.add(Restrictions.eq("bank", bank).ignoreCase());
        }
        //            Disjunction dis = Restrictions.disjunction();
        //            for (String bank:banks)
        //                dis.add(Restrictions.eq("bank", bank));
        //            cr.add(dis);
        cr.add(Restrictions.neOrIsNotNull("latd", ""));
        cr.addOrder(Order.asc("id"));

        list = cr.list();
        tx.commit();
    } catch (HibernateException he) {
        if (tx != null && tx.isActive()) {
            tx.rollback();
        }
    }
    return list;
}

From source file:kltn.dao.ATMLocationDAO.java

public List<AtmLocation> find10NeareastATM(String lat1, String long1, String bank, char type) {
    Session session = HibernateUtil.getSessionFactory().openSession();
    List<AtmLocation> list = new ArrayList();
    Criteria cr = session.createCriteria(AtmLocation.class);
    cr.add(Restrictions.neOrIsNotNull("latd", ""));
    if (type == '0') {
        list = cr.list();/*from   w  ww  . j  a  v a 2 s .co  m*/
        for (AtmLocation atm : list) {
            atm.setDistance(Utils.distance(Double.parseDouble(lat1), Double.parseDouble(long1),
                    Double.parseDouble(atm.getLatd()), Double.parseDouble(atm.getLongd())));
        }
        for (int i = 0; i < list.size() - 1; i++) {
            for (int j = i + 1; j < list.size(); j++) {
                if (list.get(i).getDistance() > list.get(j).getDistance()) {
                    AtmLocation temp = new AtmLocation();
                    temp.copy(list.get(i));
                    list.get(i).copy(list.get(j));
                    list.get(j).copy(temp);
                }
            }

        }
        return (list.size() > 20 ? list.subList(0, 19) : list);
    } else if (type == '1') {
        cr.add(Restrictions.eq("bank", bank.toLowerCase()));
        list = cr.list();
        for (AtmLocation atm : list) {
            atm.setDistance(Utils.distance(Double.parseDouble(lat1), Double.parseDouble(long1),
                    Double.parseDouble(atm.getLatd()), Double.parseDouble(atm.getLongd())));
        }
        for (int i = 0; i < list.size() - 1; i++) {
            for (int j = i + 1; j < list.size(); j++) {
                if (list.get(i).getDistance() > list.get(j).getDistance()) {
                    AtmLocation temp = new AtmLocation();
                    temp.copy(list.get(i));
                    list.get(i).copy(list.get(j));
                    list.get(j).copy(temp);
                }

            }

        }
        return (list.size() > 20 ? list.subList(0, 19) : list);
    } else if (type == '2') {
        BankInfoDAO bankInfoDAO = new BankInfoDAO();
        List<String> banks = bankInfoDAO.findByGroup(bank);
        if (banks == null || banks.isEmpty()) {
            //                cr.add(Restrictions.eq("bank", ""));
            //                list = cr.list();
            return list;
        }
        Disjunction dis = Restrictions.disjunction();
        for (String s : banks) {
            dis.add(Restrictions.eq("bank", s).ignoreCase());
        }
        cr.add(dis);
        list = cr.list();
        for (AtmLocation atm : list) {
            atm.setDistance(Utils.distance(Double.parseDouble(lat1), Double.parseDouble(long1),
                    Double.parseDouble(atm.getLatd()), Double.parseDouble(atm.getLongd())));
        }
        for (int i = 0; i < list.size() - 1; i++) {
            for (int j = i + 1; j < list.size(); j++) {
                if (list.get(i).getDistance() > list.get(j).getDistance()) {
                    AtmLocation temp = new AtmLocation();
                    temp.copy(list.get(i));
                    list.get(i).copy(list.get(j));
                    list.get(j).copy(temp);
                }

            }

        }
        return (list.size() > 20 ? list.subList(0, 19) : list);
    }
    cr.add(Restrictions.eq("bank", ""));
    list = cr.list();
    return list;
}

From source file:org.balisunrise.daa.hibernate.HCriteria.java

License:Open Source License

private org.hibernate.criterion.Criterion makeCriterion(String propertyName, FilterType type, Object value,
        Object otherValue) {//from w  w  w.j  ava2 s.co  m

    switch (type) {
    case EQUALS:
        return Restrictions.eq(propertyName, value);
    case EQUALS_OR_NULL:
        return Restrictions.eqOrIsNull(propertyName, value);
    case DIFFERENT:
        return Restrictions.ne(propertyName, value);
    case DIFFERENT_OR_NOT_NULL:
        return Restrictions.neOrIsNotNull(propertyName, value);
    case GREATHER:
        return Restrictions.gt(propertyName, value);
    case GREATHER_EQUALS:
        return Restrictions.ge(propertyName, value);
    case LESS:
        return Restrictions.lt(propertyName, value);
    case LESS_EQUALS:
        return Restrictions.le(propertyName, value);
    case LIKE:
        return Restrictions.like(propertyName, value + "%");
    case ILIKE:
        return Restrictions.ilike(propertyName, "%" + value + "%");
    case BETWEEN:
        return Restrictions.between(propertyName, value, otherValue);
    case IN:
        if (value instanceof Collection)
            return Restrictions.in(propertyName, (Collection) value);
        else if (value instanceof Object[])
            return Restrictions.in(propertyName, (Object[]) value);
        else
            return Restrictions.in(propertyName, new Object[] { value });
    case NULL:
        return Restrictions.isNull(propertyName);
    case NOT_NULL:
        return Restrictions.isNotNull(propertyName);
    default:
        return null;
    }
}