/** * @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); }); }
encounter.setDateVoided(patient.getDateVoided()); es.voidEncounter(encounter, voidReason);
/** * @see PatientService#unvoidPatient(Patient) */ @Test public void unvoidPatient_shouldReturnUnvoidedPatient() throws Exception { Patient patient = Context.getPatientService().getPatient(2); Patient voidedPatient = Context.getPatientService().voidPatient(patient, "Void for testing"); Assert.assertTrue(voidedPatient.getVoided()); Assert.assertNotNull(voidedPatient.getVoidedBy()); Assert.assertNotNull(voidedPatient.getVoidReason()); Assert.assertNotNull(voidedPatient.getDateVoided()); Patient unvoidedPatient = Context.getPatientService().unvoidPatient(voidedPatient); Assert.assertFalse(unvoidedPatient.getVoided()); Assert.assertNull(unvoidedPatient.getVoidedBy()); Assert.assertNull(unvoidedPatient.getVoidReason()); Assert.assertNull(unvoidedPatient.getDateVoided()); }
/** * @see PatientService#unvoidPatient(Patient) */ @Test public void unvoidPatient_shouldUnvoidGivenPatient() throws Exception { Patient patient = Context.getPatientService().getPatient(2); Patient voidedPatient = Context.getPatientService().voidPatient(patient, "Void for testing"); Assert.assertTrue(voidedPatient.getVoided()); Assert.assertNotNull(voidedPatient.getVoidedBy()); Assert.assertNotNull(voidedPatient.getVoidReason()); Assert.assertNotNull(voidedPatient.getDateVoided()); Patient unvoidedPatient = Context.getPatientService().unvoidPatient(voidedPatient); Assert.assertFalse(unvoidedPatient.getVoided()); Assert.assertNull(unvoidedPatient.getVoidedBy()); Assert.assertNull(unvoidedPatient.getVoidReason()); Assert.assertNull(unvoidedPatient.getDateVoided()); }
/** * @see PatientService#voidPatient(Patient,String) */ @Test public void voidPatient_shouldReturnVoidedPatientWithGivenReason() throws Exception { Patient patient = Context.getPatientService().getPatient(2); Patient voidedPatient = Context.getPatientService().voidPatient(patient, "Void for testing"); Assert.assertTrue(voidedPatient.getVoided()); Assert.assertNotNull(voidedPatient.getVoidedBy()); Assert.assertNotNull(voidedPatient.getVoidReason()); Assert.assertNotNull(voidedPatient.getDateVoided()); Assert.assertEquals("Void for testing", voidedPatient.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()); }
new PatientDataUnvoidHandler().handle(patient, patient.getVoidedBy(), patient.getDateVoided(), null);
new PatientDataUnvoidHandler().handle(patient, user, patient.getDateVoided(), null);