List of usage examples for org.hibernate.criterion CriteriaSpecification DISTINCT_ROOT_ENTITY
ResultTransformer DISTINCT_ROOT_ENTITY
To view the source code for org.hibernate.criterion CriteriaSpecification DISTINCT_ROOT_ENTITY.
Click Source Link
From source file:es.emergya.bbdd.dao.IncidenciaHome.java
License:Open Source License
/** * Devuelve todas las incidencias que estuvieron abiertas en el intervalo * pasado y su posicin coincide con alguna de las zonas indicadas. Si no se * pasan zonas, la posicin no se utilizar como criterio para obtener la * lista de incidencias./* www . j a va 2 s .co m*/ * * @param nombreUsuario * el nombre de usuario del usuario que realiza la consulta. * @param fechaInicio * el instante inicial a usar en el filtro. * @param fechaFinal * el instante final a usar en el filtro. * @param zonas * Lista de zonas en las que deben estar las incidencias. * @return La lista de zonas que estuvieron abiertas en algn momento del * periodo en alguna de las zonas pasadas. */ @Transactional(propagation = Propagation.REQUIRES_NEW, readOnly = true, rollbackFor = Throwable.class) public List<Incidencia> getIncidenciasEnPeriodo(String nombreUsuario, Calendar fechaInicio, Calendar fechaFinal) { Date inicio = null; Date fin = null; if (fechaInicio != null) { inicio = fechaInicio.getTime(); } else { return new ArrayList<Incidencia>(0); } if (fechaFinal != null) { fin = fechaFinal.getTime(); } else { return new ArrayList<Incidencia>(0); } Criteria c = getSession().createCriteria(Incidencia.class).addOrder(Order.asc("referenciaHumana")) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY) .createAlias("street", "st", Criteria.LEFT_JOIN).createAlias("portal", "pt", Criteria.LEFT_JOIN); if (fin != null) { c = c.add(Restrictions.le("fechaCreacion", fin)); } if (inicio != null) { c = c.add(Restrictions.or(Restrictions.ge("fechaCierre", inicio), Property.forName("fechaCierre").isNull())); } log.trace("Criteria final: " + c); return c.list(); }
From source file:es.emergya.bbdd.dao.RolHome.java
License:Open Source License
@SuppressWarnings("unchecked") @Transactional(propagation = Propagation.REQUIRES_NEW, readOnly = true, rollbackFor = Throwable.class) public List<Flota> getAsigned(Rol r) { if (r == null || r.getId() == null) return new ArrayList<Flota>(0); log.debug("getAsigned(" + r.getId() + ")"); Session currentSession = getSession(); currentSession.clear();/* w w w . j a v a 2 s . c o m*/ Criteria criteria = currentSession.createCriteria(Flota.class).add(Restrictions.eq("habilitada", true)) .createCriteria("roles").add(Restrictions.in("id", new Long[] { r.getId() })); return (List<Flota>) criteria.setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY).list(); }
From source file:es.juntadeandalucia.panelGestion.persistencia.dao.impl.SchemaDAOImpl.java
License:Open Source License
@SuppressWarnings("unchecked") @Override//from w w w . j a v a2 s. co m public List<Schema> findByDataBase(long dataBaseId) { Criteria criteria = getSession().createCriteria(Schema.class); criteria.setFetchMode("dataBase", FetchMode.JOIN); criteria.setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY); criteria.add(Restrictions.eq("dataBase.id", dataBaseId)); return criteria.list(); }
From source file:es.juntadeandalucia.panelGestion.persistencia.dao.impl.TableDAOImpl.java
License:Open Source License
@SuppressWarnings("unchecked") @Override//from ww w .j a v a 2 s. c om public List<Table> findBySchema(long schemaId) { Criteria criteria = getSession().createCriteria(Table.class); criteria.setFetchMode("schema", FetchMode.JOIN); criteria.setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY); criteria.add(Restrictions.eq("schema.id", schemaId)); return criteria.list(); }
From source file:es.sm2.openppm.core.dao.ChangeControlDAO.java
License:Open Source License
@Deprecated public List<Changecontrol> findByProject(Project proj) { List<Changecontrol> list = null; if (proj != null) { Criteria crit = getSession().createCriteria(getPersistentClass()) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY) .add(Restrictions.eq(Changecontrol.PROJECT, proj)); // Joins//w ww. j ava 2s. c o m crit.setFetchMode(Changecontrol.CHANGETYPE, FetchMode.JOIN); crit.setFetchMode(Changecontrol.CHANGEREQUESTWBSNODES, FetchMode.JOIN); // Order crit.addOrder(Order.asc(Changecontrol.CHANGEDATE)); list = crit.list(); } return list; }
From source file:es.sm2.openppm.core.dao.ChangeControlDAO.java
License:Open Source License
/** * Find change controls// ww w . ja va 2s. c o m * * @param search * @return */ public List<Changecontrol> find(ChangeControlSearch search) { List<Changecontrol> list = null; if (search.getIdProject() != null) { Criteria crit = getSession().createCriteria(getPersistentClass()) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY) .add(Restrictions.eq(Changecontrol.PROJECT, new Project(search.getIdProject()))); // Joins crit.setFetchMode(Changecontrol.CHANGETYPE, FetchMode.JOIN); crit.setFetchMode(Changecontrol.CHANGEREQUESTWBSNODES, FetchMode.JOIN); // Filter by resolution if (search.getResolution() != null) { crit.add(Restrictions.eq(Changecontrol.RESOLUTION, search.getResolution())); } // Order crit.addOrder(Order.asc(Changecontrol.CHANGEDATE)); list = crit.list(); } return list; }
From source file:es.sm2.openppm.core.dao.CompanyDAO.java
License:Open Source License
/** * Search company of employee/*from w w w. j a va 2 s . c o m*/ * @param user * @return */ public Company searchByEmployee(Employee user) { Criteria crit = getSession().createCriteria(getPersistentClass()) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY).createCriteria(Company.CONTACTS) .createCriteria(Contact.EMPLOYEES).add(Restrictions.idEq(user.getIdEmployee())); return (Company) crit.uniqueResult(); }
From source file:es.sm2.openppm.core.dao.ContactDAO.java
License:Open Source License
/** * Search Contacts by filter/*ww w . ja v a 2 s .c om*/ * @param resourcepools * @param fullName * @param fileAs * @param performingorg * @param company * @param skills *@param jobcategories @return */ @SuppressWarnings("unchecked") public List<Contact> searchByFilter(String fullName, String fileAs, Performingorg performingorg, Company company, List<Resourcepool> resourcepools, List<Skill> skills, List<Jobcategory> jobcategories) { Contact example = new Contact(); example.setFileAs(fileAs); example.setFullName(fullName); Criteria crit = getSession().createCriteria(getPersistentClass()) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY) .add(Example.create(example).ignoreCase().enableLike(MatchMode.ANYWHERE)) .add(Restrictions.or(Restrictions.isNull(Contact.DISABLE), Restrictions.ne(Contact.DISABLE, true))); // Company // crit.createCriteria(Contact.COMPANY).add(Restrictions.idEq(company.getIdCompany())) .add(Restrictions.or(Restrictions.isNull(Company.DISABLE), Restrictions.ne(Company.DISABLE, true))); // Employee Criteria critEmployee = crit.createCriteria(Contact.EMPLOYEES, CriteriaSpecification.LEFT_JOIN); if (performingorg != null && performingorg.getIdPerfOrg() != null && performingorg.getIdPerfOrg() != -1) { critEmployee.createCriteria(Employee.PERFORMINGORG) .add(Restrictions.idEq(performingorg.getIdPerfOrg())); } if (ValidateUtil.isNotNull(resourcepools)) { critEmployee.add(Restrictions.in(Employee.RESOURCEPOOL, resourcepools)); } if (ValidateUtil.isNotNull(skills)) { critEmployee.createCriteria(Employee.SKILLSEMPLOYEES) .add(Restrictions.in(Skillsemployee.SKILL, skills)); } if (ValidateUtil.isNotNull(jobcategories)) { critEmployee.createCriteria(Employee.JOBCATEMPLOYEES) .add(Restrictions.in(Jobcatemployee.JOBCATEGORY, jobcategories)); } return crit.list(); }
From source file:es.sm2.openppm.core.dao.ContactDAO.java
License:Open Source License
/** * Find owners LLAA// w ww . j a v a 2 s . c o m * * @param company * @return */ public List<Contact> findUsedInLLAA(Company company) { Criteria crit = getSession().createCriteria(getPersistentClass()) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY) .add(Restrictions.eq(Contact.COMPANY, company)) .add(Restrictions.or(Restrictions.isNull(Contact.DISABLE), Restrictions.ne(Contact.DISABLE, true))) .addOrder(Order.asc(Contact.FULLNAME)); crit.createCriteria(Contact.LEARNEDLESSONS).add(Restrictions.eq(LearnedLesson.COMPANY, company)); return crit.list(); }
From source file:es.sm2.openppm.core.dao.MetrickpiDAO.java
License:Open Source License
/** * Search metricKpis by filter//from w ww .j a v a2s .c o m * * @param name * @param type *@param company @return */ @SuppressWarnings("unchecked") public List<Metrickpi> searchByFilter(String name, Integer idBSCDimension, String type, Project project, Company company, List<String> joins) { Metrickpi example = new Metrickpi(); example.setName(name); Criteria crit = getSession().createCriteria(getPersistentClass()) .setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY) .add(Example.create(example).ignoreCase().enableLike(MatchMode.ANYWHERE)); // Add joins if (joins != null && !joins.isEmpty()) { for (String join : joins) { crit.setFetchMode(join, FetchMode.JOIN); } } // by company crit.createCriteria(Metrickpi.COMPANY).add(Restrictions.idEq(company.getIdCompany())) .add(Restrictions.or(Restrictions.isNull(Company.DISABLE), Restrictions.ne(Company.DISABLE, true))); // By bsc dimension if (!idBSCDimension.equals(-1)) { crit.add(Restrictions.eq(Metrickpi.BSCDIMENSION, new Bscdimension(idBSCDimension))); } // By type if (ValidateUtil.isNotNull(type)) { crit.add(Restrictions.eq(Metrickpi.TYPE, type)); } // By project if (project.getIdProject() != -1) { crit.createCriteria(Projectkpi.PROJECT).add(Restrictions.idEq(project.getIdProject())); } return crit.list(); }