List of usage examples for org.hibernate.criterion Restrictions or
public static LogicalExpression or(Criterion lhs, Criterion rhs)
From source file:es.sm2.openppm.core.dao.TeamMemberDAO.java
License:Open Source License
/** * Search Team Members by Project.../*from www.ja v a 2s . com*/ * * @param project * @param since * @param until * @param showDisabled * @return */ public List<Teammember> consStaffinFtes(Project project, Date since, Date until, boolean showDisabled) { // Create query and restrictions Criteria crit = getSession().createCriteria(getPersistentClass()) .setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY) .add(Restrictions.or(Restrictions.eq(Teammember.STATUS, Constants.RESOURCE_ASSIGNED), Restrictions.eq(Teammember.STATUS, Constants.RESOURCE_RELEASED))) .add(Restrictions.disjunction().add(Restrictions.between(Teammember.DATEIN, since, until)) .add(Restrictions.between(Teammember.DATEOUT, since, until)) .add(Restrictions.and(Restrictions.le(Teammember.DATEIN, since), Restrictions.ge(Teammember.DATEOUT, until)))); // Restriction project crit.createCriteria(Teammember.PROJECTACTIVITY).add(Restrictions.eq(Projectactivity.PROJECT, project)); if (!showDisabled) { // Exclude employees and contacts disabled crit.createCriteria(Teammember.EMPLOYEE, "em").add(Restrictions.ne(Employee.DISABLE, true)) .setFetchMode(Teammember.EMPLOYEE + "." + Employee.RESOURCEPROFILES, FetchMode.JOIN); crit.createCriteria("em." + Employee.CONTACT, "contact").add(Restrictions.ne(Contact.DISABLE, true)); } else { crit.setFetchMode(Teammember.EMPLOYEE, FetchMode.JOIN); crit.setFetchMode(Teammember.EMPLOYEE + "." + Employee.RESOURCEPROFILES, FetchMode.JOIN); crit.setFetchMode(Teammember.EMPLOYEE + "." + Employee.CONTACT, FetchMode.JOIN); // Create aliases for order crit.createAlias(Teammember.EMPLOYEE, "em").createAlias("em." + Employee.CONTACT, "contact"); } // Data needed crit.setFetchMode(Teammember.JOBCATEGORY, FetchMode.JOIN); // Order by name crit.addOrder(Order.asc("contact.fullName")); return crit.list(); }
From source file:es.sm2.openppm.core.dao.TeamMemberDAO.java
License:Open Source License
/** * Check if any member is assigned or preassigned in these project * /*w w w .j a v a2 s . c o m*/ * @param proj * @return */ public boolean isAssigned(Project proj) { Criteria crit = getSession().createCriteria(getPersistentClass()).setProjection(Projections.rowCount()) .add(Restrictions.or(Restrictions.eq(Teammember.STATUS, Constants.RESOURCE_ASSIGNED), Restrictions.eq(Teammember.STATUS, Constants.RESOURCE_PRE_ASSIGNED))) .createCriteria(Teammember.PROJECTACTIVITY).add(Restrictions.eq(Projectactivity.PROJECT, proj)); Integer count = (Integer) crit.uniqueResult(); return (count > 0); }
From source file:es.sm2.openppm.core.dao.TimesheetDAO.java
License:Open Source License
public double getHoursResourceInDates(Project project, Employee member, Date since, Date until, Integer idResourcePool, Operation operation, Projectactivity activity) { Criteria crit = getSession().createCriteria(getPersistentClass()); Criteria employeeCrit = null;/*w w w. ja v a2 s.c om*/ if (member != null || idResourcePool != null) { employeeCrit = crit.createCriteria(Timesheet.EMPLOYEE); } if (idResourcePool != null) { employeeCrit.add(Restrictions.eq(Employee.RESOURCEPOOL, new Resourcepool(idResourcePool))); } if (member != null) { employeeCrit.add(Restrictions.idEq(member.getIdEmployee())); } if (since != null && until != null) { crit.add(Restrictions.disjunction().add(Restrictions.between(Timesheet.INITDATE, since, until)) .add(Restrictions.between(Timesheet.ENDDATE, since, until)) .add(Restrictions.and(Restrictions.le(Timesheet.INITDATE, since), Restrictions.ge(Timesheet.ENDDATE, until)))); } if (project != null) { crit.add(Restrictions.eq(Timesheet.STATUS, Constants.TIMESTATUS_APP3)); Criteria activitiesCrit = crit.createCriteria(Timesheet.PROJECTACTIVITY) .add(Restrictions.eq(Projectactivity.PROJECT, project)); // Select only timesheet whose activity is control account Criteria wbsnodeCrit = activitiesCrit.createCriteria(Projectactivity.WBSNODE) .add(Restrictions.eq(Wbsnode.ISCONTROLACCOUNT, true)); } else if (operation != null) { crit.add(Restrictions.or(Restrictions.eq(Timesheet.STATUS, Constants.TIMESTATUS_APP2), Restrictions.eq(Timesheet.STATUS, Constants.TIMESTATUS_APP3))) .add(Restrictions.eq(Timesheet.OPERATION, operation)); } else if (activity != null) { crit.add(Restrictions.eq(Timesheet.STATUS, Constants.TIMESTATUS_APP3)) .add(Restrictions.eq(Timesheet.PROJECTACTIVITY, activity)); } return calcHours(crit.list(), since, until); }
From source file:es.sm2.openppm.core.dao.TimesheetDAO.java
License:Open Source License
/** * Check for hours pending approval - APP1 or APP2 * /*from ww w .j a v a 2 s. c o m*/ * @param project * @return */ public boolean pendingApproval(Project project) { Criteria crit = getSession().createCriteria(getPersistentClass()).setProjection(Projections.rowCount()) .add(Restrictions.or(Restrictions.eq(Timesheet.STATUS, Constants.TIMESTATUS_APP1), Restrictions.eq(Timesheet.STATUS, Constants.TIMESTATUS_APP2))); // Project restriction crit.createCriteria(Timesheet.PROJECTACTIVITY).add(Restrictions.eq(Projectactivity.PROJECT, project)); Integer count = (Integer) crit.uniqueResult(); return (count != null && count > 0); }
From source file:es.sm2.openppm.core.dao.WBSNodeDAO.java
License:Open Source License
/** * Check if one or more wbsnodes have budget null or 0 * /* w ww . j av a 2 s . c o m*/ * @param project * @return */ public boolean isBudgetEmpty(Project project) { Criteria crit = getSession().createCriteria(getPersistentClass()).setProjection(Projections.rowCount()) .add(Restrictions.eq(Wbsnode.ISCONTROLACCOUNT, true)).add(Restrictions.eq(Wbsnode.PROJECT, project)) .add(Restrictions.or(Restrictions.isNull(Wbsnode.BUDGET), Restrictions.eq(Wbsnode.BUDGET, new Double(0)))); //TODO http://192.168.65.102/redmine/issues/1688 .add(Restrictions.isNull(Wbsnode.BUDGET)); Integer rows = (Integer) crit.uniqueResult(); return (rows != null && rows > 0); }
From source file:es.sm2.openppm.core.dao.WbstemplateDAO.java
License:Open Source License
/** * Return tree of WBSTemplate of root node * @param wbstemplate// ww w .j a va 2s . c o m * @return */ @SuppressWarnings("unchecked") public List<Wbstemplate> findWbsTemplate(Wbstemplate wbstemplate) { Criteria crit = getSession().createCriteria(getPersistentClass()) .add(Restrictions.or(Restrictions.eq(Wbstemplate.IDWBSNODE, wbstemplate.getIdWbsnode()), Restrictions.eq(Wbstemplate.ROOT, wbstemplate.getIdWbsnode()))) .addOrder(Order.asc(Wbstemplate.NAME)); return crit.list(); }
From source file:es.tekniker.framework.ktek.questionnaire.mng.db.QuestionnaireManagerDB.java
License:Open Source License
public Ktek_questionnaire getQuestionnaireModel(int idquestionnaire) { Ktek_questionnaire instance = null;/*from w w w .j ava 2s. co m*/ PersistentSession session = null; DAOFactory lDAOFactory = null; Ktek_questionnaireDAO instanceDAO = null; Ktek_questionnaireCriteria objKtek_questionnaireCriteria = null; long nowInMillis = 0; try { nowInMillis = Utils.getCalendarGMT().getTimeInMillis(); session = es.tekniker.framework.ktek.questionnaire.KTEKPersistentManager.instance().getSession(); session.beginTransaction(); lDAOFactory = es.tekniker.framework.ktek.questionnaire.DAOFactory.getDAOFactory(); instanceDAO = lDAOFactory.getKtek_questionnaireDAO(); objKtek_questionnaireCriteria = new Ktek_questionnaireCriteria(); objKtek_questionnaireCriteria.isdeleted.eq((short) 0); objKtek_questionnaireCriteria.datevalidfrom.lt(nowInMillis); objKtek_questionnaireCriteria.add(Restrictions.or(Restrictions.isNull("datevalidto"), Restrictions.gt("datevalidto", nowInMillis))); objKtek_questionnaireCriteria.ktek_pk_idquestionnaire.eq(idquestionnaire); instance = instanceDAO.loadKtek_questionnaireByCriteria(objKtek_questionnaireCriteria); session.close(); if (instance != null) { log.debug("getQuestionnaireModel is not null "); } else { log.debug("getQuestionnaireModel is null "); } } catch (Exception e) { log.error("getQuestionnaireModel Exception " + e.getMessage()); e.printStackTrace(); try { if (session != null) session.close(); } catch (PersistentException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } return instance; }
From source file:es.tekniker.framework.ktek.questionnaire.mng.db.QuestionnaireManagerDB.java
License:Open Source License
public Ktek_formatquestionnaire getQuestionnaireAssessmentConfiguration(int idquestionnaire) { Ktek_formatquestionnaire instance = null; PersistentSession session = null;// w w w . j a v a2 s .c o m DAOFactory lDAOFactory = null; Ktek_formatquestionnaireDAO instanceDAO = null; Ktek_formatquestionnaireCriteria objKtek_formatquestionnaireCriteria = null; Ktek_questionnaireCriteria objKtek_fk_questionnaireCriteria = null; long nowInMillis = 0; try { nowInMillis = Utils.getCalendarGMT().getTimeInMillis(); session = es.tekniker.framework.ktek.questionnaire.KTEKPersistentManager.instance().getSession(); session.beginTransaction(); lDAOFactory = es.tekniker.framework.ktek.questionnaire.DAOFactory.getDAOFactory(); instanceDAO = lDAOFactory.getKtek_formatquestionnaireDAO(); objKtek_formatquestionnaireCriteria = new Ktek_formatquestionnaireCriteria(); objKtek_fk_questionnaireCriteria = objKtek_formatquestionnaireCriteria .createKtek_fk_questionnaireCriteria(); objKtek_fk_questionnaireCriteria.ktek_pk_idquestionnaire.eq(idquestionnaire); objKtek_fk_questionnaireCriteria.isdeleted.eq((short) 0); objKtek_fk_questionnaireCriteria.datevalidfrom.lt(nowInMillis); objKtek_fk_questionnaireCriteria.add(Restrictions.or(Restrictions.isNull("datevalidto"), Restrictions.gt("datevalidto", nowInMillis))); instance = instanceDAO.loadKtek_formatquestionnaireByCriteria(objKtek_formatquestionnaireCriteria); session.close(); if (instance != null) { log.debug("getQuestionnaireAssesmentConfiguration is not null "); } else { log.debug("getQuestionnaireAssesmentConfiguration is null "); } } catch (Exception e) { log.error("getQuestionnaireAssesmentConfiguration Exception " + e.getMessage()); e.printStackTrace(); try { if (session != null) session.close(); } catch (PersistentException e1) { e1.printStackTrace(); } } return instance; }
From source file:es.tekniker.framework.ktek.questionnaire.mng.db.QuestionnaireManagerDB.java
License:Open Source License
public Ktek_questionnairesection[] getQuestionnaireAssessmentSectionList(int idquestionnaire) { Ktek_questionnairesection[] instanceArray = null; PersistentSession session = null;/* ww w. jav a2s .c om*/ DAOFactory lDAOFactory = null; Ktek_questionnairesectionDAO instanceDAO = null; Ktek_questionnairesectionCriteria objKtek_questionnairesectionCriteria = null; Ktek_qsection_questionnaireCriteria objKtek_qsection_questionnaireCriteria = null; Ktek_questionnaireCriteria objKtek_fk_idquestionnaireCriteria = null; long nowInMillis = 0; try { nowInMillis = Utils.getCalendarGMT().getTimeInMillis(); session = es.tekniker.framework.ktek.questionnaire.KTEKPersistentManager.instance().getSession(); session.beginTransaction(); lDAOFactory = es.tekniker.framework.ktek.questionnaire.DAOFactory.getDAOFactory(); instanceDAO = lDAOFactory.getKtek_questionnairesectionDAO(); objKtek_questionnairesectionCriteria = new Ktek_questionnairesectionCriteria(); objKtek_qsection_questionnaireCriteria = objKtek_questionnairesectionCriteria .createKtek_qsection_questionnaireCriteria(); objKtek_qsection_questionnaireCriteria.ktek_fk_idquestionnaire_ktek_pk_idquestionnaire .eq(idquestionnaire); objKtek_fk_idquestionnaireCriteria = objKtek_qsection_questionnaireCriteria .createKtek_fk_idquestionnaireCriteria(); objKtek_fk_idquestionnaireCriteria.ktek_pk_idquestionnaire.eq(idquestionnaire); objKtek_fk_idquestionnaireCriteria.isdeleted.eq((short) 0); objKtek_fk_idquestionnaireCriteria.datevalidfrom.lt(nowInMillis); objKtek_fk_idquestionnaireCriteria.add(Restrictions.or(Restrictions.isNull("datevalidto"), Restrictions.gt("datevalidto", nowInMillis))); instanceArray = instanceDAO .listKtek_questionnairesectionByCriteria(objKtek_questionnairesectionCriteria); session.close(); if (instanceArray != null) { log.debug("getQuestionnaireAssesmentSectionList is not null "); } else { log.debug("getQuestionnaireAssesmentSectionList is null "); } } catch (Exception e) { log.error("getQuestionnaireAssesmentSectionList Exception " + e.getMessage()); e.printStackTrace(); try { if (session != null) session.close(); } catch (PersistentException e1) { e1.printStackTrace(); } } return instanceArray; }
From source file:es.tekniker.framework.ktek.questionnaire.mng.db.QuestionnaireManagerDB.java
License:Open Source License
public Ktek_questionnaire getQuestionnaire(int idquestionnaire) { Ktek_questionnaire instance = null;/*from ww w. java 2s . co m*/ DAOFactory lDAOFactory = null; PersistentSession session = null; Ktek_questionnaireDAO instanceDAO = null; Ktek_questionnaireCriteria objKtek_questionnaireCriteria = null; long nowInMillis = 0; try { nowInMillis = Utils.getCalendarGMT().getTimeInMillis(); session = es.tekniker.framework.ktek.questionnaire.KTEKPersistentManager.instance().getSession(); lDAOFactory = es.tekniker.framework.ktek.questionnaire.DAOFactory.getDAOFactory(); instanceDAO = lDAOFactory.getKtek_questionnaireDAO(); objKtek_questionnaireCriteria = new Ktek_questionnaireCriteria(); objKtek_questionnaireCriteria.ktek_pk_idquestionnaire.eq(idquestionnaire); objKtek_questionnaireCriteria.isdeleted.eq((short) 0); objKtek_questionnaireCriteria.datevalidfrom.lt(nowInMillis); objKtek_questionnaireCriteria.add(Restrictions.or(Restrictions.isNull("datevalidto"), Restrictions.gt("datevalidto", nowInMillis))); instance = instanceDAO.loadKtek_questionnaireByCriteria(objKtek_questionnaireCriteria); if (instance != null) log.debug("getQuestionnaire instance is not null"); else log.info("getQuestionnaire instance is null for idquestionnaire " + idquestionnaire); session.close(); } catch (Exception e) { log.error("getQuestionnaire Exception " + e.getMessage()); e.printStackTrace(); try { if (session != null) session.close(); } catch (PersistentException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } return instance; }