List of usage examples for org.hibernate.criterion DetachedCriteria forClass
public static DetachedCriteria forClass(Class clazz)
From source file:com.benfante.minimark.blo.AssessmentBo.java
License:Apache License
/** * Find assessments.// w ww . j a v a 2s. c om * * @param active If true, map only active assessments. null, any value. * @param showInHomePage If true, map only assessments that must be shown in the home page. null, any value. * @param username map only the assessments of this user. null, any user. * * @return The map of courses on assessments */ public List<Assessment> searchAssessments(Boolean active, Boolean showInHomePage, String username) { DetachedCriteria crit = DetachedCriteria.forClass(Assessment.class); if (active != null) { crit.add(Restrictions.eq("active", active)); } if (showInHomePage != null) { crit.add(Restrictions.eq("showInHomePage", showInHomePage)); } if (username != null) { crit.createAlias("course.courseTeachers", "courseTeachers"); crit.createAlias("courseTeachers.userProfile.user", "user"); crit.add(Restrictions.eq("user.username", username)); } List<Assessment> assessments = assessmentDao.searchByCriteria(crit); return assessments; }
From source file:com.benfante.minimark.blo.AssessmentFillingBo.java
License:Apache License
/** * Retrieve all fillings of active assessments. * * @return The list of fillings of active assesments. *//*from w w w . ja v a2 s . c o m*/ public List<AssessmentFilling> searchActiveFillings() { DetachedCriteria crit = DetachedCriteria.forClass(AssessmentFilling.class); crit.createAlias("assessment", "assessment"); crit.add(Restrictions.eq("assessment.active", Boolean.TRUE)); List<AssessmentFilling> result = assessmentFillingDao.searchByCriteria(crit); Collections.sort(result, new AssessmentFillingStatusComparator()); return filterByAuthorization(result); }
From source file:com.benfante.minimark.blo.AssessmentFillingBo.java
License:Apache License
/** * Retrieve all fillings of active assessments. * * @return The list of fillings of active assesments. *///from w w w . j a v a2 s .com public List<AssessmentFilling> searchActiveFillingsByCourse(Long courseId) { DetachedCriteria crit = DetachedCriteria.forClass(AssessmentFilling.class); crit.createAlias("assessment", "assessment"); crit.add(Restrictions.eq("assessment.active", Boolean.TRUE)); crit.createAlias("assessment.course", "course"); crit.add(Restrictions.eq("course.id", courseId)); List<AssessmentFilling> result = assessmentFillingDao.searchByCriteria(crit); Collections.sort(result, new AssessmentFillingStatusComparator()); return filterByAuthorization(result); }
From source file:com.benfante.minimark.blo.QuestionBo.java
License:Apache License
/** * Search questions by example./*from ww w . j a v a 2 s . c o m*/ * * @param questionBean The values for searching questions. * @return The list of questions matching the questionBean values. */ public List<Question> search(QuestionBean questionBean) { DetachedCriteria crit = null; if (StringUtils.isBlank(questionBean.getType())) { crit = DetachedCriteria.forClass(Question.class); } else { if ("open".equals(questionBean.getType())) { crit = DetachedCriteria.forClass(OpenQuestion.class); if (StringUtils.isNotBlank(questionBean.getVisualization())) { crit.add(Restrictions.eq("visualization", questionBean.getVisualization())); } } else if ("closed".equals(questionBean.getType())) { crit = DetachedCriteria.forClass(ClosedQuestion.class); } else { throw new IllegalArgumentException("Unknown question type (" + questionBean.getType() + ")"); } } if (StringUtils.isNotBlank(questionBean.getTitle())) { crit.add(Restrictions.ilike("title", questionBean.getTitle(), MatchMode.ANYWHERE)); } if (questionBean.getWeight() != null) { crit.add(Restrictions.eq("weight", questionBean.getWeight())); } if (questionBean.getCourse() != null && questionBean.getCourse().getId() != null) { crit.add(Restrictions.eq("course.id", questionBean.getCourse().getId())); } crit.addOrder(Order.asc("title")); crit.addOrder(Order.asc("content")); if (StringUtils.isNotBlank(questionBean.getTags())) { crit.createAlias("tags", "tags"); crit.createAlias("tags.tag", "tag"); crit.add(Restrictions.in("tag.name", questionBean.getTagList())); } crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); return questionDao.searchByCriteria(crit); }
From source file:com.benfante.minimark.blo.UserProfileBo.java
License:Apache License
/** * Search all users associated with at least one course. * * @return The list of all teachers// www . j av a 2 s . c om */ public List<UserProfile> searchAllTeachers() { DetachedCriteria crit = DetachedCriteria.forClass(UserProfile.class); crit.add(Restrictions.isNotEmpty("courseTeachers")); crit.addOrder(Order.asc("name")); return userProfileDao.searchByCriteria(crit); }
From source file:com.cai310.lottery.service.lottery.keno.impl.KenoServiceImpl.java
@Override public List<ChasePlan> getOutNumStopChasePlan(boolean outNumStop, I issueData) { DetachedCriteria criteria = DetachedCriteria.forClass(ChasePlan.class); if (outNumStop) { criteria.add(Restrictions.eq("outNumStop", outNumStop)); }/* ww w . j av a 2s .c om*/ criteria.add(Restrictions.eq("lotteryType", this.getLottery())); // criteria.add(Restrictions.ge("curPeriodId", // Long.valueOf(issueData.getPeriodNumber()))); criteria.add(Restrictions.eq("state", ChaseState.RUNNING)); List<ChasePlan> list = queryService.findByDetachedCriteria(criteria); return list; }
From source file:com.cai310.lottery.service.lottery.keno.impl.KenoServiceImpl.java
/** * ?/*from www. ja va 2 s .c om*/ */ @Override public void doChasePlan(long curPeriodId, Boolean iswonStop) { DetachedCriteria criteria = DetachedCriteria.forClass(ChasePlan.class); criteria.setProjection(Projections.property("id")); if (iswonStop != null) criteria.add(Restrictions.eq("wonStop", iswonStop)); criteria.add(Restrictions.eq("lotteryType", getLottery())); criteria.add(Restrictions.eq("curPeriodId", curPeriodId)); criteria.add(Restrictions.eq("state", ChaseState.RUNNING)); List<Long> list = queryService.findByDetachedCriteria(criteria); if (list != null && !list.isEmpty()) { for (Long chasePlanId : list) { this.handChasePlan(chasePlanId); } } }
From source file:com.cai310.lottery.service.lottery.keno.impl.KenoServiceImpl.java
@Transactional(readOnly = true) public List<I> getCanOpenResults() { DetachedCriteria criteria = DetachedCriteria.forClass(issueDataDao.getEntityClass()); criteria.add(Restrictions.lt("endedTime", new Date())); criteria.add(Restrictions.gt("endedTime", DateUtils.addDays(new Date(), -1))); criteria.add(Restrictions.eq("state", IssueState.ISSUE_SATE_END)); criteria.addOrder(Order.desc("id")); return issueDataDao.findByDetachedCriteria(criteria, true); }
From source file:com.cai310.lottery.service.lottery.keno.impl.KenoServiceImpl.java
@Transactional(readOnly = true) public S getLastChaseScheme(long chaseId) { DetachedCriteria detachedCriteria = DetachedCriteria.forClass(this.schemeDao.getEntityClass()); detachedCriteria.add(Restrictions.eq("chaseId", chaseId)); detachedCriteria.addOrder(Order.desc("id")); List<S> schemeList = this.schemeDao.findByDetachedCriteria(detachedCriteria, 0, 1, true); if (schemeList != null && schemeList.size() > 0) { return schemeList.get(0); }/*from w w w. ja v a 2s. c o m*/ return null; }
From source file:com.cai310.lottery.service.lottery.keno.impl.KenoServiceImpl.java
@Transactional(readOnly = true, propagation = Propagation.SUPPORTS) public List<Subscription> findSubscriptionsOfScheme(final long schemeId, final SubscriptionState state) { final S scheme = getScheme(schemeId); DetachedCriteria criteria = DetachedCriteria.forClass(Subscription.class); criteria.add(Restrictions.eq("schemeId", schemeId)); criteria.add(Restrictions.eq("lotteryType", scheme.getLotteryType())); if (state != null) { criteria.add(Restrictions.eq("state", state)); }// ww w . j av a 2s .c o m return subscriptionDao.findByDetachedCriteria(criteria); }