Example usage for org.hibernate.criterion Restrictions not

List of usage examples for org.hibernate.criterion Restrictions not

Introduction

In this page you can find the example usage for org.hibernate.criterion Restrictions not.

Prototype

public static Criterion not(Criterion expression) 

Source Link

Document

Return the negation of an expression

Usage

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();
}