List of usage examples for org.hibernate.criterion Restrictions between
public static Criterion between(String propertyName, Object low, Object high)
From source file:dk.teachus.backend.dao.hibernate.HibernateBookingDAO.java
License:Apache License
@SuppressWarnings("unchecked") @Transactional(readOnly = true)//from www . j a va 2s. c o m public Bookings getBookings(Teacher teacher, DateMidnight fromDate, DateMidnight toDate) { DetachedCriteria c = DetachedCriteria.forClass(BookingImpl.class); DateTime start = fromDate.toDateTime().withHourOfDay(0).withMinuteOfHour(0).withSecondOfMinute(0) .withMillisOfSecond(0); DateTime end = toDate.toDateTime().withHourOfDay(23).withMinuteOfHour(59).withSecondOfMinute(59) .withMillisOfSecond(999); c.createCriteria("period").add(Restrictions.eq("status", Status.FINAL)); c.createCriteria("teacher").add(Restrictions.eq("active", true)); c.add(Restrictions.eq("teacher", teacher)); c.add(Restrictions.between("date", start, end)); c.add(Restrictions.eq("active", true)); c.setResultTransformer(DistinctRootEntityResultTransformer.INSTANCE); List<Booking> bookings = getHibernateTemplate().findByCriteria(c); List<Booking> filteredBookings = filterBookings(bookings); return new BookingsImpl(filteredBookings); }
From source file:dk.teachus.backend.dao.hibernate.HibernateBookingDAO.java
License:Apache License
@SuppressWarnings("unchecked") @Transactional(readOnly = true)//from w ww.ja v a2 s . co m public Bookings getBookings(Pupil pupil, DateMidnight fromDate, DateMidnight toDate) { DetachedCriteria c = DetachedCriteria.forClass(BookingImpl.class); DateTime start = new DateTime(fromDate).withHourOfDay(0).withMinuteOfHour(0).withSecondOfMinute(0) .withMillisOfSecond(0); DateTime end = new DateTime(toDate).withHourOfDay(23).withMinuteOfHour(59).withSecondOfMinute(59) .withMillisOfSecond(999); c.createCriteria("period").add(Restrictions.eq("status", Status.FINAL)); c.createCriteria("teacher").add(Restrictions.eq("active", true)); c.add(Restrictions.eq("pupil", pupil)); c.add(Restrictions.between("date", start, end)); c.add(Restrictions.eq("active", true)); c.setResultTransformer(DistinctRootEntityResultTransformer.INSTANCE); List<Booking> bookings = getHibernateTemplate().findByCriteria(c); List<Booking> filteredBookings = filterBookings(bookings); return new BookingsImpl(filteredBookings); }
From source file:edu.neu.webtoolsfinal.repository.UserRepository.java
public List<User> quickSearch(String gender, String seekingGender, Integer minAge, Integer maxAge, String country, String state, String city) { Criteria criteria = getSession().createCriteria(User.class); if (gender != null && !"Any".equals(gender)) { criteria.add(Restrictions.eq("gender", gender)); }// w w w . jav a 2 s .co m if (seekingGender != null && !"Any".equals(seekingGender)) { criteria.add(Restrictions.eq("seekingGender", seekingGender)); } if (minAge != null && maxAge != null) { criteria.add(Restrictions.between("age", minAge, maxAge)); } if (country != null && !"Any".equals(country)) { criteria.add(Restrictions.eq("country", country)); } if (state != null && !"".equals(state)) { criteria.add(Restrictions.eq("state", state)); } if (city != null && !"".equals(city)) { criteria.add(Restrictions.eq("city", city)); } return criteria.list(); }
From source file:edu.nps.moves.mmowgli.modules.registrationlogin.RegistrationPagePopupFirst.java
License:Open Source License
@SuppressWarnings("unchecked") public static Criterion getIntervalRestrictionTL() { Game game = Game.getTL();// w w w. j a v a 2 s .c o m if (!game.isRestrictByQueryListInterval()) return null; Date startDate = null, endDate = null; Session piiSess = VHibPii.getASession(); List<Query2Pii> lis = piiSess.createCriteria(Query2Pii.class) .add(Restrictions.eq(QUERY_MARKER_FIELD, QUERY_START_MARKER)).list(); if (!lis.isEmpty()) startDate = lis.get(0).getDate(); lis = piiSess.createCriteria(Query2Pii.class).add(Restrictions.eq(QUERY_MARKER_FIELD, QUERY_END_MARKER)) .list(); piiSess.close(); if (!lis.isEmpty()) endDate = lis.get(0).getDate(); if (startDate == null) { if (endDate == null) return null; return Restrictions.lt("date", endDate); } else { if (endDate == null) return Restrictions.gt("date", startDate); else return Restrictions.between("date", startDate, endDate); } }
From source file:edu.utah.further.core.data.hibernate.query.CriterionBuilderHibernateImpl.java
License:Apache License
/** * @param <E>//from w ww. ja va 2s .c om * @param criterion * @see #visit(edu.utah.further.core.search.IntervalExpression) */ private void visitInterval() { final String propertyName = (String) criterion.getParameter(0); final Object low = criterion.getParameter(1); final Object high = criterion.getParameter(2); result = Restrictions.between(propertyName, low, high); }
From source file:ee.ria.xroad.opmonitordaemon.OperationalDataRecordManager.java
License:Open Source License
private static boolean hasRecordsLeft(Session session, long lastMonitoringDataTs, long recordsTo, ClientId clientFilter, ClientId serviceProviderFilter) { if (lastMonitoringDataTs == recordsTo) { return false; }/*from w w w .j a v a2 s. c o m*/ Criteria criteria = createCriteria(session, clientFilter, serviceProviderFilter, Collections.singleton(MONITORING_DATA_TS)); // BETWEEN treats the endpoint values as included in the range. criteria.add(Restrictions.between(MONITORING_DATA_TS, lastMonitoringDataTs + 1, recordsTo)); criteria.setMaxResults(1); return criteria.list().size() > 0; }
From source file:ee.ria.xroad.opmonitordaemon.OperationalDataRecordManager.java
License:Open Source License
private static Criteria createCriteria(Session session, long recordsFrom, long recordsTo, ClientId clientFilter, ClientId serviceProviderFilter, Set<String> outputFields) { Criteria criteria = createCriteria(session, clientFilter, serviceProviderFilter, outputFields); // BETWEEN treats the endpoint values as included in the range. criteria.add(Restrictions.between(MONITORING_DATA_TS, recordsFrom, recordsTo)); criteria.addOrder(Order.asc(MONITORING_DATA_TS)); criteria.setMaxResults(maxRecordsInPayload); return criteria; }
From source file:ee.ria.xroad.proxy.messagelog.LogRecordManager.java
License:Open Source License
@SneakyThrows private MessageRecord getMessageRecord(Session session, String queryId, Date startTime, Date endTime) { Criteria criteria = session.createCriteria(MessageRecord.class); criteria.add(Restrictions.eq("queryId", queryId)); criteria.add(Restrictions.between("time", startTime.getTime(), endTime.getTime())); criteria.setMaxResults(1);/*w w w . j av a 2s . c o m*/ return (MessageRecord) criteria.uniqueResult(); }
From source file:es.sm2.openppm.core.dao.AuditDAO.java
License:Open Source License
private Criterion[] getRestrictions(AuditSearch search) { List<Criterion> restrictions = new ArrayList<Criterion>(); restrictions.add(Restrictions.eq(Audit.IDCOMPANY, search.getCompany().getIdCompany())); restrictions.add(Restrictions.eq(Audit.LOCATION, search.getLocation().name())); if (search.getIdProject() != null) { restrictions.add(Restrictions.eq(Audit.IDPROJECT, search.getIdProject())); }//w w w . j a v a 2 s. co m if (search.getIdContact() != null) { restrictions.add(Restrictions.eq(Audit.IDCONTACT, search.getIdContact())); } if (ValidateUtil.isNotNull(search.getProjectStatus())) { restrictions.add(Restrictions.eq(Audit.PROJECTSTATUS, search.getProjectStatus())); } if (search.getSince() != null && search.getUntil() != null) { restrictions.add(Restrictions.between(Audit.CREATIONDATE, search.getSince(), search.getUntil())); } else if (search.getSince() != null) { restrictions.add(Restrictions.ge(Audit.CREATIONDATE, search.getSince())); } else if (search.getUntil() != null) { restrictions.add(Restrictions.le(Audit.CREATIONDATE, search.getUntil())); } return restrictions.toArray(new Criterion[restrictions.size()]); }
From source file:es.sm2.openppm.core.dao.DataTableDAO.java
License:Open Source License
private void applyFilters(Criteria crit, List<DatoColumna> filtrosExtras) throws ParseException { SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy"); for (DatoColumna filtroColumna : filtrosExtras) { if (filtroColumna.getTipo() == Date.class) { // Filtramos si es una fecha Date tempDate = df.parse(filtroColumna.getValor()); crit.add(Restrictions.eq(filtroColumna.getNombre(), tempDate)); } else if (filtroColumna.getTipo() == Integer.class) { // Filtramos si es un numero Integer integer = Integer.parseInt(filtroColumna.getValor()); crit.add(Restrictions.eq(filtroColumna.getNombre(), integer)); } else if (filtroColumna.getTipo() == Boolean.class) { // Filtramos si es un booleano Boolean bool = Boolean.parseBoolean(filtroColumna.getValor()); crit.add(Restrictions.eq(filtroColumna.getNombre(), bool)); } else if (filtroColumna.getTipo() == List.class) { // Since Until if (filtroColumna.getSubTipo() != null && filtroColumna.getSubTipo() == Date.class) { Date sinceDate = (Date) filtroColumna.getObjectList()[0]; Date untilDate = (Date) filtroColumna.getObjectList()[1]; String sinceName = (String) filtroColumna.getNombreList()[0]; String untilName = (String) filtroColumna.getNombreList()[1]; crit.add(Restrictions.disjunction().add(Restrictions.between(sinceName, sinceDate, untilDate)) .add(Restrictions.between(untilName, sinceDate, untilDate)).add(Restrictions.and( Restrictions.le(sinceName, sinceDate), Restrictions.ge(untilName, untilDate)))); } else { // Tiene que estar en la lista crit.add(Restrictions.in(filtroColumna.getNombre(), filtroColumna.getValorList())); }//from w w w . ja v a2 s .co m } else if (filtroColumna.getTipo() == String.class) { if (filtroColumna.getSubTipo() == List.class) { if (!ValidateUtil.isNull(filtroColumna.getValor())) { String[] value = filtroColumna.getValor().split(","); List<Integer> ids = new ArrayList<Integer>(); for (String id : value) { ids.add(Integer.parseInt(id)); } if (filtroColumna.getCriteria() != null) { Criteria crit2 = crit.createCriteria(filtroColumna.getCriteria()); crit2.add(Restrictions.in(filtroColumna.getNombre(), ids)); } else { crit.add(Restrictions.in(filtroColumna.getNombre(), ids)); } } } else { // Comparando texto crit.add(Restrictions.like(filtroColumna.getNombre(), "%" + filtroColumna.getValor() + "%")); } } else { // Filtrando Objectos crit.add(Restrictions.eq(filtroColumna.getNombre(), filtroColumna.getObject())); } } }