/** * @see org.openmrs.api.ProgramWorkflowService#getPossibleOutcomes(Integer) */ @Override @Transactional(readOnly = true) public List<Concept> getPossibleOutcomes(Integer programId) { List<Concept> possibleOutcomes = new ArrayList<>(); Program program = Context.getProgramWorkflowService().getProgram(programId); if (program == null) { return possibleOutcomes; } Concept outcomesConcept = program.getOutcomesConcept(); if (outcomesConcept == null) { return possibleOutcomes; } if (!outcomesConcept.getAnswers().isEmpty()) { for (ConceptAnswer conceptAnswer : outcomesConcept.getAnswers()) { possibleOutcomes.add(conceptAnswer.getAnswerConcept()); } return possibleOutcomes; } if (!outcomesConcept.getSetMembers().isEmpty()) { return outcomesConcept.getSetMembers(); } return possibleOutcomes; }
private List<Concept> getSetMembersOfConceptSetFromGP(String globalProperty) { String conceptUuid = Context.getAdministrationService().getGlobalProperty(globalProperty); Concept concept = Context.getConceptService().getConceptByUuid(conceptUuid); if (concept != null && concept.getSet()) { return concept.getSetMembers(); } return Collections.emptyList(); } }
/** * @see Concept#addSetMember(Concept) */ @Test public void addSetMember_shouldAppendConceptToExistingConceptSetHavingRetiredConcept() { Concept concept = new Concept(); Concept setMember1 = new Concept(1); setMember1.setRetired(true); concept.addSetMember(setMember1); Concept setMember2 = new Concept(2); concept.addSetMember(setMember2); Concept setMember3 = new Concept(3); concept.addSetMember(setMember3); assertThat(concept.getSetMembers(), hasItem(setMember1)); assertThat(concept.getSetMembers(), hasItem(setMember2)); assertThat(concept.getSetMembers(), hasItem(setMember3)); assertThat(concept.getSetMembers().size(), is(3)); } }
/** * @see Concept#getSetMembers() */ @Test(expected = UnsupportedOperationException.class) public void getSetMembers_shouldReturnUnmodifiableListOfConceptMemberList() { Concept c = new Concept(); c.addSetMember(new Concept(12345)); List<Concept> setMembers = c.getSetMembers(); Assert.assertEquals(1, setMembers.size()); setMembers.add(new Concept()); }
/** * @see Concept#getSetMembers() */ @Test public void getSetMembers_shouldReturnAllTheConceptMembersOfCurrentConcept() { Concept c = new Concept(); Concept setMember1 = new Concept(12345); c.addSetMember(setMember1); Concept setMember2 = new Concept(67890); c.addSetMember(setMember2); List<Concept> setMembers = c.getSetMembers(); Assert.assertEquals(2, setMembers.size()); Assert.assertEquals(setMember1, setMembers.get(0)); Assert.assertEquals(setMember2, setMembers.get(1)); }
/** * @see Concept#addSetMember(Concept) */ @Test public void addSetMember_shouldPlaceTheNewConceptLastInTheList() { Concept concept = new Concept(); Concept setMember1 = new Concept(1); concept.addSetMember(setMember1, 3); Concept setMember2 = new Concept(2); concept.addSetMember(setMember2); Assert.assertEquals(setMember2, concept.getSetMembers().get(1)); }
/** * @see Concept#addSetMember(Concept) */ @Test public void addSetMember_shouldAppendConceptToExistingConceptSet() { Concept concept = new Concept(); Concept setMember1 = new Concept(1); concept.addSetMember(setMember1); Concept setMember2 = new Concept(2); concept.addSetMember(setMember2); Assert.assertEquals(setMember2, concept.getSetMembers().get(1)); }
if (!concept.getSet() && (!concept.getSetMembers().isEmpty())) { concept.setSet(true);
/** * @see Concept#getSetMembers() */ @Test public void getSetMembers_shouldReturnConceptSetMembersSortedAccordingToTheSortWeight() { Concept c = new Concept(); ConceptSet set0 = new ConceptSet(new Concept(0), 3.0); ConceptSet set1 = new ConceptSet(new Concept(1), 2.0); ConceptSet set2 = new ConceptSet(new Concept(2), 1.0); ConceptSet set3 = new ConceptSet(new Concept(3), 0.0); List<ConceptSet> sets = new ArrayList<>(); sets.add(set0); sets.add(set1); sets.add(set2); sets.add(set3); c.setConceptSets(sets); List<Concept> setMembers = c.getSetMembers(); Assert.assertEquals(4, setMembers.size()); Assert.assertEquals(set3.getConcept(), setMembers.get(0)); Assert.assertEquals(set2.getConcept(), setMembers.get(1)); Assert.assertEquals(set1.getConcept(), setMembers.get(2)); Assert.assertEquals(set0.getConcept(), setMembers.get(3)); }
List<Concept> setMembers = c.getSetMembers(); Assert.assertEquals(set4.getConcept(), setMembers.get(0)); Assert.assertEquals(set2.getConcept(), setMembers.get(1));
protected void assertNoCycles(Concept delegate, Set<String> path) throws ConversionException { for (Concept member : delegate.getSetMembers()) { if (path.add(member.getUuid())) { assertNoCycles(member, path); } else { throw new ConversionException("Cycles in children are not supported. Concept with uuid " + delegate.getUuid() + " repeats in a set."); } path.remove(member.getUuid()); } }
if (groupingConcept != null) { for (Concept setMember : setMembers) { if (!groupingConcept.getSetMembers().contains(setMember)) { analysis.addWarning(Context.getMessageSourceService().getMessage( "htmlformentry.warning.invalidMember",
@Test public void shouldModifySetMembersOnConcept() throws Exception { MockHttpServletRequest request = request(RequestMethod.POST, getURI() + "/" + getUuid()); String json = "{ \"setMembers\": [\"0dde1358-7fcf-4341-a330-f119241a46e8\", \"54d2dce5-0357-4253-a91a-85ce519137f5\"] }"; request.setContent(json.getBytes()); handle(request); Concept concept = Context.getConceptService().getConceptByUuid(getUuid()); Assert.assertEquals(2, concept.getSetMembers().size()); json = "{ \"setMembers\": [\"0dde1358-7fcf-4341-a330-f119241a46e8\"] }"; request.setContent(json.getBytes()); handle(request); concept = Context.getConceptService().getConceptByUuid(getUuid()); Assert.assertEquals(1, concept.getSetMembers().size()); }
@Test public void shouldAddSetMembersToConcept() throws Exception { MockHttpServletRequest request = request(RequestMethod.POST, getURI() + "/" + getUuid()); String json = "{ \"setMembers\": [\"0dde1358-7fcf-4341-a330-f119241a46e8\", \"54d2dce5-0357-4253-a91a-85ce519137f5\"] }"; request.setContent(json.getBytes()); handle(request); Concept concept = Context.getConceptService().getConceptByUuid(getUuid()); Assert.assertEquals(2, concept.getSetMembers().size()); }