Example usage for com.liferay.portal.kernel.search BooleanClauseOccur MUST

List of usage examples for com.liferay.portal.kernel.search BooleanClauseOccur MUST

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.search BooleanClauseOccur MUST.

Prototype

BooleanClauseOccur MUST

To view the source code for com.liferay.portal.kernel.search BooleanClauseOccur MUST.

Click Source Link

Usage

From source file:vn.com.ecopharma.emp.service.impl.PromotedHistoryLocalServiceImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
public List<Document> filterByFields(SearchContext searchContext, Map<String, Object> filters, Sort sort,
        long companyId, int start, int end) throws ParseException {
    final List<Query> queries = new ArrayList<>();
    if (filters != null) {
        // Date effectiveDateFrom = filters
        // .get(EmpDisciplineField.EFFECTIVE_DATE_FROM) != null ? (Date)
        // filters
        // .get(EmpDisciplineField.EFFECTIVE_DATE_FROM) : null;
        ///*from   w ww.  ja va2  s. co m*/
        // Date effectiveDateTo = filters
        // .get(EmpDisciplineField.EFFECTIVE_DATE_TO) != null ? (Date)
        // filters
        // .get(EmpDisciplineField.EFFECTIVE_DATE_TO) : null;
        for (Map.Entry<String, Object> filter : filters.entrySet()) {
            final String filterProperty = filter.getKey();
            final Object filterValue = filter.getValue();
            LOGGER.info("Filter Property: " + filterProperty);

            if (filterValue instanceof String) {
                LOGGER.info("Filter Property Value: " + filterValue);
                // TODO
                BooleanQuery stringFilterQuery = BooleanQueryFactoryUtil.create(searchContext);
                stringFilterQuery.addTerm(filterProperty, (String) filterValue, true, BooleanClauseOccur.MUST);
                queries.add(stringFilterQuery);

            } else if (filterValue instanceof List<?>) {
                queries.add(empLocalService.createStringListQuery(filterProperty, (List<String>) filterValue,
                        searchContext));
            } else if (filterValue instanceof Date) {
                // Query effectiveDateQuery = empLocalService
                // .createDateTermRangeQuery(
                // EmpDisciplineField.EFFECTIVE_DATE,
                // effectiveDateFrom, effectiveDateTo, true,
                // true, searchContext);
                // if (effectiveDateQuery != null) {
                // queries.add(effectiveDateQuery);
                // }
            }
        }
    }
    /* SORT */
    if (sort == null) {
        sort = new Sort(PromotedHistoryField.ID, false);
    }
    return searchAllDocuments(searchContext, queries, companyId, sort, start, end);
}

From source file:vn.com.ecopharma.emp.service.impl.PromotedHistoryLocalServiceImpl.java

License:Open Source License

public Document getIndexedDocument(long id, SearchContext searchContext) {
    searchContext.setPortletIds(new String[] { EMInfo.PORTLET_ID });
    BooleanQuery fullQuery = BooleanQueryFactoryUtil.create(searchContext);
    BooleanQuery booleanQuery = BooleanQueryFactoryUtil.create(searchContext);
    booleanQuery.addRequiredTerm(Field.ENTRY_CLASS_NAME, PromotedHistory.class.getName());
    booleanQuery.addExactTerm(PromotedHistoryField.ID, id);

    try {//ww w .j  a  v a 2 s  . c  o m
        fullQuery.add(booleanQuery, BooleanClauseOccur.MUST);
        Hits hits = SearchEngineUtil.search(searchContext, fullQuery);
        return !hits.toList().isEmpty() ? hits.toList().get(0) : null;
    } catch (ParseException e) {
        LOGGER.info(e);
    } catch (SearchException e) {
        LOGGER.info(e);
    }

    return null;
}

From source file:vn.com.ecopharma.emp.service.impl.ResignationHistoryLocalServiceImpl.java

License:Open Source License

public List<Document> searchAllDocuments(SearchContext searchContext, List<Query> filterQueries, long companyId,
        Sort sort, int start, int end) {

    LOGGER.info("FilterQueries size: " + filterQueries.size());
    final BooleanQuery fullQuery = BooleanQueryFactoryUtil.create(searchContext);
    final BooleanQuery allEmployeeEntriesBooleanQuery = BooleanQueryFactoryUtil.create(searchContext);
    final BooleanQuery noneDeletedEmployeesBooleanQuery = BooleanQueryFactoryUtil.create(searchContext);

    allEmployeeEntriesBooleanQuery.addRequiredTerm(Field.ENTRY_CLASS_NAME, ResignationHistory.class.getName());
    noneDeletedEmployeesBooleanQuery.addExactTerm(ResignationHistoryField.IS_DELETED, "false");

    try {/*w  w  w . j a  va 2 s  .  c o m*/
        // add filter queries
        fullQuery.add(allEmployeeEntriesBooleanQuery, BooleanClauseOccur.MUST);
        if (filterQueries != null && filterQueries.size() > 0) {
            for (Query query : filterQueries) {
                fullQuery.add(query, BooleanClauseOccur.MUST);
            }
        }

        // always filter for none-delete item
        fullQuery.add(noneDeletedEmployeesBooleanQuery, BooleanClauseOccur.MUST);

        final List<Document> documents = SearchEngineUtil
                .search(SearchEngineUtil.getDefaultSearchEngineId(), companyId, fullQuery, sort, start, end)
                .toList();
        return documents;

    } catch (SearchException e) {
        LOGGER.info(e);
    } catch (ParseException e) {
        LOGGER.info(e);
    }
    return null;
}

From source file:vn.com.ecopharma.emp.service.impl.ResignationHistoryLocalServiceImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
public List<Document> filterByFields(SearchContext searchContext, Map<String, Object> filters, Sort sort,
        long companyId, int start, int end) throws ParseException {
    final List<Query> queries = new ArrayList<>();
    if (filters != null) {
        // Date effectiveDateFrom = filters
        // .get(EmpDisciplineField.EFFECTIVE_DATE_FROM) != null ? (Date)
        // filters
        // .get(EmpDisciplineField.EFFECTIVE_DATE_FROM) : null;
        ///*  w  ww .j  a  v  a 2 s  .c o m*/
        // Date effectiveDateTo = filters
        // .get(EmpDisciplineField.EFFECTIVE_DATE_TO) != null ? (Date)
        // filters
        // .get(EmpDisciplineField.EFFECTIVE_DATE_TO) : null;
        for (Map.Entry<String, Object> filter : filters.entrySet()) {
            final String filterProperty = filter.getKey();
            final Object filterValue = filter.getValue();
            LOGGER.info("Filter Property: " + filterProperty);

            if (filterValue instanceof String) {
                LOGGER.info("Filter Property Value: " + filterValue);
                // TODO
                BooleanQuery stringFilterQuery = BooleanQueryFactoryUtil.create(searchContext);
                stringFilterQuery.addTerm(filterProperty, (String) filterValue, true, BooleanClauseOccur.MUST);
                queries.add(stringFilterQuery);

            } else if (filterValue instanceof List<?>) {
                queries.add(empLocalService.createStringListQuery(filterProperty, (List<String>) filterValue,
                        searchContext));
            } else if (filterValue instanceof Date) {
                // Query effectiveDateQuery = empLocalService
                // .createDateTermRangeQuery(
                // EmpDisciplineField.EFFECTIVE_DATE,
                // effectiveDateFrom, effectiveDateTo, true,
                // true, searchContext);
                // if (effectiveDateQuery != null) {
                // queries.add(effectiveDateQuery);
                // }
            }
        }
    }
    /* SORT */
    if (sort == null) {
        sort = new Sort(ResignationHistoryField.ID, false);
    }
    return searchAllDocuments(searchContext, queries, companyId, sort, start, end);
}

From source file:vn.com.ecopharma.emp.service.impl.ResignationHistoryLocalServiceImpl.java

License:Open Source License

public Document getIndexedDocument(long id, SearchContext searchContext) {
    searchContext.setPortletIds(new String[] { EMInfo.PORTLET_ID });
    BooleanQuery fullQuery = BooleanQueryFactoryUtil.create(searchContext);
    BooleanQuery booleanQuery = BooleanQueryFactoryUtil.create(searchContext);
    booleanQuery.addRequiredTerm(Field.ENTRY_CLASS_NAME, ResignationHistory.class.getName());
    booleanQuery.addExactTerm(ResignationHistoryField.ID, id);

    try {//from www  . ja  v a 2  s.c om
        fullQuery.add(booleanQuery, BooleanClauseOccur.MUST);
        Hits hits = SearchEngineUtil.search(searchContext, fullQuery);
        return !hits.toList().isEmpty() ? hits.toList().get(0) : null;
    } catch (ParseException e) {
        LOGGER.info(e);
    } catch (SearchException e) {
        LOGGER.info(e);
    }

    return null;
}

From source file:vn.com.ecopharma.emp.service.impl.VacationLeaveLocalServiceImpl.java

License:Open Source License

public List<Document> searchAllUnDeletedDocuments(SearchContext searchContext, List<Query> filterQueries,
        long companyId, Sort sort, int start, int end) {

    LOGGER.info("FilterQueries size: " + filterQueries.size());
    final BooleanQuery fullQuery = BooleanQueryFactoryUtil.create(searchContext);
    final BooleanQuery allVacationLeaveEntriesBooleanQuery = BooleanQueryFactoryUtil.create(searchContext);
    final BooleanQuery noneDeletedVacationLeaveBooleanQuery = BooleanQueryFactoryUtil.create(searchContext);

    allVacationLeaveEntriesBooleanQuery.addRequiredTerm(Field.ENTRY_CLASS_NAME, VacationLeave.class.getName());
    noneDeletedVacationLeaveBooleanQuery.addExactTerm(VacationLeaveField.IS_DELETED, "false");

    try {//from  ww  w .j a  v  a2s.c  o  m
        // add filter queries
        fullQuery.add(allVacationLeaveEntriesBooleanQuery, BooleanClauseOccur.MUST);
        if (filterQueries != null && filterQueries.size() > 0) {
            for (Query query : filterQueries) {
                fullQuery.add(query, BooleanClauseOccur.MUST);
            }
        }

        // always filter for none-delete item
        fullQuery.add(noneDeletedVacationLeaveBooleanQuery, BooleanClauseOccur.MUST);

        sort = sort != null ? sort : new Sort(VacationLeaveField.ID, true);

        final List<Document> documents = SearchEngineUtil
                .search(SearchEngineUtil.getDefaultSearchEngineId(), companyId, fullQuery, sort, start, end)
                .toList();
        return documents;

    } catch (SearchException e) {
        LOGGER.info(e);
    } catch (ParseException e) {
        LOGGER.info(e);
    }
    return new ArrayList<>();
}

From source file:vn.com.ecopharma.emp.service.impl.VacationLeaveLocalServiceImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
public List<Document> filterByFields(SearchContext searchContext, Map<String, Object> filters, Sort sort,
        long companyId, int start, int end) throws ParseException {
    final List<Query> queries = new ArrayList<>();
    if (filters != null) {
        // Date joinedDateFrom = filters.get(EmpField.JOINED_DATE_FROM) !=
        // null ? (Date) filters
        // .get(EmpField.JOINED_DATE_FROM) : null;
        ///*from   w  w w .j  ava 2 s.c  om*/
        // Date joinedDateTo = filters.get(EmpField.JOINED_DATE_TO) != null
        // ? (Date) filters
        // .get(EmpField.JOINED_DATE_TO) : null;

        for (Map.Entry<String, Object> filter : filters.entrySet()) {
            final String filterProperty = filter.getKey();
            final Object filterValue = filter.getValue();
            LOGGER.info("Filter Property: " + filterProperty);

            if (filterValue instanceof String) {
                LOGGER.info("Filter Property Value: " + filterValue);
                // TODO
                BooleanQuery stringFilterQuery = BooleanQueryFactoryUtil.create(searchContext);
                stringFilterQuery.addTerm(filterProperty, (String) filterValue, true, BooleanClauseOccur.MUST);
                queries.add(stringFilterQuery);

            } else if (filterValue instanceof List<?>) {
                queries.add(empLocalService.createStringListQuery(filterProperty, (List<String>) filterValue,
                        searchContext));
            } else if (filterValue instanceof Date) {
                // createDateTermRangeQuery(EmpField.JOINED_DATE, queries,
                // joinedDateFrom, joinedDateTo, searchContext);
                // Query dateRangeQuery = createDateTermRangeQuery(
                // EmpField.JOINED_DATE, joinedDateFrom, joinedDateTo,
                // true, true, searchContext);
                // if (dateRangeQuery != null)
                // queries.add(dateRangeQuery);
            }
        }
    }
    /* SORT */
    if (sort == null) {
        sort = new Sort(VacationLeaveField.ID, false);
    }
    return searchAllUnDeletedDocuments(searchContext, queries, companyId, sort, start, end);
}

From source file:vn.com.ecopharma.emp.service.impl.VacationLeaveLocalServiceImpl.java

License:Open Source License

public Document getIndexedDocument(long id, SearchContext searchContext) {
    searchContext.setPortletIds(new String[] { EMInfo.PORTLET_ID });
    BooleanQuery fullQuery = BooleanQueryFactoryUtil.create(searchContext);
    BooleanQuery booleanQuery = BooleanQueryFactoryUtil.create(searchContext);
    booleanQuery.addRequiredTerm(Field.ENTRY_CLASS_NAME, VacationLeave.class.getName());
    booleanQuery.addExactTerm(VacationLeaveField.ID, id);

    try {//from  w ww. j a  v  a 2 s  .c o  m
        fullQuery.add(booleanQuery, BooleanClauseOccur.MUST);
        Hits hits = SearchEngineUtil.search(searchContext, fullQuery);
        return !hits.toList().isEmpty() ? hits.toList().get(0) : null;
    } catch (ParseException e) {
        LOGGER.info(e);
    } catch (SearchException e) {
        LOGGER.info(e);
    }

    return null;
}

From source file:vn.com.ecopharma.hrm.rc.service.impl.CandidateLocalServiceImpl.java

License:Open Source License

public List<Document> searchAllUnDeletedCandidatesIndexedDocument(SearchContext searchContext,
        List<Query> filterQueries, long companyId, Sort sort, int start, int end) {

    LOGGER.info("FilterQueries size: " + filterQueries.size());
    final BooleanQuery fullQuery = BooleanQueryFactoryUtil.create(searchContext);
    final BooleanQuery allCandidateEntriesBooleanQuery = BooleanQueryFactoryUtil.create(searchContext);
    final BooleanQuery noneDeletedCandidateBooleanQuery = BooleanQueryFactoryUtil.create(searchContext);

    allCandidateEntriesBooleanQuery.addRequiredTerm(Field.ENTRY_CLASS_NAME, Candidate.class.getName());
    noneDeletedCandidateBooleanQuery.addExactTerm(CandidateField.IS_DELETED, "false");

    try {/*  w w w. j  a v  a 2s .  co m*/
        // add filter queries
        fullQuery.add(allCandidateEntriesBooleanQuery, BooleanClauseOccur.MUST);
        if (filterQueries != null && !filterQueries.isEmpty()) {
            for (Query query : filterQueries) {
                fullQuery.add(query, BooleanClauseOccur.MUST);
            }
        }

        // always filter for none-delete item
        fullQuery.add(noneDeletedCandidateBooleanQuery, BooleanClauseOccur.MUST);

        /* SORT */
        if (sort == null) {
            sort = new Sort(CandidateField.CANDIDATE_ID, false);
        }

        return SearchEngineUtil
                .search(SearchEngineUtil.getDefaultSearchEngineId(), companyId, fullQuery, sort, start, end)
                .toList();
    } catch (SearchException e) {
        LOGGER.info(e);
    } catch (ParseException e) {
        LOGGER.info(e);
    }
    return new ArrayList<>();
}

From source file:vn.com.ecopharma.hrm.rc.service.impl.CandidateLocalServiceImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
public List<Document> filterByFields(SearchContext searchContext, Map<String, Object> filters, Sort sort,
        long companyId, int start, int end) throws ParseException {
    final List<Query> queries = new ArrayList<>();
    Date dateFrom = filters.get(CandidateField.APPLY_DATE_FROM) != null
            ? (Date) filters.get(CandidateField.APPLY_DATE_FROM)
            : null;/*from   ww w  . j  a v  a  2 s. c o m*/
    Date dateTo = filters.get(CandidateField.APPLY_DATE_TO) != null
            ? (Date) filters.get(CandidateField.APPLY_DATE_TO)
            : null;
    for (Map.Entry<String, Object> filter : filters.entrySet()) {
        String filterProperty = filter.getKey();
        Object filterValue = filter.getValue();
        LOGGER.info(filterProperty);
        LOGGER.info(filterValue);
        if (filterValue instanceof String) {
            if (filterProperty.equalsIgnoreCase(CandidateField.GLOBAL)) {
                final BooleanQuery globalFilterBooleanQuery = BooleanQueryFactoryUtil.create(searchContext);
                globalFilterBooleanQuery.addTerms(getGlobalSearchableFields(), (String) filterValue, true);
                queries.add(globalFilterBooleanQuery);
            } else {
                BooleanQuery stringFilterQuery = BooleanQueryFactoryUtil.create(searchContext);
                stringFilterQuery.addTerm(filterProperty, (String) filterValue, true, BooleanClauseOccur.MUST);
                queries.add(stringFilterQuery);
            }
        } else if (filterValue instanceof List<?>) {
            queries.add(EmpLocalServiceUtil.createStringListQuery(filterProperty, (List<String>) filterValue,
                    searchContext));
        } else if (filterValue instanceof Date) {
            // Query applicationDateRangeQuery = EmpLocalServiceUtil
            // .createDateTermRangeQuery(
            // CandidateField.APPLICATION_DATE, dateFrom,
            // dateTo, true, true, searchContext);
            Query applicationDateRangeQuery = createDateTermRangeQuery(CandidateField.APPLICATION_DATE,
                    dateFrom, dateTo, searchContext);
            if (applicationDateRangeQuery != null)
                queries.add(applicationDateRangeQuery);
        }
    }
    /* SORT */
    if (sort == null) {
        sort = new Sort(CandidateField.CANDIDATE_ID, false);
    }
    return searchAllUnDeletedCandidatesIndexedDocument(searchContext, queries, companyId, sort, start, end);
}