Skip to content

Commit 07548bf

Browse files
committed
MAINT-2596 Add missing properties in laterality failures
1 parent 4bc3fea commit 07548bf

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

src/main/java/org/ihtsdo/rvf/core/service/MRCMValidationService.java

+12-5
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
import org.slf4j.Logger;
1818
import org.slf4j.LoggerFactory;
1919
import org.snomed.quality.validator.mrcm.*;
20-
import org.snomed.quality.validator.mrcm.model.ReferenceSetMember;
2120
import org.springframework.beans.factory.annotation.Autowired;
2221
import org.springframework.beans.factory.annotation.Value;
2322
import org.springframework.stereotype.Service;
@@ -42,6 +41,8 @@ public class MRCMValidationService {
4241

4342
private static final String EXT_ZIP = ".zip";
4443

44+
private static final String COMMA = ",";
45+
4546
@Autowired
4647
private WhitelistService whitelistService;
4748

@@ -264,13 +265,15 @@ private TestRunItem createTestRunItemWithFailures(Assertion mrcmAssertion, Conte
264265
List<FailureDetail> failedDetails = new ArrayList<>(firstNCount);
265266
if (LateralizableRefsetValidationService.ASSERTION_ID_MEMBERS_NEED_TO_BE_REMOVED_FROM_LATERALIZABLE_REFSET.equals(mrcmAssertion.getUuid().toString())) {
266267
for (int i = 0; i < firstNCount; i++) {
267-
ReferenceSetMember referenceSetMember = mrcmAssertion.getCurrentViolatedReferenceSetMembers().get(i);
268-
failedDetails.add(new FailureDetail(referenceSetMember.referencedComponentId(), String.format(mrcmAssertion.getDetails(), referenceSetMember.memberId()), null));
268+
ConceptResult conceptResult = mrcmAssertion.getCurrentViolatedConcepts().get(i);
269+
String conceptId = conceptResult.getId();
270+
failedDetails.add(new FailureDetail(conceptId, String.format(mrcmAssertion.getDetails(), conceptId, "removed from"), conceptResult.getFsn()).setFullComponent(getAdditionalFields(conceptResult)).setComponentId(conceptId));
269271
}
270272
} else if (LateralizableRefsetValidationService.ASSERTION_ID_CONCEPTS_NEED_TO_BE_ADDED_TO_LATERALIZABLE_REFSET.equals(mrcmAssertion.getUuid().toString())) {
271273
for (int i = 0; i < firstNCount; i++) {
272-
Long conceptId = mrcmAssertion.getCurrentViolatedConceptIds().get(i);
273-
failedDetails.add(new FailureDetail(conceptId.toString(), String.format(mrcmAssertion.getDetails(), conceptId), null));
274+
ConceptResult conceptResult = mrcmAssertion.getCurrentViolatedConcepts().get(i);
275+
String conceptId = conceptResult.getId();
276+
failedDetails.add(new FailureDetail(conceptId, String.format(mrcmAssertion.getDetails(), conceptId, "added to"), conceptResult.getFsn()).setFullComponent(getAdditionalFields(conceptResult)).setComponentId(conceptId));
274277
}
275278
} else {
276279
for (int i = 0; i < firstNCount; i++) {
@@ -282,4 +285,8 @@ private TestRunItem createTestRunItemWithFailures(Assertion mrcmAssertion, Conte
282285
testRunItem.setFirstNInstances(failedDetails);
283286
return testRunItem;
284287
}
288+
289+
private String getAdditionalFields(ConceptResult conceptResult) {
290+
return (conceptResult.isActive() ? "1" : "0") + COMMA + conceptResult.getModuleId() + COMMA + conceptResult.getDefinitionStatusId();
291+
}
285292
}

0 commit comments

Comments
 (0)