use of org.akaza.openclinica.bean.core.DataEntryStage in project OpenClinica by OpenClinica.
the class CrfBusinessLogicHelper method markCRFStarted.
/**
* The following methods are for 'mark CRF complete' Note that we will also wrap Study Event status changes in this
* code, possibly split out in a later release, tbh 06/2008
*
* @return
*/
public boolean markCRFStarted(EventCRFBean ecb, UserAccountBean ub) throws Exception {
EventCRFDAO eventCrfDao = new EventCRFDAO(ds);
StudyDAO sdao = new StudyDAO(ds);
StudyBean study = sdao.findByStudySubjectId(ecb.getStudySubjectId());
EventDefinitionCRFBean edcb = getEventDefinitionCrfByStudyEventAndCrfVersion(ecb, study);
StudyEventDefinitionDAO studyEventDefinitionDao = new StudyEventDefinitionDAO(ds);
StudyEventDefinitionBean sedBean = (StudyEventDefinitionBean) studyEventDefinitionDao.findByPK(edcb.getStudyEventDefinitionId());
CRFDAO crfDao = new CRFDAO(ds);
ArrayList crfs = (ArrayList) crfDao.findAllActiveByDefinition(sedBean);
sedBean.setCrfs(crfs);
logger.debug("inout_event_crf_id:" + ecb.getId());
logger.debug("inout_study_event_def_id:" + sedBean.getId());
Status newStatus = Status.AVAILABLE;
DataEntryStage newStage = ecb.getStage();
ecb.setUpdater(ub);
ecb.setUpdatedDate(new Date());
ecb.setStatus(newStatus);
ecb.setStage(newStage);
ecb = (EventCRFBean) eventCrfDao.update(ecb);
logger.debug("just updated event crf id: " + ecb.getId());
StudyEventDAO sedao = new StudyEventDAO(ds);
StudyEventBean seb = (StudyEventBean) sedao.findByPK(ecb.getStudyEventId());
if (seb.getSubjectEventStatus().isScheduled() || seb.getSubjectEventStatus().isNotScheduled() || seb.getSubjectEventStatus().isDE_Started()) {
// change status for study event
seb.setUpdatedDate(new Date());
seb.setUpdater(ub);
seb.setSubjectEventStatus(SubjectEventStatus.DATA_ENTRY_STARTED);
seb = (StudyEventBean) sedao.update(seb);
}
return true;
}
use of org.akaza.openclinica.bean.core.DataEntryStage in project OpenClinica by OpenClinica.
the class TableOfContentsServlet method getLink.
/**
* Assumes the Event CRF's data entry stage is not Uncompleted.
*
* @param ecb
* An Event CRF which should be displayed in the table of
* contents.
* @return A text link to the Table of Contents servlet for the bean.
*/
public static String getLink(EventCRFBean ecb) {
DataEntryStage stage = ecb.getStage();
String answer = Page.TABLE_OF_CONTENTS_SERVLET.getFileName();
answer = Page.TABLE_OF_CONTENTS_SERVLET.getFileName();
answer += "?action=" + getActionForStage(ecb.getStage());
answer += "&" + INPUT_ID + "=" + ecb.getId();
return answer;
}
Aggregations