List of usage examples for org.hibernate.criterion Restrictions disjunction
public static Disjunction disjunction()
From source file:es.sm2.openppm.core.dao.ProjectDAO.java
License:Open Source License
/** * Check if project is in these status//ww w. j a va 2 s . c om * @param project * @param status * @return */ public boolean hasPermissionProject(Project project, String... status) { Criteria crit = getSession().createCriteria(getPersistentClass()).setProjection(Projections.rowCount()) .add(Restrictions.idEq(project.getIdProject())); Disjunction disjuntions = Restrictions.disjunction(); for (String stat : status) { disjuntions.add(Restrictions.eq(Project.STATUS, stat)); } crit.add(disjuntions); return ((Integer) crit.uniqueResult() > 0); }
From source file:es.sm2.openppm.core.dao.ProjectDAO.java
License:Open Source License
@SuppressWarnings("unchecked") public List<Project> find(String search, Performingorg performingorg, List<String> joins) { Criteria crit = getSession().createCriteria(getPersistentClass()) .add(Restrictions.disjunction().add(Restrictions.ilike(Project.PROJECTNAME, "%" + search + "%")) .add(Restrictions.ilike(Project.CHARTLABEL, "%" + search + "%")) .add(Restrictions.ilike(Project.ACCOUNTINGCODE, "%" + search + "%"))); if (performingorg != null) { crit.add(Restrictions.eq(Project.PERFORMINGORG, performingorg)); }// w ww .j a v a 2 s . c o m addJoins(crit, joins); return crit.list(); }
From source file:es.sm2.openppm.core.dao.ProjectDAO.java
License:Open Source License
/** * Sum priority by program/*from w w w .j a va2s.c o m*/ * @param program * @return */ public Integer sumPriorityByProgram(Program program, boolean projectsDisabled) { Criteria crit = getSession().createCriteria(getPersistentClass()) .setProjection(Projections.sum(Project.PRIORITY)).add(Restrictions.eq(Project.PROGRAM, program)) .add(Restrictions.disjunction() .add(Restrictions.eq(Project.INVESTMENTSTATUS, Constants.INVESTMENT_APPROVED)) .add(Restrictions.eq(Project.INVESTMENTSTATUS, Constants.INVESTMENT_IN_PROCESS))); // Projects not disabled if (projectsDisabled) { crit.add(Restrictions.disjunction().add(Restrictions.ne(Project.DISABLE, Constants.SELECTED)) .add(Restrictions.isNull(Project.DISABLE))); } Integer priority = (Integer) crit.uniqueResult(); return (priority == null ? 0 : priority); }
From source file:es.sm2.openppm.core.dao.ProjectDAO.java
License:Open Source License
/** * Search projects with list investment status * @param program/*from w w w .j a v a 2s . c o m*/ * @param investmentStatus * @return */ @SuppressWarnings("unchecked") public List<Project> findByProgramAndInvestmentStatus(Program program, List<String> investmentStatus, boolean projectsDisabled) { Criteria crit = getSession().createCriteria(getPersistentClass()) .add(Restrictions.eq(Project.PROGRAM, program)); Disjunction disjunction = Restrictions.disjunction(); for (String status : investmentStatus) { disjunction.add(Restrictions.eq(Project.INVESTMENTSTATUS, status)); } crit.add(disjunction); // Projects not disabled if (projectsDisabled) { crit.add(Restrictions.disjunction().add(Restrictions.ne(Project.DISABLE, Constants.SELECTED)) .add(Restrictions.isNull(Project.DISABLE))); } crit.addOrder(Order.asc(Project.TCV)); return crit.list(); }
From source file:es.sm2.openppm.core.dao.ProjectDAO.java
License:Open Source License
/** * Find projects by program and show or not show projects disabled * // www .j av a 2s . c om * @param program * @param projectsDisabled * @return */ @SuppressWarnings("unchecked") public List<Project> findByProgramAndProjectsDisabled(Program program, boolean projectsDisabled) { List<Project> projects = null; if (program.getIdProgram() != -1) { Criteria crit = getSession().createCriteria(getPersistentClass()); crit.add(Restrictions.eq("program.idProgram", program.getIdProgram())); // Projects not disabled if (projectsDisabled) { crit.add(Restrictions.disjunction().add(Restrictions.ne(Project.DISABLE, Constants.SELECTED)) .add(Restrictions.isNull(Project.DISABLE))); } projects = crit.list(); } return projects; }
From source file:es.sm2.openppm.core.dao.ProjectDAO.java
License:Open Source License
/** * /*w w w . j a v a 2s .c o m*/ * @param performingorg * @param projectsDisabled * @return */ @SuppressWarnings("unchecked") public List<Project> findByPO(Performingorg performingorg, boolean projectsDisabled) { Criteria crit = getSession().createCriteria(getPersistentClass()) .add(Restrictions.eq(Project.PERFORMINGORG, performingorg)) .add(Restrictions.or(Restrictions.eq(Project.STATUS, Constants.STATUS_CONTROL), Restrictions.eq(Project.STATUS, Constants.STATUS_PLANNING))); // Projects not disabled if (projectsDisabled) { crit.add(Restrictions.disjunction().add(Restrictions.ne(Project.DISABLE, Constants.SELECTED)) .add(Restrictions.isNull(Project.DISABLE))); } return crit.list(); }
From source file:es.sm2.openppm.core.dao.ProjectDAO.java
License:Open Source License
/** * Find by user role and not Initiating project * //from w w w.j a va 2 s.co m * @param user * @param enableDisable * @return */ @SuppressWarnings("unchecked") public List<Project> findByUser(Employee user, Boolean enableDisable) { // Create criteria Criteria crit = getSession().createCriteria(getPersistentClass()); // Not initiating projects crit.add(Restrictions.ne(Project.STATUS, Constants.STATUS_INITIATING)); if (Constants.ROLE_PM == user.getResourceprofiles().getIdProfile()) { // By Project Manager crit.add(Restrictions.eq(Project.EMPLOYEEBYPROJECTMANAGER, user)); } else if (Constants.ROLE_FM == user.getResourceprofiles().getIdProfile()) { // By Functional Manager crit.add(Restrictions.eq(Project.EMPLOYEEBYFUNCTIONALMANAGER, user)); } else if (Constants.ROLE_IM == user.getResourceprofiles().getIdProfile()) { // By Investment Manager crit.add(Restrictions.eq(Project.EMPLOYEEBYINVESTMENTMANAGER, user)); } else if (Constants.ROLE_SPONSOR == user.getResourceprofiles().getIdProfile()) { // By Sponsor crit.add(Restrictions.eq(Project.EMPLOYEEBYSPONSOR, user)); } else { // Other case by PO crit.add(Restrictions.eq(Project.PERFORMINGORG, user.getPerformingorg())); } // If setting disabled is enabled restrict projects not disabled if (enableDisable) { crit.add(Restrictions.disjunction().add(Restrictions.ne(Project.DISABLE, Boolean.TRUE)) .add(Restrictions.isNull(Project.DISABLE))); } // order by project name crit.addOrder(Order.asc(Project.PROJECTNAME)); List<String> joins = new ArrayList<String>(); joins.add(Project.PERFORMINGORG); joins.add(Project.EMPLOYEEBYPROJECTMANAGER); joins.add(Project.EMPLOYEEBYPROJECTMANAGER + "." + Employee.CONTACT); addJoins(crit, joins); return crit.list(); }
From source file:es.sm2.openppm.core.dao.ProjectDAO.java
License:Open Source License
/** * Search projects with list project status * * @param po// www . j ava 2 s.c o m * @param projectStatus * @param projectsDisabled * @return */ public List<Project> findByPOAndProjectStatus(Performingorg po, List<String> projectStatus, boolean projectsDisabled) { // Create criteria Criteria crit = getSession().createCriteria(getPersistentClass()); // Filter by PO if (po != null) { crit.add(Restrictions.eq(Project.PERFORMINGORG, po)); } // Filter by proejct status if (ValidateUtil.isNotNull(projectStatus)) { crit.add(Restrictions.in(Project.STATUS, projectStatus)); } // Projects not disabled if (projectsDisabled) { crit.add(Restrictions.disjunction().add(Restrictions.ne(Project.DISABLE, Constants.SELECTED)) .add(Restrictions.isNull(Project.DISABLE))); } // Filter investments rejected crit.add(Restrictions.ne(Project.INVESTMENTSTATUS, Constants.INVESTMENT_REJECTED)); // Order crit.addOrder(Order.asc(Project.CHARTLABEL)); return crit.list(); }
From source file:es.sm2.openppm.core.dao.ProjectDAO.java
License:Open Source License
/** * Find investments in process and not disabled * * @return/*from ww w. j av a 2 s . co m*/ */ public List<Project> findInvestmentsInProcess() { // Create criteria Criteria crit = getSession().createCriteria(getPersistentClass()); // Filter Not disabled projects crit.add(Restrictions.disjunction().add(Restrictions.ne(Project.DISABLE, Constants.SELECTED)) .add(Restrictions.isNull(Project.DISABLE))); // Filter investments rejected crit.add(Restrictions.eq(Project.INVESTMENTSTATUS, Constants.INVESTMENT_IN_PROCESS)); // Order crit.addOrder(Order.asc(Project.CHARTLABEL)); return crit.list(); }
From source file:es.sm2.openppm.core.dao.ProjectFollowupDAO.java
License:Open Source License
public Projectfollowup findLastWithDataByProject(Project proj) { Projectfollowup followup = null;/*from w w w .j a v a 2 s . co m*/ if (proj != null) { Criteria crit = getSession().createCriteria(getPersistentClass()); crit.add(Restrictions.eq("project.idProject", proj.getIdProject())) .add(Restrictions.disjunction().add(Restrictions.isNotNull("generalFlag")) .add(Restrictions.isNotNull("riskFlag")).add(Restrictions.isNotNull("costFlag")) .add(Restrictions.isNotNull("scheduleFlag"))) .addOrder(Order.desc("followupDate")).setMaxResults(1); followup = (Projectfollowup) crit.uniqueResult(); } return followup; }