package org.akaza.openclinica.dao.hibernate; import java.util.List; import org.akaza.openclinica.domain.datamap.EventCrf; public class EventCrfDao extends AbstractDomainDao<EventCrf> { @Override Class<EventCrf> domainClass() { // TODO Auto-generated method stub return EventCrf.class; } public EventCrf findByStudyEventIdStudySubjectIdCrfVersionId(int study_event_id, int study_subject_id, int crf_version_id) { String query = "from " + getDomainClassName() + " event_crf where event_crf.crfVersion.crfVersionId = :crfversionid and event_crf.studyEvent.studyEventId = :studyeventid and event_crf.studySubject.studySubjectId= :studysubjectid"; org.hibernate.Query q = getCurrentSession().createQuery(query); q.setInteger("studyeventid", study_event_id); q.setInteger("studysubjectid", study_subject_id); q.setInteger("crfversionid", crf_version_id); return (EventCrf) q.uniqueResult(); } public EventCrf findByStudyEventIdStudySubjectIdCrfId(int study_event_id, int study_subject_id, int crf_id) { String query = "from " + getDomainClassName() + " event_crf where event_crf.crfVersion.crf.crfId = :crfid and event_crf.studyEvent.studyEventId = :studyeventid and event_crf.studySubject.studySubjectId= :studysubjectid"; org.hibernate.Query q = getCurrentSession().createQuery(query); q.setInteger("studyeventid", study_event_id); q.setInteger("studysubjectid", study_subject_id); q.setInteger("crfid", crf_id); return (EventCrf) q.uniqueResult(); } @SuppressWarnings("unchecked") public List<EventCrf> findByStudyEventIdStudySubjectId(Integer studyEventId, String studySubjectOid) { String query = "from " + getDomainClassName() + " event_crf where event_crf.studyEvent.studyEventId = :studyeventid and event_crf.studySubject.ocOid= :studysubjectoid"; org.hibernate.Query q = getCurrentSession().createQuery(query); q.setInteger("studyeventid", studyEventId); q.setString("studysubjectoid", studySubjectOid); return (List<EventCrf>) q.list(); } @SuppressWarnings("unchecked") public List<EventCrf> findByStudyEventStatus(Integer studyEventId, Integer statusCode) { String query = "from " + getDomainClassName() + " event_crf where event_crf.studyEvent.studyEventId = :studyeventid and event_crf.statusId = :statusid"; org.hibernate.Query q = getCurrentSession().createQuery(query); q.setInteger("studyeventid", studyEventId); q.setInteger("statusid", statusCode); return (List<EventCrf>) q.list(); } }