/** * @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 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 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; }
/** * @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))); }
/** * @verifies {@link Cohort#getActiveMemberships(Date)} */ @Test public void getMemberships_shouldGetMembershipsAsOfADate() throws ParseException { 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 dateToTest = dateFormat.parse("2016-11-01 00:00:00"); newMember.setStartDate(dateToTest); cohort.addMembership(newMember); service.saveCohort(cohort); Collection<CohortMembership> membersAsOfDate = cohort.getActiveMemberships(dateToTest); assertFalse(membersAsOfDate.isEmpty()); assertTrue(membersAsOfDate.stream().anyMatch(m -> m.getStartDate().equals(dateToTest))); }
/** * @see CohortService#saveCohort(Cohort) */ @Test public void saveCohort_shouldUpdateAnExistingCohort() { executeDataSet(COHORT_XML); // get and modify a cohort in the data set String modifiedCohortDescription = "This description has been modified in a test"; Cohort cohortToModify = service.getCohort(2); cohortToModify.setDescription(modifiedCohortDescription); // save the modified cohort back to the data set, see if the modification is there service.saveCohort(cohortToModify); assertTrue(service.getCohort(2).getDescription().equals(modifiedCohortDescription)); }
/** * @see CohortService#saveCohort(Cohort) */ @Test public void saveCohort_shouldCreateNewCohorts() { executeDataSet(COHORT_XML); // make sure we have two cohorts List<Cohort> allCohorts = service.getAllCohorts(true); assertNotNull(allCohorts); assertEquals(2, allCohorts.size()); // make and save a new one Integer[] ids = { 2, 3 }; Cohort newCohort = new Cohort("a third cohort", "a cohort to add for testing", ids); service.saveCohort(newCohort); // see if the new cohort shows up in the list of cohorts allCohorts = service.getAllCohorts(true); assertNotNull(allCohorts); assertEquals(3, allCohorts.size()); }
/** * @see org.openmrs.module.webservices.rest.web.resource.impl.DelegatingCrudResource#save(java.lang.Object) */ @Override public Cohort save(Cohort cohort) { return Context.getCohortService().saveCohort(cohort); }
/** * @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()); }
/** * @verifies return unvoided memberships * @see Cohort#getMemberships(boolean) */ @Test public void getMemberships_shouldReturnUnvoidedMemberships() throws Exception { executeDataSet(COHORT_XML); Cohort cohort = Context.getCohortService().getCohort(1); CohortMembership nonVoidedMembership = new CohortMembership(4); CohortMembership voidedMembership = new CohortMembership(7); voidedMembership.setVoided(true); voidedMembership.setVoidedBy(Context.getAuthenticatedUser()); voidedMembership.setDateVoided(new Date()); voidedMembership.setVoidReason("Void reason"); cohort.addMembership(nonVoidedMembership); cohort.addMembership(voidedMembership); Context.getCohortService().saveCohort(cohort); Collection<CohortMembership> unvoidedMemberships = cohort.getMemberships(false); assertEquals(2, unvoidedMemberships.size()); }
@Test public void handle_shouldVoidCohortMemberships() throws Exception { // test a corner case by letting the same patient belong to the cohort for two separate periods CohortMembership membership1 = new CohortMembership(7, parseDate("2001-01-01", "yyyy-MM-dd")); membership1.setEndDate(parseDate("2001-12-31", "yyyy-MM-dd")); CohortMembership membership2 = new CohortMembership(7, parseDate("2017-01-01", "yyyy-MM-dd")); CohortMembership membership3 = new CohortMembership(8); Cohort cohort = new Cohort(); cohort.setName("Cohort"); cohort.setDescription("Description"); cohort.setUuid(COHORT_UUID); cohort.addMembership(membership1); cohort.addMembership(membership2); cohort.addMembership(membership3); cohortService.saveCohort(cohort); PatientService patientService = Context.getPatientService(); patientService.voidPatient(patientService.getPatient(7), "void reason"); Collection<CohortMembership> memberships = cohortService.getCohortByUuid(COHORT_UUID).getMemberships(false); assertEquals(1, memberships.size()); assertEquals(8, (int) memberships.iterator().next().getPatientId()); // patientId 7 was voided } }
@Override public CohortMembership save(CohortMembership delegate) { Context.getCohortService().saveCohort(delegate.getCohort()); return delegate; }
cohort.addMembership(membership); cs.saveCohort(cohort);
/** * @param member the patient to be removed from cohort */ public void removeMemberFromCohort(CohortMember1_8 member) { getParent(member).removeMember(member.getPatient().getId()); Context.getCohortService().saveCohort(getParent(member)); }
/** * @param member the patient to be added to cohort */ public void addMemberToCohort(CohortMember1_8 member) { getParent(member).addMember(member.getPatient().getId()); Context.getCohortService().saveCohort(getParent(member)); }
@Before public void setUp() throws Exception { Cohort cohort = new Cohort(); cohort.addMembership(new CohortMembership(6)); cohort.addMembership(new CohortMembership(7)); cohort.setName(COHORT_NAME); cohort.setDescription("description"); cohort.setUuid(RestTestConstants2_1.COHORT_UUID); cohortService.saveCohort(cohort); }
@Before public void setUp() throws Exception { Cohort cohort = new Cohort(); cohort.addMembership(new CohortMembership(6)); cohort.addMembership(new CohortMembership(7)); cohort.setName(COHORT_NAME); cohort.setDescription("description"); cohort.setUuid(getUuidProperty()); Context.getCohortService().saveCohort(cohort); }
@Before public void setUp() throws Exception { startDate = DateUtils.parseDate("2017-01-01", "yyyy-MM-dd"); endDate = DateUtils.parseDate("2017-02-28 23:59:59", "yyyy-MM-dd HH:mm:ss"); CohortMembership membership = new CohortMembership(6); membership.setUuid(RestTestConstants2_1.COHORT_MEMBERSHIP_UUID); membership.setStartDate(startDate); membership.setEndDate(endDate); Cohort cohort = new Cohort(); cohort.addMembership(membership); cohort.addMembership(new CohortMembership(7)); cohort.setName(COHORT_NAME); cohort.setDescription("description"); cohort.setUuid(RestTestConstants2_1.COHORT_UUID); cohortService.saveCohort(cohort); }