if (visit.getLocation() == null || Location.isInHierarchy(encounter.getLocation(), visit.getLocation())) { encounter.setVisit(visit); return;
@Override public boolean matches(Object argument) { Visit visit = (Visit) argument; return OpenmrsUtil.nullSafeEquals(visit.getLocation(), expected.getLocation()) && OpenmrsUtil.nullSafeEquals(visit.getVisitType(), expected.getVisitType()) && OpenmrsUtil.nullSafeEquals(visit.getIndication(), expected.getIndication()) && OpenmrsUtil.nullSafeEquals(visit.getStartDatetime(), expected.getStartDatetime()) && OpenmrsUtil.nullSafeEquals(visit.getStopDatetime(), expected.getStopDatetime()) && (visit.getEncounters().size() == expected.getEncounters().size()); } };
/** * @see VisitService#saveVisit(Visit) */ @Test public void saveVisit_shouldUpdateAnExistingVisitInTheDatabase() { Visit visit = visitService.getVisit(2); assertNull(visit.getLocation());//this is the field we are editing assertNull(visit.getChangedBy()); assertNull(visit.getDateChanged()); visit.setLocation(Context.getLocationService().getLocation(1)); visit = visitService.saveVisit(visit); Context.flushSession(); assertNotNull(visit.getChangedBy()); assertNotNull(visit.getDateChanged()); assertEquals(Integer.valueOf(1), visit.getLocation().getLocationId()); }
/** * @see VisitService#saveVisit(Visit) */ @Test(expected = TransientObjectException.class) public void saveVisit_shouldNotPersistNewEncounter() { Visit visit = visitService.getVisit(1); Encounter encounter = new Encounter(); encounter.setEncounterDatetime(new Date()); encounter.setEncounterType(Context.getEncounterService().getEncounterType(1)); encounter.setPatient(visit.getPatient()); encounter.setLocation(visit.getLocation()); visit.addEncounter(encounter); visitService.saveVisit(visit); Context.flushSession(); }
/** * @see VisitService#saveVisit(Visit) */ @Test public void saveVisit_shouldAssociateEncounterWithVisitOnSaveEncounter() { Visit visit = visitService.getVisit(1); EncounterService es = Context.getEncounterService(); Encounter encounter = new Encounter(); encounter.setEncounterDatetime(new Date()); encounter.setPatient(visit.getPatient()); encounter.setLocation(visit.getLocation()); encounter.setEncounterType(es.getEncounterType(1)); visit.addEncounter(encounter); Context.getEncounterService().saveEncounter(encounter); Integer encounterId = encounter.getEncounterId(); Context.flushSession(); Context.clearSession(); // reload the visit visit = visitService.getVisit(1); assertEquals(1, visit.getEncounters().size()); assertEquals(encounterId, ((Encounter) visit.getEncounters().toArray()[0]).getEncounterId()); }
/** * Returns a display string * * @param visit * @return the display string */ @PropertyGetter("display") public String getDisplayString(Visit visit) { String ret = visit.getVisitType() == null ? "?" : visit.getVisitType().getName(); ret += " "; ret += visit.getLocation() == null ? "?" : "@ " + visit.getLocation().getName(); ret += " - "; ret += visit.getStartDatetime() == null ? "?" : Context.getDateTimeFormat().format(visit.getStartDatetime()); return ret; }
Assert.assertFalse(newLocationUuid.equalsIgnoreCase(visit.getLocation().getUuid())); Assert.assertFalse(newIndicationConceptUuid.equalsIgnoreCase(visit.getIndication().getUuid())); Assert.assertFalse(newStartDatetime.equals(visit.getStartDatetime())); Assert.assertNotNull(updated); Assert.assertEquals(newVisitTypeUuid, updated.getVisitType().getUuid()); Assert.assertEquals(newLocationUuid, updated.getLocation().getUuid()); Assert.assertEquals(newIndicationConceptUuid, updated.getIndication().getUuid()); Assert.assertEquals(newStartDatetime, updated.getStartDatetime());