Example usage for org.hibernate.criterion DetachedCriteria createAlias

List of usage examples for org.hibernate.criterion DetachedCriteria createAlias

Introduction

In this page you can find the example usage for org.hibernate.criterion DetachedCriteria createAlias.

Prototype

public DetachedCriteria createAlias(String associationPath, String alias) 

Source Link

Document

Creates an association path alias within this DetachedCriteria.

Usage

From source file:org.caratarse.auth.model.bo.UserAuthorizationBo.java

License:Apache License

@Transactional
public Page<UserAuthorization> readAllByUserAndService(String userUuid, QueryFilter filter, QueryRange range,
        QueryOrder order) {/*from  w  w w . java2 s.  co m*/
    Page<UserAuthorization> result = null;
    DetachedCriteria crit = DetachedCriteria.forClass(UserAuthorization.class, "ua");
    crit.createAlias("ua.user", "user");
    crit.add(Restrictions.eq("user.uuid", userUuid));
    crit.createAlias("ua.authorization", "authorization");

    CriteriaFilterHelper.addQueryFilter(crit, filter);
    CriteriaFilterHelper.addQueryOrder(crit, order);
    ((HibernateGenericDao) userAuthorizationDao).setFilterNames(Constants.NOT_DELETED_FILTER_NAME);
    if (range != null && range.isInitialized()) {
        result = ((HibernateGenericDao) userAuthorizationDao).searchPaginatedByCriteria(crit,
                (int) range.getOffset(), range.getLimit());
    } else {
        result = ((HibernateGenericDao) userAuthorizationDao).searchPaginatedByCriteria(crit, 0, 0);
    }
    ((HibernateGenericDao) userAuthorizationDao).setFilterNames();
    return result;
}

From source file:org.egov.pims.service.PersonalInformationService.java

License:Open Source License

private Criteria getCriteriaForEmpSearchByStatus(Integer statusid, Date fromDate, Date toDate) {
    EgwStatus egwStatus = egwStatusHibernateDAO.findById(statusid, false);
    DetachedCriteria detachCriteriaPersonalInfo = DetachedCriteria.forClass(PersonalInformation.class, "emp");
    if (egwStatus.getModuletype().equals("Employee")
            && egwStatus.getDescription().equalsIgnoreCase("Employed")) {
        detachCriteriaPersonalInfo.createAlias("emp.egpimsAssignment", "assPrd")
                .add(Restrictions.and(Restrictions.le("assPrd.fromDate", toDate), Restrictions
                        .or(Restrictions.ge("assPrd.toDate", toDate), Restrictions.isNull("assPrd.toDate"))));

    } else if (egwStatus.getModuletype().equals("Employee")
            && egwStatus.getDescription().equalsIgnoreCase("Retired")) {
        detachCriteriaPersonalInfo.add(Restrictions.between("emp.retirementDate", fromDate, toDate));

    } else if (egwStatus.getModuletype().equals("Employee")
            && egwStatus.getDescription().equalsIgnoreCase("Deceased")) {
        detachCriteriaPersonalInfo.add(Restrictions.between("emp.deathDate", fromDate, toDate));
    }//w w w.  j  a v a 2  s  . co  m
    return detachCriteriaPersonalInfo.getExecutableCriteria(getCurrentSession());
}

From source file:org.encuestame.persistence.dao.imp.AbstractHibernateDaoSupport.java

License:Apache License

/**
 *
 * @param criteria// w w w  . ja va2s.c  om
 * @param isCompleted
 * @param isScheduled
 * @param isFavourite
 * @param isPublished
 * @param keyword
 * @param period
 */
protected void advancedTweetPollSearchOptions(final DetachedCriteria criteria, final Boolean isCompleted,
        final Boolean isScheduled, final Boolean isFavourite, final Boolean isPublished, final String keyword,
        final String period) {

    //final SearchPeriods searchPeriods = SearchPeriods.getPeriodString(period);
    //  calculateSearchPeriodsDates(searchPeriods, criteria, "createDate");
    if (keyword != null) {
        criteria.createAlias("question", "question");
        criteria.add(Restrictions.like("question.question", keyword, MatchMode.ANYWHERE));
    }
    if (isCompleted != null && isCompleted) {
        criteria.add(Restrictions.eq("completed", isCompleted));
    }
    if (isScheduled != null && isScheduled) {
        criteria.add(Restrictions.eq("scheduleTweetPoll", isScheduled));
        criteria.add(Restrictions.isNotNull("scheduleDate"));
    }
    if (isFavourite != null && isFavourite) {
        criteria.add(Restrictions.eq("favourites", isFavourite));

    }
    if (isPublished != null && isPublished) {
        criteria.add(Restrictions.eq("publishTweetPoll", isPublished));
    }
}

From source file:org.encuestame.persistence.dao.imp.AbstractHibernateDaoSupport.java

License:Apache License

/**
*
* @param criteria//from   ww w  . ja v  a2s  .  c  om
* @param isCompleted
* @param isScheduled
* @param isFavourite
* @param isPublished
* @param keyword
* @param period
*/
protected void advancedPollSearchOptions(final DetachedCriteria criteria, final Boolean isCompleted,
        final Boolean isScheduled, final Boolean isFavourite, final Boolean isPublished, final Boolean isHidden,
        final Boolean isPasswordProtected, final String keyword, final String period) {

    //final SearchPeriods searchPeriods = SearchPeriods.getPeriodString(period);
    //  calculateSearchPeriodsDates(searchPeriods, criteria, "createDate");
    if (keyword != null) {
        criteria.createAlias("question", "question");
        criteria.add(Restrictions.like("question.question", keyword, MatchMode.ANYWHERE));
    }
    if (isCompleted != null && isCompleted) {
        criteria.add(Restrictions.eq("completed", isCompleted));
    }
    if (isScheduled != null && isScheduled) {
        criteria.add(Restrictions.eq("schedule", isScheduled));
        criteria.add(Restrictions.isNotNull("scheduleDate"));
    }
    if (isFavourite != null && isFavourite) {
        criteria.add(Restrictions.eq("favourites", isFavourite));

    }
    if (isPublished != null && isPublished) {
        criteria.add(Restrictions.eq("publish", isPublished));
    }
    if (isHidden != null && isHidden) {
        criteria.add(Restrictions.eq("isHidden", isHidden));
    }
    if (isPasswordProtected != null && isPasswordProtected) {
        criteria.add(Restrictions.eq("isPasswordProtected", isPasswordProtected));
    }
}

From source file:org.encuestame.persistence.dao.imp.AbstractSocialAccount.java

License:Apache License

/**
 * Get Account Connection.//from  w w w  . j  a v  a  2  s  .c  om
 * @param accountId
 * @return
 */
public SocialAccount getAccountConnection(final String accountId, final SocialProvider provider) {
    final DetachedCriteria criteria = DetachedCriteria.forClass(SocialAccount.class);
    criteria.createAlias("userAccout", "userAccout");
    criteria.add(Restrictions.eq("userAccout.uid", accountId));
    criteria.add(Restrictions.eq("accounType", provider));
    return (SocialAccount) DataAccessUtils.uniqueResult(getHibernateTemplate().findByCriteria(criteria));
}

From source file:org.encuestame.persistence.dao.imp.CommentDao.java

License:Apache License

@SuppressWarnings("unchecked")
public List<Comment> getCommentsbyTypeAndStatus(final Long id, final TypeSearchResult typeSearch,
        final Integer maxResults, final Integer start, final CommentOptions commentOptions,
        final SearchPeriods period) {
    final DetachedCriteria criteria = DetachedCriteria.forClass(Comment.class);
    if (typeSearch.equals(TypeSearchResult.TWEETPOLL)) {
        criteria.createAlias("tweetPoll", "tweetPoll");
        criteria.add(Restrictions.eq("tweetPoll.tweetPollId", id));
    } else if (typeSearch.equals(TypeSearchResult.POLL)) {
        criteria.createAlias("poll", "poll");
        criteria.add(Restrictions.eq("poll.pollId", id));
    } else if (typeSearch.equals(TypeSearchResult.SURVEY)) {
        criteria.createAlias("survey", "survey");
        criteria.add(Restrictions.eq("survey.sid", id));
    } else {//from   w w w  .j av a2  s .c  o  m
        log.error(" Search result type undefined " + typeSearch.toString());
    }

    criteria.addOrder(Order.desc("likeVote"));
    if (!commentOptions.equals(CommentOptions.ALL)) {
        criteria.add(Restrictions.eq("commentOptions", commentOptions));
    }

    if (period != null) {
        calculateSearchPeriodsDates(period, criteria, "createdAt");
    }
    return (List<Comment>) filterByMaxorStart(criteria, maxResults, start);
}

From source file:org.encuestame.persistence.dao.imp.CommentDao.java

License:Apache License

public Long getTotalCommentsbyItem(final Long id, final TypeSearchResult itemType,
        final CommentOptions commentOptions, final SearchPeriods period) {
    final DetachedCriteria criteria = DetachedCriteria.forClass(Comment.class);
    criteria.setProjection(Projections.rowCount());
    if (itemType.equals(TypeSearchResult.TWEETPOLL)) {
        criteria.createAlias("tweetPoll", "tweetPoll");
        criteria.add(Restrictions.eq("tweetPoll.tweetPollId", id));
    } else if (itemType.equals(TypeSearchResult.POLL)) {
        criteria.createAlias("poll", "poll");
        criteria.add(Restrictions.eq("poll.pollId", id));
    } else if (itemType.equals(TypeSearchResult.SURVEY)) {
        criteria.createAlias("survey", "survey");
        criteria.add(Restrictions.eq("survey.sid", id));
    } else {/*from   w w  w  . j av a2 s. com*/
        log.error(" Search result type undefined " + itemType);
    }
    if (!commentOptions.equals(CommentOptions.ALL)) {
        criteria.add(Restrictions.eq("commentOptions", commentOptions));
    }
    if (period != null) {
        calculateSearchPeriodsDates(period, criteria, "createdAt");
    }
    @SuppressWarnings("unchecked")
    List<Comment> results = (List<Comment>) getHibernateTemplate().findByCriteria(criteria);
    log.trace("Retrieve total comments by  " + itemType + "--->" + results.size());
    return (Long) (results.get(0) == null ? 0 : results.get(0));
}

From source file:org.encuestame.persistence.dao.imp.CommentDao.java

License:Apache License

public Long getTotalCommentsbyTypeAndStatus(final TypeSearchResult itemType,
        final CommentOptions commentOptions, final SearchPeriods period) {
    final DetachedCriteria criteria = DetachedCriteria.forClass(Comment.class);
    criteria.setProjection(Projections.rowCount());
    if (itemType.equals(TypeSearchResult.TWEETPOLL)) {
        criteria.createAlias("tweetPoll", "tweetPoll");
        criteria.add(Restrictions.isNotNull("tweetPoll"));
    } else if (itemType.equals(TypeSearchResult.POLL)) {
        criteria.createAlias("poll", "poll");
        criteria.add(Restrictions.isNotNull("poll"));
    } else if (itemType.equals(TypeSearchResult.SURVEY)) {
        criteria.createAlias("survey", "survey");
        criteria.add(Restrictions.isNotNull("survey"));
    } else {//from w w w  . ja  va2 s  .  c  o  m
        log.error(" Search result type undefined " + itemType);
    }
    if (!commentOptions.equals(CommentOptions.ALL)) {
        criteria.add(Restrictions.eq("commentOptions", commentOptions));
    }
    if (period != null) {
        calculateSearchPeriodsDates(period, criteria, "createdAt");
    }
    @SuppressWarnings("unchecked")
    List<Comment> results = (List<Comment>) getHibernateTemplate().findByCriteria(criteria);
    log.trace("Retrieve total comments by  " + itemType + "--->" + results.size());
    return (Long) (results.get(0) == null ? 0 : results.get(0));
}

From source file:org.encuestame.persistence.dao.imp.DashboardDao.java

License:Apache License

@SuppressWarnings("unchecked")
public List<Dashboard> retrieveFavouritesDashboards(final UserAccount userAcc, final Integer maxResults,
        final Integer start) {
    final DetachedCriteria criteria = DetachedCriteria.forClass(Dashboard.class);
    criteria.createAlias("userBoard", "userBoard");
    criteria.add(Restrictions.eq("favorite", Boolean.TRUE));
    criteria.add(Restrictions.eq("userBoard", userAcc));
    return (List<Dashboard>) filterByMaxorStart(criteria, maxResults, start);
}

From source file:org.encuestame.persistence.dao.imp.DashboardDao.java

License:Apache License

@SuppressWarnings("unchecked")
public List<Dashboard> retrieveDashboardbyKeyword(final String keyword, final UserAccount userAcc,
        final Integer maxResults, final Integer start) {
    final DetachedCriteria criteria = DetachedCriteria.forClass(Dashboard.class);
    criteria.createAlias("userBoard", "userBoard");
    criteria.add(Restrictions.eq("userBoard", userAcc));
    //TODO: Future update to hibernate search dashboard.
    criteria.add(Restrictions.like("pageBoardName", keyword, MatchMode.ANYWHERE));
    return (List<Dashboard>) filterByMaxorStart(criteria, maxResults, start);
}