/** * @see VisitService#saveVisitAttributeType(VisitAttributeType) */ @Test public void saveVisitAttributeType_shouldEditAnExistingVisitAttributeType() { executeDataSet(VISITS_ATTRIBUTES_XML); assertEquals(3, visitService.getAllVisitAttributeTypes().size()); VisitAttributeType vat = visitService.getVisitAttributeType(1); vat.setName("A new name"); visitService.saveVisitAttributeType(vat); assertEquals(3, visitService.getAllVisitAttributeTypes().size()); assertEquals("A new name", visitService.getVisitAttributeType(1).getName()); }
VisitType visitType; if (StringUtils.isNumeric(visitTypeIdOrUuid)) { visitType = visitService.getVisitType(Integer.parseInt(visitTypeIdOrUuid)); } else { visitType = visitService.getVisitTypeByUuid(visitTypeIdOrUuid); return Context.getVisitService().getAllVisitTypes().get(0);
@Override protected Visit getObjectByUuid(String uuid) { return Context.getVisitService().getVisitByUuid(uuid); } }
private void mergeVisits(Patient preferred, Patient notPreferred, PersonMergeLogData mergedData) { // move all visits, including voided ones (encounters will be handled below) //TODO: this should be a copy, not a move VisitService visitService = Context.getVisitService(); for (Visit visit : visitService.getVisitsByPatient(notPreferred, true, true)) { if (log.isDebugEnabled()) { log.debug("Merging visit " + visit.getVisitId() + " to " + preferred.getPatientId()); } visit.setPatient(preferred); Visit persisted = visitService.saveVisit(visit); mergedData.addMovedVisit(persisted.getUuid()); } }
/** * @see VisitService#purgeVisitAttributeType(VisitAttributeType) */ @Test public void purgeVisitAttributeType_shouldCompletelyRemoveAVisitAttributeType() { executeDataSet(VISITS_ATTRIBUTES_XML); assertEquals(3, visitService.getAllVisitAttributeTypes().size()); visitService.purgeVisitAttributeType(visitService.getVisitAttributeType(2)); assertEquals(2, visitService.getAllVisitAttributeTypes().size()); }
/** * @see VisitService#saveVisit(Visit) */ @Test public void saveVisit_shouldBeAbleToAddAnAttributeToAVisit() { Date now = new Date(); Visit visit = visitService.getVisit(1); VisitAttributeType attrType = visitService.getVisitAttributeType(1); VisitAttribute attr = new VisitAttribute(); attr.setAttributeType(attrType); attr.setValue(now); visit.addAttribute(attr); visitService.saveVisit(visit); assertEquals(new SimpleDateFormat("yyyy-MM-dd").format(now), attr.getValueReference()); }
@Test public void saveVisitType_shouldSaveNewVisitType() { List<VisitType> visitTypes = visitService.getVisitTypes("Some Name"); assertEquals(0, visitTypes.size()); VisitType visitType = new VisitType("Some Name", "Description"); visitService.saveVisitType(visitType); visitTypes = visitService.getVisitTypes("Some Name"); assertEquals(1, visitTypes.size()); //Should create a new visit type row. assertEquals(4, visitService.getAllVisitTypes().size()); }
/** * @see org.openmrs.api.VisitService#getActiveVisitsByPatient(org.openmrs.Patient) */ @Override @Transactional(readOnly = true) public List<Visit> getActiveVisitsByPatient(Patient patient) throws APIException { return Context.getVisitService().getVisitsByPatient(patient, false, false); }
/** * @see org.openmrs.api.VisitService#unvoidVisit(org.openmrs.Visit) */ @Override public Visit unvoidVisit(Visit visit) throws APIException { return Context.getVisitService().saveVisit(visit); }
/** * Fetches a visitType by uuid, if no match is found, it tries to look up one with a matching * name with the assumption that the passed parameter is a visitType name * * @see DelegatingCrudResource#getByUniqueId(java.lang.String) */ @Override public VisitType getByUniqueId(String uuid) { VisitType visitType = Context.getVisitService().getVisitTypeByUuid(uuid); //We assume the caller was fetching by name, 1.9.0 has no method to fetch by name if (visitType == null) { List<VisitType> visitTypes = Context.getVisitService().getAllVisitTypes(); for (VisitType possibleVisitType : visitTypes) { if (possibleVisitType.getName().equalsIgnoreCase(uuid)) return possibleVisitType; } } return visitType; }
@Test public void purgeVisitType_shouldDeleteGivenVisitType() { VisitType visitType = visitService.getVisitType(3); assertNotNull(visitType); visitService.purgeVisitType(visitType); visitType = visitService.getVisitType(3); assertNull(visitType); //Should reduce the existing number of visit types. assertEquals(2, visitService.getAllVisitTypes().size()); }
@Test public void saveVisitType_shouldSaveEditedVisitType() { VisitType visitType = visitService.getVisitType(1); assertNotNull(visitType); assertEquals("Initial HIV Clinic Visit", visitType.getName()); visitType.setName("Edited Name"); visitType.setDescription("Edited Description"); visitService.saveVisitType(visitType); visitType = visitService.getVisitType(1); assertNotNull(visitType); assertEquals("Edited Name", visitType.getName()); assertEquals("Edited Description", visitType.getDescription()); //Should not change the number of visit types. assertEquals(3, visitService.getAllVisitTypes().size()); }
@Override protected VisitType getObjectByUuid(String uuid) { return Context.getVisitService().getVisitTypeByUuid(uuid); } }
private List<VisitType> getVisitTypesFromVisitTypeNames(String[] visitTypeNames) { List<VisitType> result = new ArrayList<>(); for (VisitType visitType : Context.getVisitService().getAllVisitTypes()) { if (ArrayUtils.contains(visitTypeNames, visitType.getName().toLowerCase())) { result.add(visitType); } } return result; }
/** * @see ExistingVisitAssignmentHandler#beforeCreateEncounter(Encounter) */ @Test public void beforeCreateEncounter_shouldNotAssignVisitWhichStoppedBeforeEncounterDate() { Encounter encounter = Context.getEncounterService().getEncounter(1); Assert.assertNull(encounter.getVisit()); //set the visit stop date to that before the encounter date Visit visit = Context.getVisitService().getVisit(1); Calendar calendar = Calendar.getInstance(); calendar.setTime(visit.getStartDatetime()); calendar.set(Calendar.YEAR, 2004); visit.setStopDatetime(calendar.getTime()); Context.getVisitService().saveVisit(visit); new ExistingVisitAssignmentHandler().beforeCreateEncounter(encounter); Assert.assertNull(encounter.getVisit()); } }
public void saveVisit_shouldSaveNewVisitWithEncountersSuccessfully() { Integer originalSize = visitService.getAllVisits().size(); Visit visit = new Visit(new Patient(2), new VisitType(1), new Date()); visit.addEncounter(encounter); visitService.saveVisit(visit); visit = visitService.getVisit(visitId); assertNotNull(visit.getCreator()); assertNotNull(visit.getDateCreated()); assertEquals(originalSize + 1, visitService.getAllVisits().size()); assertEquals(1, visit.getEncounters().size()); assertEquals(Integer.valueOf(4), ((Encounter) visit.getEncounters().toArray()[0]).getEncounterId());
List<Map> attributes = visit.get("attributes"); Map toEdit = attributes.get(1); VisitAttribute toEditAttribute = service.getVisitAttributeByUuid(toEdit.get("uuid").toString()); Visit existingVisit = service.getVisitByUuid(getUuid()); final int originalActiveCount = attributes.size(); assertEquals(2, originalActiveCount); assertEquals(3, existingVisit.getAttributes().size()); VisitAttributeType vat = service.getVisitAttributeTypeByUuid("6770f6d6-7673-11e0-8f03-001e378eb67g"); assertTrue(existingVisit.getActiveAttributes(vat).isEmpty()); SimpleObject toAdd = new SimpleObject();
@Test public void shouldCreateAVisitWithEncounters() throws Exception { int originalCount = service.getAllVisits().size(); final String patientUuid = "5946f880-b197-400b-9caa-a3c661d23041"; Patient patient = Context.getPatientService().getPatientByUuid(patientUuid); Assert.assertEquals(0, service.getVisitsByPatient(patient).size()); String json = "{ \"patient\":\"5946f880-b197-400b-9caa-a3c661d23041\", \"visitType\":\"" + RestTestConstants1_9.VISIT_TYPE_UUID + "\", \"location\":\"" + RestTestConstants1_9.LOCATION_UUID + "\", \"startDatetime\":\"" + DATE_FORMAT.format(new Date()) + "\", \"encounters\": [\"6519d653-393b-4118-9c83-a3715b82d4ac\", \"eec646cb-c847-45a7-98bc-91c8c4f70add\"] }"; Object newVisit = deserialize(handle(newPostRequest(getURI(), json))); Assert.assertNotNull(PropertyUtils.getProperty(newVisit, "uuid")); Assert.assertEquals(originalCount + 1, service.getAllVisits().size()); Assert.assertEquals(2, service.getVisitsByPatient(patient).get(0).getEncounters().size()); }
/** * @see VisitService#purgeVisit(Visit) */ @Test(expected = APIException.class) public void purgeVisit_shouldFailIfTheVisitHasEncountersAssociatedToIt() { Visit visit = visitService.getVisit(1); Encounter e = Context.getEncounterService().getEncounter(3); visit.addEncounter(e); visitService.saveVisit(visit); //sanity check assertTrue(Context.getEncounterService().getEncountersByVisit(visit, false).size() > 0); visitService.purgeVisit(visit); }
/** * @see VisitService#getAllVisitAttributeTypes() */ @Test public void getAllVisitAttributeTypes_shouldReturnAllVisitAttributeTypesIncludingRetiredOnes() { executeDataSet(VISITS_ATTRIBUTES_XML); assertEquals(3, visitService.getAllVisitAttributeTypes().size()); }