List of usage examples for org.hibernate.criterion Restrictions not
public static Criterion not(Criterion expression)
From source file:ro.cs.om.model.dao.impl.DaoDepartmentImpl.java
License:Open Source License
/** * Lists all Potential Parent Departments for this Department. * Potential Parents are found by discriminating from all Organization's Departments * those that are part from this Department's subtree of departments. * @author dan.damian //from w w w .ja v a 2 s . co m */ public List<Department> listPotentialParentDepartments(Integer departmentId, Integer organisationId) { logger.debug("listPotentialParentDepartments - START - departmentId ".concat(departmentId.toString()) .concat("organisation Id ").concat(organisationId.toString())); List<Department> potentialParentDepartments = new ArrayList<Department>(); List<Integer> allSubDepartmentsIds = listAllSubDepartmentsIds(departmentId, organisationId); Tools.getInstance().printList(logger, allSubDepartmentsIds); DetachedCriteria dc = DetachedCriteria.forEntityName(IModelConstant.departmentSimpleEntity); allSubDepartmentsIds.add(departmentId); dc.add(Restrictions.not(Restrictions.in("departmentId", allSubDepartmentsIds))); dc.add(Restrictions.eq("organisationId", organisationId)); dc.add(Restrictions.eq("status", IConstant.NOM_DEPARTMENT_ACTIVE)); potentialParentDepartments = getHibernateTemplate().findByCriteria(dc); Tools.getInstance().printList(logger, potentialParentDepartments); logger.debug("listPotentialParentDepartments - END - results " + potentialParentDepartments.size()); return potentialParentDepartments; }
From source file:ro.cs.om.model.dao.impl.DaoRoleImpl.java
License:Open Source License
/** * Get roles by organisation and module//from www . ja va 2 s . com * @author coni * @param organisationId * @param moduleId * @return List<Role> */ public List<Role> getRolesByModuleAndOrganisation(Integer organisationId, Integer moduleId, Person person) { logger.debug("getRolesByModuleAndOrganisation DAO IMPL - START - "); logger.debug("organisationId = " + organisationId); logger.debug("moduleId = " + moduleId); Set<Role> roles = person.getRoles(); Integer[] roleIds = new Integer[roles.size()]; int i = 0; for (Role role : roles) { roleIds[i] = role.getRoleId(); i++; } DetachedCriteria dc = DetachedCriteria.forEntityName(IModelConstant.roleForListingEntity); dc.add(Restrictions.eq("organisation.organisationId", organisationId)); dc.add(Restrictions.eq("module.moduleId", moduleId)); dc.add(Restrictions.not(Restrictions.in("roleId", roleIds))); List<Role> res = getHibernateTemplate().findByCriteria(dc); logger.debug("getRolesByModuleAndOrganisation DAO IMPL - END - ".concat(String.valueOf(roles.size()))); return res; }
From source file:to.etc.domui.hibernate.model.CriteriaCreatingVisitor.java
License:Open Source License
@Override public void visitUnaryNode(final QUnaryNode n) throws Exception { switch (n.getOperation()) { default://from w w w.j ava2 s . c o m throw new IllegalStateException("Unsupported UNARY operation: " + n.getOperation()); case SQL: if (n.getNode() instanceof QLiteral) { QLiteral l = (QLiteral) n.getNode(); String s = (String) l.getValue(); m_last = Restrictions.sqlRestriction(s); return; } break; case NOT: n.getNode().visit(this); m_last = Restrictions.not(m_last); return; } throw new IllegalStateException("Unsupported UNARY operation: " + n.getOperation()); }
From source file:uk.org.rbc1b.roms.db.volunteer.HibernateVolunteerDao.java
License:Open Source License
private Criteria createVolunteerSearchCriteria(VolunteerSearchCriteria searchCriteria, Session session) { Criteria criteria = session.createCriteria(Volunteer.class); criteria.createAlias("Person", "person"); if (searchCriteria.getCongregationId() != null || searchCriteria.getKingdomHallId() != null) { criteria.createAlias("person.congregation", "congregation"); if (searchCriteria.getKingdomHallId() != null) { criteria.createAlias("congregation.kingdomHall", "kingdomHall"); }//w w w .j a v a 2s. co m } else if (searchCriteria.getSearch() != null || "congregation.name".equals(searchCriteria.getSortValue())) { criteria.createAlias("person.congregation", "congregation", JoinType.LEFT_OUTER_JOIN); } if (searchCriteria.getSearch() != null) { String searchValue = "%" + searchCriteria.getSearch() + "%"; criteria.add(Restrictions.or(Restrictions.like("person.forename", searchValue), Restrictions.like("person.middleName", searchValue), Restrictions.like("person.surname", searchValue), Restrictions.like("person.email", searchValue), Restrictions.like("congregation.name", searchValue))); } // private String location; if (searchCriteria.getId() != null) { criteria.add(Restrictions.eq("personId", searchCriteria.getId())); } if (searchCriteria.getForename() != null) { criteria.add(Restrictions.like("person.forename", "%" + searchCriteria.getForename() + "%")); } if (searchCriteria.getSurname() != null) { criteria.add(Restrictions.like("person.surname", "%" + searchCriteria.getSurname() + "%")); } if (searchCriteria.getLocation() != null) { String searchValue = "%" + searchCriteria.getLocation() + "%"; criteria.add(Restrictions.or(Restrictions.like("person.address.street", searchValue), Restrictions.like("person.address.town", searchValue), Restrictions.like("person.address.county", searchValue), Restrictions.like("person.address.postcode", searchValue))); } if (searchCriteria.getCongregationId() != null) { criteria.add(Restrictions.eq("person.congregation.congregationId", searchCriteria.getCongregationId())); } if (searchCriteria.getKingdomHallId() != null) { criteria.add(Restrictions.eq("kingdomHall.kingdomHallId", searchCriteria.getKingdomHallId())); } if (searchCriteria.getSkillId() != null) { DetachedCriteria skillCriteria = DetachedCriteria.forClass(VolunteerSkill.class); skillCriteria.add(Restrictions.eq("skillId", searchCriteria.getSkillId())); skillCriteria.setProjection(Projections.property("personId")); criteria.add(Property.forName("personId").in(skillCriteria)); } if (searchCriteria.getQualificationId() != null) { DetachedCriteria qualificationCriteria = DetachedCriteria.forClass(VolunteerQualification.class); qualificationCriteria.add(Restrictions.eq("qualificationId", searchCriteria.getQualificationId())); qualificationCriteria.setProjection(Projections.property("personId")); criteria.add(Property.forName("personId").in(qualificationCriteria)); } if (searchCriteria.getDepartmentId() != null) { DetachedCriteria departmentCriteria = DetachedCriteria.forClass(Assignment.class); departmentCriteria.add(Restrictions.eq("departmentId", searchCriteria.getDepartmentId())); departmentCriteria.setProjection(Projections.property("person.personId")); criteria.add(Property.forName("personId").in(departmentCriteria)); } if (searchCriteria.getInterviewSessionId() != null) { DetachedCriteria interviewCriteria = DetachedCriteria.forClass(VolunteerInterviewSession.class); interviewCriteria.add( Restrictions.eq("interviewSession.interviewSessionId", searchCriteria.getInterviewSessionId())); interviewCriteria.setProjection(Projections.property("volunteer.personId")); criteria.add(Property.forName("personId").in(interviewCriteria)); } criteria.add(Restrictions.not(Restrictions.in("rbcStatusCode", Lists.newArrayList("DN", "IA")))); return criteria; }
From source file:uk.org.rbc1b.roms.db.volunteer.HibernateVolunteerDao.java
License:Open Source License
@Override public List<Volunteer> findVolunteersWhoNeedBiannualEmail(VolunteerSearchCriteria searchCriteria) { Session session = this.sessionFactory.getCurrentSession(); Criteria criteria = createVolunteerSearchCriteria(searchCriteria, session); DateTime todayLocalDate = new DateTime(); DateTime sixMonthsBehindLocalDate = todayLocalDate.minusMonths(6); Date todayDate = DataConverterUtil.toSqlDate(todayLocalDate); Date sixMonthsBehind = DataConverterUtil.toSqlDate(sixMonthsBehindLocalDate); criteria.add(Restrictions.and(//from w w w . j a va 2 s .c o m Restrictions.or(Restrictions.isNull("updateContactDetailsEmailLastSent"), Restrictions.not(Restrictions.between("updateContactDetailsEmailLastSent", sixMonthsBehind, todayDate))), Restrictions.or(Restrictions.isNull("contactDetailsLastConfirmed"), Restrictions .not(Restrictions.between("contactDetailsLastConfirmed", sixMonthsBehind, todayDate))))); if (searchCriteria.getMaxResults() != null) { criteria.setMaxResults(searchCriteria.getMaxResults()); } criteria.addOrder(Order.asc("person.personId")); return criteria.list(); }