我正在将我的代码转换为 FHIR STU3,我试图通过在 ListEntryComponent 上调用 getItemTarget() 来获取 List.entry[x].item.reference 引用的组织资源,但它总是返回 NULL,尽管资源是那里(见if (organizations.get(i).getItemTarget())
)。有什么问题?
这是我正在使用的部分代码:
if (entries0.get(e).getReference().equals("List/g1")) {
//get the organizations list
var organizations = entries0.get(e).getResource().getEntry();
for (var i = 0; i < organizations.size(); i++) {
var orgReference = organizations.get(i).getItem();
if (orgReference.hasReference()) {
//if the reference resolves, Organization.type must be present
if (organizations.get(i).getItemTarget() &&
organizations.get(i).getItemTarget().getResourceType() == fhirPackageStruct.ResourceType.Organization) {
list1OrgTypeSystem = organizations.get(i).getItemTarget().getTypeFirstRep().getCodingFirstRep().getSystem().equals("http://spms.min-saude.pt/pds/codings/nn_organization_types");
throwIfTrue(!list1OrgTypeSystem,'Composition.section[0].entry['+e+'].entry['+i+'].item ' + orgReference.getReference(), "INVALID Organization.type.system. Expected: http://spms.min-saude.pt/pds/codings/nn_organization_types");
}
else {
throw 'srcTransf validateNNDocumentProfile: não foi encontrado o recurso referenciado por ' + orgReference.getReference() + ' da lista de instituições de seguimento da grávida.';
}
orgReference = orgReference.getReference().toLowerCase();
}
if (orgReference.equals("organization/hospital")) {
section0HospMotive = organizations.get(i).getItemTarget().getExtension().isEmpty();
throwIfTrue(section0HospMotive,'Composition.section[0].entry['+e+'].entry['+i+'].item (Organization/Hospital)', "MISSING FOLLOWUP MOTIVE EXTENSION");
}
}
}
你能帮我么?谢谢!!