Example usage for org.hibernate.criterion Order getPropertyName

List of usage examples for org.hibernate.criterion Order getPropertyName

Introduction

In this page you can find the example usage for org.hibernate.criterion Order getPropertyName.

Prototype

public String getPropertyName() 

Source Link

Usage

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

@Override
public List<ReportEmpPensionPreparationModel> getReportPensionPreparementByParam(List<Long> listDepartmentId,
        List<Long> listEmpTypeId, List<Integer> listEmpAges, int firstResult, int maxResults, Order order) {

    final StringBuilder query = new StringBuilder(
            "SELECT empData.NIK AS nik, bioData.first_name AS firstName, bioData.last_name AS lastName, "
                    + " empData.join_date AS tglMulaiBekerja, golonganJabatan.code AS golJabatan, bioData.date_of_birth AS tglLahir, "
                    + " umur(bioData.date_of_birth , NOW()) AS usiaKaryawan, "
                    + " jabatan.name AS jabatan, department.department_name AS departmentName, department.id AS departmentId, "
                    + " employeeType.id AS empTypeId , employeeType.name AS statusKaryawan FROM emp_data empData "
                    + " INNER JOIN golongan_jabatan golonganJabatan ON empData.gol_jab_id = golonganJabatan.id  "
                    + " INNER JOIN bio_data bioData ON empData.bio_data_id = bioData.id  "
                    + " INNER JOIN jabatan jabatan ON empData.jabatan_id = jabatan.id "
                    + " INNER JOIN department department ON jabatan.departement_id = department.id "
                    + " INNER JOIN company company ON company.id = department.company_id "
                    + " INNER JOIN employee_type employeeType ON empData.emp_type_id = employeeType.id ");

    //Flag Untuk penanda apakah ada filter atau tidak
    //boolean isFiltered = !listDepartmentId.isEmpty() || !listEmpTypeId.isEmpty() || !listEmpAges.isEmpty();
    //Flag untuk penanda jika filter lebih dari satu
    //boolean multipleFilter = Boolean.FALSE;
    //if (isFiltered) {
    query.append(" WHERE company.id = " + HrmUserInfoUtil.getCompanyId() + " ");
    //}//www.jav  a 2 s .  c  o  m

    if (!listDepartmentId.isEmpty()) {
        query.append(" jabatan.departement_id IN( ");

        int size = listDepartmentId.size();
        //karena pakai native query, isi List harus di parsing satu per satu
        for (int i = 0; i < size; i++) {
            if (i < (size - 1)) {
                query.append(String.valueOf(listDepartmentId.get(i)));
                query.append(" , ");
            } else {
                query.append(String.valueOf(listDepartmentId.get(i)));
            }
        }

        query.append(") ");
        //multipleFilter = Boolean.TRUE;
    }

    if (!listEmpTypeId.isEmpty()) {
        //if (multipleFilter) {
        query.append("AND empData.emp_type_id IN( ");
        /*} else {
         query.append(" e.emp_type_id IN( ");
         multipleFilter = Boolean.TRUE;
         }*/

        //karena pakai native query, isi List harus di parsing satu per satu
        int size = listEmpTypeId.size();
        for (int i = 0; i < size; i++) {
            if (i < (size - 1)) {
                query.append(String.valueOf(listEmpTypeId.get(i)));
                query.append(" , ");
            } else {
                query.append(String.valueOf(listEmpTypeId.get(i)));
            }
        }

        query.append(") ");
    }

    if (!listEmpAges.isEmpty()) {
        //if (multipleFilter) {
        query.append(" AND umur(bioData.date_of_birth , NOW()) IN( ");
        /*} else {
         query.append("umur(b.date_of_birth , NOW()) IN( ");
         }*/

        //karena pakai native query, isi List harus di parsing satu per satu
        int size = listEmpAges.size();
        for (int i = 0; i < size; i++) {
            if (i < (size - 1)) {
                query.append(String.valueOf(listEmpAges.get(i)));
                query.append(" , ");
            } else {
                query.append(String.valueOf(listEmpAges.get(i)));
            }
        }

        query.append(") ");
    }

    query.append(" ORDER BY ");

    if (StringUtils.equals("nik", order.getPropertyName())) {
        query.append("empData.nik ");
    } else if (StringUtils.equals("firstName", order.getPropertyName())) {
        query.append("bioData.first_name ");
    } else if (StringUtils.equals("tglMulaiBekerja", order.getPropertyName())) {
        query.append("empData.join_date ");
    } else if (StringUtils.equals("golJabatan", order.getPropertyName())) {
        query.append("golonganJabatan.code ");
    } else if (StringUtils.equals("jabatan", order.getPropertyName())) {
        query.append("jabatan.name ");
    } else if (StringUtils.equals("usiaKaryawan", order.getPropertyName())) {
        query.append("umur(bioData.date_of_birth , NOW()) ");
    }

    query.append(order.isAscending() ? " ASC " : " DESC ");

    //Limit query based on paging parameter
    query.append("LIMIT ").append(firstResult).append(",").append(maxResults).append(" ");

    return getCurrentSession().createSQLQuery(query.toString())
            .setResultTransformer(Transformers.aliasToBean(ReportEmpPensionPreparationModel.class)).list();

}

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

public List<RecruitAgreementNoticeViewModel> getAllEmployeeForRecruitAggrementNoticeWithNativeQuery(
        RecruitAgreementNoticeSearchParameter searchParameter, int firstResult, int maxResults,
        Order orderable) {
    final StringBuilder query = new StringBuilder(
            "SELECT emp.id as employeeId, bio.id as bioDataId, bio.first_name as firstName, bio.last_name as lastName, jabatan.name as jabatanName, pangkat.pangkat_name as pangkatName, bio.date_of_birth as birthOfDate,");
    query.append(" (SELECT pangkat2.pangkat_name FROM pangkat pangkat2");
    query.append(" WHERE pangkat2.level < pangkat.level ORDER BY LEVEL DESC LIMIT 1) as jabatanDituju,");
    query.append(" pangkat.level,");
    query.append(" (SELECT el.name FROM education_level el ");
    query.append(" INNER JOIN bio_education_history beh ON el.id = beh.pendidikan_level_id");
    query.append(" INNER JOIN bio_data bio2 ON bio2.id = beh.biodata_id");
    query.append(" WHERE beh.biodata_id = bio.id ORDER by el.name DESC LIMIT 1 ) as lastEducationLevel");
    query.append(" FROM bio_data bio ");
    query.append(" LEFT JOIN emp_data emp ON bio.id = emp.bio_data_id");
    /*         query.append(" INNER JOIN bio_education_history beh ON beh.biodata_id = bio.id");
     query.append(" INNER JOIN education_level el ON el.id = beh.pendidikan_level_id");*/
    query.append(" LEFT JOIN jabatan jabatan ON emp.jabatan_id = jabatan.id");
    query.append(" LEFT JOIN golongan_jabatan goljab ON goljab.id = emp.gol_jab_id");
    query.append(" LEFT JOIN pangkat pangkat ON goljab.pangkat_id = pangkat.id");
    //query for action searching
    doSearchEmployeeForRecruitAgreementNoticeWithNativeQuery(searchParameter, query);
    //order query base on orderable
    query.append(" ORDER BY ");

    if (StringUtils.equals("firstName", orderable.getPropertyName())) {
        query.append("firstName ");
    } else if (StringUtils.equals("jabatanName", orderable.getPropertyName())) {
        query.append("jabatanName ");
    } else if (StringUtils.equals("jabatanDituju", orderable.getPropertyName())) {
        query.append("jabatanDituju ");
    } else if (StringUtils.equals("lastEducationLevel", orderable.getPropertyName())) {
        query.append("lastEducationLevel ");
    } else if (StringUtils.equals("birthOfDate", orderable.getPropertyName())) {
        query.append("birthOfDate ");
    }//from   w  ww  .j  a  v a  2  s  . c om

    query.append(orderable.isAscending() ? " ASC " : " DESC ");

    //Limit query based on paging parameter
    query.append(" LIMIT ").append(firstResult).append(",").append(maxResults).append(" ");
    return getCurrentSession().createSQLQuery(query.toString())
            .setResultTransformer(Transformers.aliasToBean(RecruitAgreementNoticeViewModel.class)).list();
}

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

@Override
public List<GroupPhone> getAllByFullTextService(String parameter, int first, int pageSize, Order order) {
    FullTextSession fullTextSession = Search.getFullTextSession(getCurrentSession());
    Criteria criteria = fullTextSession.createCriteria(GroupPhone.class);
    Sort sort;/*from  ww  w.  ja  v a2s .  co  m*/
    if (order.isAscending()) {
        sort = new Sort(new SortField(order.getPropertyName(), SortField.STRING_VAL));
    } else {
        sort = new Sort(new SortField(order.getPropertyName(), SortField.STRING_VAL, true));
    }
    FullTextQuery fullTextQuery1 = doSearchFullText(parameter, fullTextSession);
    fullTextQuery1.setCriteriaQuery(criteria);
    fullTextQuery1.setFirstResult(first);
    fullTextQuery1.setMaxResults(pageSize);
    fullTextQuery1.setSort(sort);
    return fullTextQuery1.list();
}

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

@Override
public List<LoginHistory> getAllByFullTextService(String parameter, int minResult, int maxResult, Order order) {
    System.out.println(parameter + "muahahahhahahha");
    FullTextSession fullTextSession = Search.getFullTextSession(getCurrentSession());
    org.apache.lucene.search.Sort sort;/* w ww.  j  a v a  2s . co m*/
    if (order.isAscending()) {
        sort = new Sort(new SortField(order.getPropertyName(), SortField.STRING_VAL));
    } else {
        sort = new Sort(new SortField(order.getPropertyName(), SortField.STRING_VAL, true));
    }
    System.out.println("Nilai sorrt " + order.getPropertyName());
    FullTextQuery fullTextQuery1 = doSearchFullText(parameter, fullTextSession);
    fullTextQuery1.setFirstResult(minResult);
    fullTextQuery1.setMaxResults(maxResult);
    fullTextQuery1.setSort(sort);
    return fullTextQuery1.list();
}

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

@Override
public List<PhoneBook> getAllByFullTextService(String parameter, int first, int pageSize, Order order) {
    FullTextSession fullTextSession = Search.getFullTextSession(getCurrentSession());
    Criteria criteria = fullTextSession.createCriteria(getEntityClass());
    Sort sort;/*from  ww w.  j  a  v a  2 s .co  m*/
    if (order.isAscending()) {
        sort = new Sort(new SortField(order.getPropertyName(), SortField.STRING_VAL));
    } else {
        sort = new Sort(new SortField(order.getPropertyName(), SortField.STRING_VAL, true));
    }
    FullTextQuery fullTextQuery1 = doSearchFullText(parameter, fullTextSession);
    fullTextQuery1.setCriteriaQuery(criteria);
    fullTextQuery1.setFirstResult(first);
    fullTextQuery1.setMaxResults(pageSize);
    fullTextQuery1.setSort(sort);
    return fullTextQuery1.list();
}

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

@Override
public List<Role> getAllByFullTextService(String parameter, int minResult, int maxResult, Order order) {
    FullTextSession fullTextSession = Search.getFullTextSession(getCurrentSession());
    org.apache.lucene.search.Sort sort;//from  w w  w. j  a  va2  s. c  om
    if (order.isAscending()) {
        sort = new Sort(new SortField(order.getPropertyName(), SortField.STRING_VAL));
    } else {
        sort = new Sort(new SortField(order.getPropertyName(), SortField.STRING_VAL, true));
    }
    System.out.println("Nilai sort " + order.getPropertyName());
    FullTextQuery fullTextQuery1 = doSearchFullText(parameter, fullTextSession);
    fullTextQuery1.setFirstResult(minResult);
    fullTextQuery1.setMaxResults(maxResult);
    fullTextQuery1.setSort(sort);
    //        fullTextQuery1.setSort(sort);
    return fullTextQuery1.list();
}

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

@Override
public List<SmsActivity> getAllByFullTextService(String parameter, int minResult, int maxResult, Order order) {
    FullTextSession fullTextSession = Search.getFullTextSession(getCurrentSession());
    org.apache.lucene.search.Sort sort;//from  www. j  a v a 2  s. c om
    if (order.isAscending()) {
        sort = new Sort(new SortField(order.getPropertyName(), SortField.STRING_VAL));
    } else {
        sort = new Sort(new SortField(order.getPropertyName(), SortField.STRING_VAL, true));
    }
    System.out.println("Nilai sorrt " + order.getPropertyName());
    FullTextQuery fullTextQuery1 = doSearchFullText(parameter, fullTextSession);
    fullTextQuery1.setFirstResult(minResult);
    fullTextQuery1.setMaxResults(maxResult);
    fullTextQuery1.setSort(sort);
    return fullTextQuery1.list();
}

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

@Override
public List<TaskDefinition> getAllByFullTextService(String parameter, int minResult, int maxResult,
        Order orde) {
    FullTextSession fullTextSession = Search.getFullTextSession(getCurrentSession());
    Criteria criteria = fullTextSession.createCriteria(TaskDefinition.class).setFetchMode("modemDefinition",
            FetchMode.JOIN);/*from  www . j a  v  a2  s . co m*/
    org.apache.lucene.search.Sort sort;
    if (orde.isAscending()) {
        sort = new Sort(new SortField(orde.getPropertyName(), SortField.STRING_VAL));
    } else {
        sort = new Sort(new SortField(orde.getPropertyName(), SortField.STRING_VAL, true));
    }
    System.out.println("Nilai sorrt " + orde.getPropertyName());
    FullTextQuery fullTextQuery1 = doSearchFullText(parameter, fullTextSession);
    fullTextQuery1.setCriteriaQuery(criteria);
    fullTextQuery1.setFirstResult(minResult);
    fullTextQuery1.setMaxResults(maxResult);
    fullTextQuery1.setSort(sort);
    return fullTextQuery1.list();

}

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

@Override
public List<SmsGatewayUser> getAllByFullTextService(String parameter, int minResult, int maxResult,
        Order order) {
    FullTextSession fullTextSession = Search.getFullTextSession(getCurrentSession());
    org.apache.lucene.search.Sort sort;//from   ww  w. j a  va 2  s. c om
    if (order.isAscending()) {
        sort = new Sort(new SortField(order.getPropertyName(), SortField.STRING_VAL));
    } else {
        sort = new Sort(new SortField(order.getPropertyName(), SortField.STRING_VAL, true));
    }
    System.out.println("Nilai sorrt " + order.getPropertyName());
    FullTextQuery fullTextQuery1 = doSearchFullText(parameter, fullTextSession);
    fullTextQuery1.setFirstResult(minResult);
    fullTextQuery1.setMaxResults(maxResult);
    fullTextQuery1.setSort(sort);
    return fullTextQuery1.list();
}

From source file:com.romeikat.datamessie.core.base.query.entity.execute.AbstractEntityQueryExecutor.java

License:Open Source License

public void applyOrderForProperty(final Collection<Order> orders, final String property,
        final Criteria criteria) {
    for (final Order order : orders) {
        // Ordering is only supported for the projected property
        if (Objects.equal(order.getPropertyName(), property)) {
            criteria.addOrder(order);/*from  w  w  w. j av  a2s .c o  m*/
        }
    }
}