@Override protected Cohort getObjectByUuid(String uuid) { return Context.getCohortService().getCohortByUuid(uuid); } }
/** * @see org.openmrs.api.CohortService#voidCohort(org.openmrs.Cohort, java.lang.String) */ @Override public Cohort voidCohort(Cohort cohort, String reason) { // other setters done by the save handlers return Context.getCohortService().saveCohort(cohort); }
/** * @see org.openmrs.api.CohortService#getAllCohorts() */ @Override @Transactional(readOnly = true) public List<Cohort> getAllCohorts() throws APIException { return Context.getCohortService().getAllCohorts(false); }
@Override protected Cohort getObjectById(Integer id) { return Context.getCohortService().getCohort(id); }
/** * @see CohortService#voidCohortMembership(CohortMembership, String) */ @Override public CohortMembership voidCohortMembership(CohortMembership cohortMembership, String reason) { Context.getCohortService().saveCohort(cohortMembership.getCohort()); return cohortMembership; }
/** * @see CohortService#endCohortMembership(CohortMembership, Date) */ @Override public CohortMembership endCohortMembership(CohortMembership cohortMembership, Date onDate) { cohortMembership.setEndDate(onDate == null ? new Date() : onDate); Context.getCohortService().saveCohort(cohortMembership.getCohort()); return cohortMembership; }
/** * @see org.openmrs.api.CohortService#removePatientFromCohort(org.openmrs.Cohort, * org.openmrs.Patient) */ @Override public Cohort removePatientFromCohort(Cohort cohort, Patient patient) { List<CohortMembership> memberships = getCohortMemberships(patient.getPatientId(), null, false); List<CohortMembership> toVoid = memberships.stream() .filter(m -> m.getCohort().equals(cohort)) .collect(Collectors.toList()); for (CohortMembership membership : toVoid) { Context.getCohortService().voidCohortMembership(membership, "removePatientFromCohort"); } return cohort; }
/** * Run this before each unit test in this class. The "@Before" method in * {@link BaseContextSensitiveTest} is run right before this method. * * @throws Exception */ @Before public void runBeforeAllTests() { service = Context.getCohortService(); }
/** * @see CohortService#purgeCohortMembership(CohortMembership) */ @Override public void purgeCohortMembership(CohortMembership cohortMembership) throws APIException { Cohort cohort = cohortMembership.getCohort(); boolean removed = cohort.removeMembership(cohortMembership); if (removed) { Context.getCohortService().saveCohort(cohort); } }
/** * @see org.openmrs.api.CohortService#addPatientToCohort(org.openmrs.Cohort, * org.openmrs.Patient) */ @Override public Cohort addPatientToCohort(Cohort cohort, Patient patient) { if (!cohort.contains(patient.getPatientId())) { CohortMembership cohortMembership = new CohortMembership(patient.getPatientId()); cohort.addMembership(cohortMembership); Context.getCohortService().saveCohort(cohort); } return cohort; }
/** * @see CohortService#getCohortByUuid(String) */ @Test public void getCohortByUuid_shouldReturnNullIfNoObjectFoundWithGivenUuid() { assertNull(Context.getCohortService().getCohortByUuid("some invalid uuid")); }
/** * @see CohortService#getCohortMembershipByUuid(String) */ @Test public void getCohortMembershipByUuid_shouldReturnNullIfNoObjectFoundWithGivenUuid() { assertNull(Context.getCohortService().getCohortMembershipByUuid("some invalid uuid")); }
/** * @see org.openmrs.api.CohortService#notifyPatientVoided(org.openmrs.Patient) */ @Override public void notifyPatientVoided(Patient patient) throws APIException { List<CohortMembership> memberships = Context.getCohortService() .getCohortMemberships(patient.getPatientId(), null, false); memberships.forEach(m -> { m.setVoided(patient.getVoided()); m.setDateVoided(patient.getDateVoided()); m.setVoidedBy(patient.getVoidedBy()); m.setVoidReason(patient.getVoidReason()); dao.saveCohortMembership(m); }); }
/** * @verifies not get matching memberships of a cohort as of a date * @see Cohort#getActiveMemberships(Date) */ @Test public void getMemberships_shouldNotGetMatchingMembershipsAsOfADate() throws Exception { executeDataSet(COHORT_XML); Cohort cohort = Context.getCohortService().getCohort(1); CohortMembership newMember = new CohortMembership(4); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date startDate = dateFormat.parse("2017-11-01 00:00:00"); newMember.setStartDate(startDate); cohort.addMembership(newMember); service.saveCohort(cohort); Date dateToTest = dateFormat.parse("2016-11-01 00:00:00"); Collection<CohortMembership> membersAsOfDate = cohort.getActiveMemberships(dateToTest); assertFalse(membersAsOfDate.stream().anyMatch(m -> m.getStartDate().equals(dateToTest))); }
/** * @see CohortService#getCohortByUuid(String) */ @Test public void getCohortByUuid_shouldFindObjectGivenValidUuid() { executeDataSet(COHORT_XML); String uuid = "h9a9m0i6-15e6-467c-9d4b-mbi7teu9lf0f"; Cohort cohort = Context.getCohortService().getCohortByUuid(uuid); Assert.assertEquals(1, (int) cohort.getCohortId()); }
/** * @see CohortService#getCohortMembershipByUuid(String) */ @Test public void getCohortMembershipByUuid_shouldFindObjectGivenValidUuid() { executeDataSet(COHORT_XML); String uuid = "v9a9m5i6-17e6-407c-9d4v-hbi8teu9lf0f"; CohortMembership byUuid = Context.getCohortService().getCohortMembershipByUuid(uuid); Assert.assertEquals(1, (int) byUuid.getId()); }
/** * @verifies return voided memberships * @see Cohort#getMemberships(boolean) */ @Test public void getMemberships_shouldReturnVoidedMemberships() throws Exception { executeDataSet(COHORT_XML); CohortMembership voidedMembership = new CohortMembership(7); voidedMembership.setVoided(true); voidedMembership.setVoidedBy(Context.getAuthenticatedUser()); voidedMembership.setDateVoided(new Date()); voidedMembership.setVoidReason("Void reason"); CohortMembership nonVoidedMembership = new CohortMembership(4); Cohort cohort = Context.getCohortService().getCohort(1); cohort.addMembership(nonVoidedMembership); cohort.addMembership(voidedMembership); Context.getCohortService().saveCohort(cohort); Collection<CohortMembership> allMemberships = cohort.getMemberships(true); assertEquals(3, allMemberships.size()); }
@Before public void setUp() { validator = new CohortValidator(); executeDataSet(COHORT_XML); cohort = Context.getCohortService().getCohort(2); patient = Context.getPatientService().getPatient(7); cohortMembership = new CohortMembership(patient.getPatientId()); cohort.addMembership(cohortMembership); errors = new BindException(cohort, "cohort"); }
@Test public void patientUnvoided_shouldUnvoidMemberships() { executeDataSet(COHORT_XML); Cohort cohort = Context.getCohortService().getCohort(2); Patient unvoidedPatient = new Patient(7); User voidedBy = Context.getAuthenticatedUser(); Date dateVoided = new Date(); String voidReason = "Associated patient is voided"; CohortMembership voidedMembership = new CohortMembership(unvoidedPatient.getPatientId()); cohort.addMembership(voidedMembership); voidedMembership.setVoided(true); voidedMembership.setVoidedBy(voidedBy); voidedMembership.setDateVoided(dateVoided); voidedMembership.setVoidReason(voidReason); service.notifyPatientUnvoided(unvoidedPatient, voidedBy, dateVoided); assertFalse(voidedMembership.getVoided()); assertNull(voidedMembership.getVoidedBy()); assertNull(voidedMembership.getDateVoided()); assertNull(voidedMembership.getVoidReason()); }
@Test public void patientVoided_shouldVoidMemberships() { executeDataSet(COHORT_XML); Cohort cohort = Context.getCohortService().getCohort(2); Patient voidedPatient = new Patient(7); voidedPatient.setVoided(true); voidedPatient.setDateVoided(new Date()); voidedPatient.setVoidedBy(Context.getAuthenticatedUser()); voidedPatient.setVoidReason("Voided as a result of the associated patient getting voided"); CohortMembership newMemberContainingVoidedPatient = new CohortMembership(voidedPatient.getPatientId()); cohort.addMembership(newMemberContainingVoidedPatient); assertTrue(cohort.contains(voidedPatient.getPatientId())); assertEquals(1, service.getCohortsContainingPatientId(voidedPatient.getId()).size()); service.notifyPatientVoided(voidedPatient); assertTrue(newMemberContainingVoidedPatient.getVoided()); assertEquals(newMemberContainingVoidedPatient.getDateVoided(), voidedPatient.getDateVoided()); assertEquals(newMemberContainingVoidedPatient.getVoidedBy(), voidedPatient.getVoidedBy()); assertEquals(newMemberContainingVoidedPatient.getVoidReason(), voidedPatient.getVoidReason()); }