List of usage examples for org.hibernate.criterion Restrictions eq
public static SimpleExpression eq(String propertyName, Object value)
From source file:au.org.theark.study.model.dao.StudyDao.java
License:Open Source License
/** * Determines if study component with a given name is already present for a Study. * // w ww .j a va2 s. c om * @param studyComponentName * @param study * @return */ public boolean isStudyComponentPresent(String studyComponentName, Study study) { boolean isPresent = false; Criteria criteria = getSession().createCriteria(StudyComp.class); criteria.add(Restrictions.eq("name", studyComponentName)); criteria.add(Restrictions.eq("study", study)); if (criteria.list() != null && criteria.list().size() > 0) { isPresent = true; } return isPresent; }
From source file:au.org.theark.study.model.dao.StudyDao.java
License:Open Source License
public boolean isStudyCompUnique(String studyComponentName, Study study, StudyComp studyComponentToUpdate) { boolean isUnique = true; StatelessSession stateLessSession = getStatelessSession(); Criteria criteria = stateLessSession.createCriteria(StudyComp.class); criteria.add(Restrictions.eq("name", studyComponentName)); criteria.add(Restrictions.eq("study", study)); criteria.setMaxResults(1);/*ww w . j a v a 2s . c om*/ StudyComp existingComponent = (StudyComp) criteria.uniqueResult(); if ((studyComponentToUpdate.getId() != null && studyComponentToUpdate.getId() > 0)) { if (existingComponent != null && !studyComponentToUpdate.getId().equals(existingComponent.getId())) { isUnique = false; } } else { if (existingComponent != null) { isUnique = false; } } stateLessSession.close(); return isUnique; }
From source file:au.org.theark.study.model.dao.StudyDao.java
License:Open Source License
/** * The count can be based on CustomFieldDisplay only instead of a left join with it using SubjectCustomFieldData *//*www . ja v a 2 s .co m*/ public long getSubjectCustomFieldDataCount(LinkSubjectStudy linkSubjectStudyCriteria, ArkFunction arkFunction) { Criteria criteria = getSession().createCriteria(CustomFieldDisplay.class); criteria.createAlias("customField", "cfield", JoinType.LEFT_OUTER_JOIN); criteria.createAlias("cfield.customFieldType", "cfieldType", JoinType.LEFT_OUTER_JOIN); criteria.add(Restrictions.eq("cfield.study", linkSubjectStudyCriteria.getStudy())); criteria.add(Restrictions.eq("cfield.arkFunction", arkFunction)); criteria.add(Restrictions.or(Restrictions.isNull("cfield.customFieldType"), Restrictions.eq("cfieldType.name", "SUBJECT"))); criteria.setProjection(Projections.rowCount()); return (Long) criteria.uniqueResult(); }
From source file:au.org.theark.study.model.dao.StudyDao.java
License:Open Source License
/** * The count can be based on CustomFieldDisplay only instead of a left join with it using FamilyCustomFieldData *//*from w w w .jav a 2 s.c o m*/ public long getFamilyCustomFieldDataCount(LinkSubjectStudy linkSubjectStudyCriteria, ArkFunction arkFunction) { Criteria criteria = getSession().createCriteria(CustomFieldDisplay.class); criteria.createAlias("customField", "cfield", JoinType.LEFT_OUTER_JOIN); criteria.createAlias("cfield.customFieldType", "cfieldType", JoinType.LEFT_OUTER_JOIN); criteria.add(Restrictions.eq("cfield.study", linkSubjectStudyCriteria.getStudy())); criteria.add(Restrictions.eq("cfield.arkFunction", arkFunction)); criteria.add(Restrictions.eq("cfieldType.name", "FAMILY")); criteria.setProjection(Projections.rowCount()); return (Long) criteria.uniqueResult(); }
From source file:au.org.theark.study.model.dao.StudyDao.java
License:Open Source License
public boolean isStudyComponentHasAttachments(StudyComp studyComp) { boolean isFlag = false; Criteria criteria = getStatelessSession().createCriteria(SubjectFile.class); criteria.add(Restrictions.eq("studyComp", studyComp)); criteria.setProjection(Projections.rowCount()); Long i = (Long) criteria.uniqueResult(); if (i > 0L) { isFlag = true;//from ww w. j a v a 2s . c o m } return isFlag; }
From source file:au.org.theark.study.model.dao.StudyDao.java
License:Open Source License
private boolean linkSubjectStudyExists(LinkSubjectStudy linkSubjectStudy) { Criteria criteria = getStatelessSession().createCriteria(LinkSubjectStudy.class); criteria.add(Restrictions.eq("subjectUID", linkSubjectStudy.getSubjectUID())); criteria.add(Restrictions.eq("study", linkSubjectStudy.getStudy())); return criteria.uniqueResult() != null; }
From source file:au.org.theark.study.model.dao.StudyDao.java
License:Open Source License
public LinkStudySubstudy isSubStudy(Study study) { Criteria criteria = getStatelessSession().createCriteria(LinkStudySubstudy.class); criteria.add(Restrictions.eq("subStudy", study)); LinkStudySubstudy linkedStudy = (LinkStudySubstudy) criteria.uniqueResult(); return linkedStudy; }
From source file:au.org.theark.study.model.dao.StudyDao.java
License:Open Source License
public List<Study> getChildStudyListOfParent(Study study) { Criteria criteria = getStatelessSession().createCriteria(Study.class); criteria.add(Restrictions.ne("id", study.getId())); criteria.add(Restrictions.eq("parentStudy", study)); try {// ww w.j a v a 2 s . c o m criteria.add(Restrictions.ne("studyStatus", getStudyStatus("Archive"))); } catch (StatusNotAvailableException e) { // TODO Auto-generated catch block e.printStackTrace(); } criteria.addOrder(Order.asc("name")); List<Study> childStudyList = (List<Study>) criteria.list(); return childStudyList; }
From source file:au.org.theark.study.model.dao.StudyDao.java
License:Open Source License
public RelationshipVo getSubjectRelative(final String subjectUID, final Long studyId) { List<RelationshipVo> relatives = new ArrayList<RelationshipVo>(); Criteria criteria = getSession().createCriteria(LinkSubjectStudy.class, "sub"); criteria.createAlias("sub.study", "substudy", JoinType.LEFT_OUTER_JOIN); criteria.createAlias("sub.person", "subPerson", JoinType.LEFT_OUTER_JOIN); criteria.createAlias("subPerson.genderType", "subGender", JoinType.LEFT_OUTER_JOIN); criteria.createAlias("subPerson.vitalStatus", "subVitStatus", JoinType.LEFT_OUTER_JOIN); criteria.createAlias("substudy.pedigreeConfiguration", "spc", JoinType.LEFT_OUTER_JOIN); criteria.createAlias("spc.customField", "cf", JoinType.LEFT_OUTER_JOIN); criteria.createAlias("cf.customFieldDisplay", "cfd", JoinType.LEFT_OUTER_JOIN); criteria.createAlias("sub.subjectCustomFieldDataSet", "scfd", JoinType.LEFT_OUTER_JOIN, Restrictions.eqProperty("cfd.id", "scfd.customFieldDisplay.id")); criteria.add(Restrictions.eq("sub.subjectUID", subjectUID)); criteria.add(Restrictions.eq("substudy.id", studyId)); criteria.setFetchMode("subject", FetchMode.JOIN); criteria.setFetchMode("relative", FetchMode.JOIN); ProjectionList projectionList = Projections.projectionList(); projectionList.add(Projections.property("sub.subjectUID"), "individualId"); projectionList.add(Projections.property("subGender.name"), "gender"); projectionList.add(Projections.property("subPerson.dateOfBirth"), "dob"); projectionList.add(Projections.property("subPerson.dateOfDeath"), "dod"); projectionList.add(Projections.property("subVitStatus.name"), "deceased"); projectionList.add(Projections.property("scfd.textDataValue"), "affectedStatus"); criteria.setProjection(projectionList); criteria.setResultTransformer(Transformers.aliasToBean(RelationshipVo.class)); relatives = criteria.list();//from w ww . j a v a2 s. c o m return relatives.size() > 0 ? relatives.get(0) : null; }