Search in sources :

Example 1 with PatientInfo

use of org.hl7.gravity.refimpl.sdohexchange.info.PatientInfo in project beneficiary-fhir-data by CMSgov.

the class AbstractTransformerV2 method createHumanNameFrom.

protected static List<HumanName> createHumanNameFrom(PatientInfo patientInfo) {
    List<HumanName> names;
    // If no names, don't set anything
    if (patientInfo.getFirstName() != null || patientInfo.getLastName() != null || patientInfo.getMiddleName() != null) {
        names = new ArrayList<>();
        List<StringType> givens;
        // If no givens, don't set any
        if (patientInfo.getFirstName() != null || patientInfo.getLastName() != null) {
            givens = new ArrayList<>();
            if (patientInfo.getFirstName() != null) {
                givens.add(new StringType(patientInfo.getFirstName()));
            }
            if (patientInfo.getMiddleName() != null) {
                givens.add(new StringType(patientInfo.getMiddleName()));
            }
        } else {
            givens = null;
        }
        names.add(new HumanName().setFamily(patientInfo.getLastName()).setGiven(givens));
    } else {
        names = null;
    }
    return names;
}
Also used : HumanName(org.hl7.fhir.r4.model.HumanName) StringType(org.hl7.fhir.r4.model.StringType)

Example 2 with PatientInfo

use of org.hl7.gravity.refimpl.sdohexchange.info.PatientInfo in project Gravity-SDOH-Exchange-RI by FHIR.

the class PatientToDtoConverter method convert.

@Override
public PatientDto convert(PatientInfo patientInfo) {
    Patient patient = patientInfo.getPatient();
    PatientDto patientDto = new PatientDto();
    patientDto.setId(patient.getIdElement().getIdPart());
    patientDto.setName(patient.getNameFirstRep().getNameAsSingleString());
    // Get Date of Birth and Age
    if (patient.hasBirthDate()) {
        LocalDate dob = FhirUtil.toLocalDate(patient.getBirthDateElement());
        patientDto.setDob(dob);
        patientDto.setAge(Period.between(dob, LocalDate.now(ZoneOffset.UTC)).getYears());
    }
    // Get gender
    patientDto.setGender(ObjectUtils.defaultIfNull(patient.getGender(), Enumerations.AdministrativeGender.UNKNOWN).getDisplay());
    // Get communication language
    patientDto.setLanguage(patient.getCommunication().stream().filter(Patient.PatientCommunicationComponent::getPreferred).map(c -> c.getLanguage().getCodingFirstRep()).map(c -> c.getDisplay() != null ? c.getDisplay() : c.getCode()).filter(Objects::nonNull).findFirst().orElse(null));
    // Get Address full String. No need to compose it on UI side.
    patientDto.setAddress(patient.getAddress().stream().filter(a -> (patient.getAddress().size() == 1 && a.getUse() == null) || Address.AddressUse.HOME.equals(a.getUse())).map(this::convertAddress).findFirst().orElse(null));
    List<ContactPoint> telecom = patient.getTelecom();
    // Get phone numbers
    patientDto.getPhones().addAll(telecom.stream().filter(t -> ContactPoint.ContactPointSystem.PHONE.equals(t.getSystem())).map(cp -> {
        String display = cp.getUse() == null ? null : cp.getUse().getDisplay();
        return new PhoneDto(display, cp.getValue());
    }).collect(Collectors.toList()));
    // Get email addreses
    patientDto.getEmails().addAll(telecom.stream().filter(t -> ContactPoint.ContactPointSystem.EMAIL.equals(t.getSystem())).map(cp -> {
        String display = cp.getUse() == null ? null : cp.getUse().getDisplay();
        return new EmailDto(display, cp.getValue());
    }).collect(Collectors.toList()));
    if (patientInfo.getEmployment() != null) {
        String employmentStatus = patientInfo.getEmployment().getValueCodeableConcept().getCodingFirstRep().getDisplay();
        patientDto.setEmploymentStatus(employmentStatus);
    }
    if (patientInfo.getEducation() != null) {
        String education = patientInfo.getEducation().getValueCodeableConcept().getCodingFirstRep().getDisplay();
        patientDto.setEducation(education);
    }
    // Get race
    Extension race = patient.getExtensionByUrl(UsCorePatientExtensions.RACE);
    patientDto.setRace(convertExtension(race));
    // Get ethnicity
    Extension ethnicity = patient.getExtensionByUrl(UsCorePatientExtensions.ETHNICITY);
    patientDto.setEthnicity(convertExtension(ethnicity));
    // Get marital status
    Coding ms = patient.getMaritalStatus().getCodingFirstRep();
    patientDto.setMaritalStatus(Optional.ofNullable(ms.getDisplay()).orElse(Optional.ofNullable(ms.getCode()).orElse(null)));
    patientDto.getInsurances().addAll(convertPayors(patientInfo.getPayors()));
    return patientDto;
}
Also used : EmailDto(org.hl7.gravity.refimpl.sdohexchange.dto.response.EmailDto) ArrayList(java.util.ArrayList) RelatedPerson(org.hl7.fhir.r4.model.RelatedPerson) Strings(com.google.common.base.Strings) Address(org.hl7.fhir.r4.model.Address) ObjectUtils(org.apache.commons.lang3.ObjectUtils) IBaseResource(org.hl7.fhir.instance.model.api.IBaseResource) StringType(org.hl7.fhir.r4.model.StringType) PatientDto(org.hl7.gravity.refimpl.sdohexchange.dto.response.PatientDto) ZoneOffset(java.time.ZoneOffset) PatientInfo(org.hl7.gravity.refimpl.sdohexchange.info.PatientInfo) Patient(org.hl7.fhir.r4.model.Patient) Converter(org.springframework.core.convert.converter.Converter) Period(java.time.Period) Enumerations(org.hl7.fhir.r4.model.Enumerations) ContactPoint(org.hl7.fhir.r4.model.ContactPoint) Collectors(java.util.stream.Collectors) Objects(java.util.Objects) Organization(org.hl7.fhir.r4.model.Organization) List(java.util.List) UsCorePatientExtensions(org.hl7.gravity.refimpl.sdohexchange.fhir.UsCorePatientExtensions) PhoneDto(org.hl7.gravity.refimpl.sdohexchange.dto.response.PhoneDto) Coding(org.hl7.fhir.r4.model.Coding) LocalDate(java.time.LocalDate) Optional(java.util.Optional) Extension(org.hl7.fhir.r4.model.Extension) FhirUtil(org.hl7.gravity.refimpl.sdohexchange.util.FhirUtil) Extension(org.hl7.fhir.r4.model.Extension) ContactPoint(org.hl7.fhir.r4.model.ContactPoint) Coding(org.hl7.fhir.r4.model.Coding) Patient(org.hl7.fhir.r4.model.Patient) EmailDto(org.hl7.gravity.refimpl.sdohexchange.dto.response.EmailDto) PhoneDto(org.hl7.gravity.refimpl.sdohexchange.dto.response.PhoneDto) LocalDate(java.time.LocalDate) PatientDto(org.hl7.gravity.refimpl.sdohexchange.dto.response.PatientDto)

Example 3 with PatientInfo

use of org.hl7.gravity.refimpl.sdohexchange.info.PatientInfo in project MobileAccessGateway by i4mi.

the class Iti67ResponseConverter method translateToFhir.

@Override
public List<DocumentReference> translateToFhir(QueryResponse input, Map<String, Object> parameters) {
    ArrayList<DocumentReference> list = new ArrayList<DocumentReference>();
    if (input != null && Status.SUCCESS.equals(input.getStatus())) {
        // process relationship association
        Map<String, List<DocumentReferenceRelatesToComponent>> relatesToMapping = new HashMap<String, List<DocumentReferenceRelatesToComponent>>();
        for (Association association : input.getAssociations()) {
            // Relationship type -> relatesTo.code code [1..1]
            // relationship reference -> relatesTo.target Reference(DocumentReference)
            String source = association.getSourceUuid();
            String target = association.getTargetUuid();
            AssociationType type = association.getAssociationType();
            DocumentReferenceRelatesToComponent relatesTo = new DocumentReferenceRelatesToComponent();
            if (type != null)
                switch(type) {
                    case APPEND:
                        relatesTo.setCode(DocumentRelationshipType.APPENDS);
                        break;
                    case REPLACE:
                        relatesTo.setCode(DocumentRelationshipType.REPLACES);
                        break;
                    case TRANSFORM:
                        relatesTo.setCode(DocumentRelationshipType.TRANSFORMS);
                        break;
                    case SIGNS:
                        relatesTo.setCode(DocumentRelationshipType.SIGNS);
                        break;
                }
            relatesTo.setTarget(new Reference().setReference("urn:oid:" + target));
            if (!relatesToMapping.containsKey(source))
                relatesToMapping.put(source, new ArrayList<DocumentReferenceRelatesToComponent>());
            relatesToMapping.get(source).add(relatesTo);
        }
        if (input.getDocumentEntries() != null) {
            for (DocumentEntry documentEntry : input.getDocumentEntries()) {
                DocumentReference documentReference = new DocumentReference();
                // FIXME do we need to cache this id in
                documentReference.setId(noUuidPrefix(documentEntry.getEntryUuid()));
                // relation to the DocumentManifest itself
                // for
                list.add(documentReference);
                // limitedMetadata -> meta.profile canonical [0..*]
                if (documentEntry.isLimitedMetadata()) {
                    documentReference.getMeta().addProfile("http://ihe.net/fhir/StructureDefinition/IHE_MHD_Query_Comprehensive_DocumentReference");
                } else {
                    documentReference.getMeta().addProfile("http://ihe.net/fhir/StructureDefinition/IHE_MHD_Comprehensive_DocumentManifest");
                }
                // uniqueId -> masterIdentifier Identifier [0..1] [1..1]
                if (documentEntry.getUniqueId() != null) {
                    documentReference.setMasterIdentifier((new Identifier().setValue("urn:oid:" + documentEntry.getUniqueId())));
                }
                // DocumentReference.identifier. use shall be ‘official’
                if (documentEntry.getEntryUuid() != null) {
                    documentReference.addIdentifier((new Identifier().setSystem("urn:ietf:rfc:3986").setValue(asUuid(documentEntry.getEntryUuid()))).setUse(IdentifierUse.OFFICIAL));
                }
                // Other status values are allowed but are not defined in this mapping to XDS.
                if (AvailabilityStatus.APPROVED.equals(documentEntry.getAvailabilityStatus())) {
                    documentReference.setStatus(DocumentReferenceStatus.CURRENT);
                }
                if (AvailabilityStatus.DEPRECATED.equals(documentEntry.getAvailabilityStatus())) {
                    documentReference.setStatus(DocumentReferenceStatus.SUPERSEDED);
                }
                // contentTypeCode -> type CodeableConcept [0..1]
                if (documentEntry.getTypeCode() != null) {
                    documentReference.setType(transform(documentEntry.getTypeCode()));
                }
                // classCode -> category CodeableConcept [0..*]
                if (documentEntry.getClassCode() != null) {
                    documentReference.addCategory((transform(documentEntry.getClassCode())));
                }
                // representing the XDS Affinity Domain Patient.
                if (documentEntry.getPatientId() != null) {
                    Identifiable patient = documentEntry.getPatientId();
                    documentReference.setSubject(transformPatient(patient));
                }
                // creationTime -> date instant [0..1]
                if (documentEntry.getCreationTime() != null) {
                    documentReference.setDate(Date.from(documentEntry.getCreationTime().getDateTime().toInstant()));
                }
                // PractitionerRole| Organization| Device| Patient| RelatedPerson) [0..*]
                if (documentEntry.getAuthors() != null) {
                    for (Author author : documentEntry.getAuthors()) {
                        documentReference.addAuthor(transformAuthor(author));
                    }
                }
                // legalAuthenticator -> authenticator Note 1
                // Reference(Practitioner|Practition erRole|Organization [0..1]
                Person person = documentEntry.getLegalAuthenticator();
                if (person != null) {
                    Practitioner practitioner = transformPractitioner(person);
                    documentReference.setAuthenticator((Reference) new Reference().setResource(practitioner));
                }
                // Relationship Association -> relatesTo [0..*]
                // [1..1]
                documentReference.setRelatesTo(relatesToMapping.get(documentEntry.getEntryUuid()));
                // title -> description string [0..1]
                if (documentEntry.getTitle() != null) {
                    documentReference.setDescription(documentEntry.getTitle().getValue());
                }
                // DocumentReference itself.
                if (documentEntry.getConfidentialityCodes() != null) {
                    documentReference.addSecurityLabel(transform(documentEntry.getConfidentialityCodes()));
                }
                DocumentReferenceContentComponent content = documentReference.addContent();
                Attachment attachment = new Attachment();
                content.setAttachment(attachment);
                // mimeType -> content.attachment.contentType [1..1] code [0..1]
                if (documentEntry.getMimeType() != null) {
                    attachment.setContentType(documentEntry.getMimeType());
                }
                // languageCode -> content.attachment.language code [0..1]
                if (documentEntry.getLanguageCode() != null) {
                    attachment.setLanguage(documentEntry.getLanguageCode());
                }
                // retrievable location of the document -> content.attachment.url uri
                // [0..1] [1..1
                // has to defined, for the PoC we define
                // $host:port/camel/$repositoryid/$uniqueid
                attachment.setUrl(config.getUriMagXdsRetrieve() + "?uniqueId=" + documentEntry.getUniqueId() + "&repositoryUniqueId=" + documentEntry.getRepositoryUniqueId());
                // size -> content.attachment.size integer [0..1] The size is calculated
                if (documentEntry.getSize() != null) {
                    attachment.setSize(documentEntry.getSize().intValue());
                }
                // on the data prior to base64 encoding, if the data is base64 encoded.
                if (documentEntry.getHash() != null) {
                    attachment.setHash(Hex.fromHex(documentEntry.getHash()));
                }
                // comments -> content.attachment.title string [0..1]
                if (documentEntry.getComments() != null) {
                    attachment.setTitle(documentEntry.getComments().getValue());
                }
                // TcreationTime -> content.attachment.creation dateTime [0..1]
                if (documentEntry.getCreationTime() != null) {
                    attachment.setCreation(Date.from(documentEntry.getCreationTime().getDateTime().toInstant()));
                }
                // formatCode -> content.format Coding [0..1]
                if (documentEntry.getFormatCode() != null) {
                    content.setFormat(transform(documentEntry.getFormatCode()).getCodingFirstRep());
                }
                DocumentReferenceContextComponent context = new DocumentReferenceContextComponent();
                documentReference.setContext(context);
                // referenceIdList -> context.encounter Reference(Encounter) [0..*] When
                // referenceIdList contains an encounter, and a FHIR Encounter is available, it
                // may be referenced.
                // Map to context.related
                List<ReferenceId> refIds = documentEntry.getReferenceIdList();
                if (refIds != null) {
                    for (ReferenceId refId : refIds) {
                        context.getRelated().add(transform(refId));
                    }
                }
                // eventCodeList -> context.event CodeableConcept [0..*]
                if (documentEntry.getEventCodeList() != null) {
                    documentReference.getContext().setEvent(transformMultiple(documentEntry.getEventCodeList()));
                }
                // serviceStartTime serviceStopTime -> context.period Period [0..1]
                if (documentEntry.getServiceStartTime() != null || documentEntry.getServiceStopTime() != null) {
                    Period period = new Period();
                    period.setStartElement(transform(documentEntry.getServiceStartTime()));
                    period.setEndElement(transform(documentEntry.getServiceStopTime()));
                    documentReference.getContext().setPeriod(period);
                }
                // [0..1]
                if (documentEntry.getHealthcareFacilityTypeCode() != null) {
                    context.setFacilityType(transform(documentEntry.getHealthcareFacilityTypeCode()));
                }
                // practiceSettingCode -> context.practiceSetting CodeableConcept [0..1]
                if (documentEntry.getPracticeSettingCode() != null) {
                    context.setPracticeSetting(transform(documentEntry.getPracticeSettingCode()));
                }
                // sourcePatientId and sourcePatientInfo -> context.sourcePatientInfo
                // Reference(Patient) [0..1] Contained Patient Resource with
                // Patient.identifier.use element set to ‘usual’.
                Identifiable sourcePatientId = documentEntry.getSourcePatientId();
                PatientInfo sourcePatientInfo = documentEntry.getSourcePatientInfo();
                Patient sourcePatient = new Patient();
                if (sourcePatientId != null) {
                    sourcePatient.addIdentifier((new Identifier().setSystem("urn:oid:" + sourcePatientId.getAssigningAuthority().getUniversalId()).setValue(sourcePatientId.getId())).setUse(IdentifierUse.OFFICIAL));
                }
                if (sourcePatientInfo != null) {
                    sourcePatient.setBirthDateElement(transformToDate(sourcePatientInfo.getDateOfBirth()));
                    String gender = sourcePatientInfo.getGender();
                    if (gender != null) {
                        switch(gender) {
                            case "F":
                                sourcePatient.setGender(Enumerations.AdministrativeGender.FEMALE);
                                break;
                            case "M":
                                sourcePatient.setGender(Enumerations.AdministrativeGender.MALE);
                                break;
                            case "U":
                                sourcePatient.setGender(Enumerations.AdministrativeGender.UNKNOWN);
                                break;
                            case "A":
                                sourcePatient.setGender(Enumerations.AdministrativeGender.OTHER);
                                break;
                        }
                    }
                    ListIterator<Name> names = sourcePatientInfo.getNames();
                    while (names.hasNext()) {
                        Name name = names.next();
                        sourcePatient.addName(transform(name));
                    }
                    ListIterator<Address> addresses = sourcePatientInfo.getAddresses();
                    while (addresses.hasNext()) {
                        Address address = addresses.next();
                        if (address != null)
                            sourcePatient.addAddress(transform(address));
                    }
                }
                if (sourcePatientId != null || sourcePatientInfo != null) {
                    context.getSourcePatientInfo().setResource(sourcePatient);
                }
            }
        }
    } else {
        processError(input);
    }
    return list;
}
Also used : DocumentReferenceRelatesToComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent) DocumentReferenceContextComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent) Address(org.openehealth.ipf.commons.ihe.xds.core.metadata.Address) HashMap(java.util.HashMap) ArrayList(java.util.ArrayList) Attachment(org.hl7.fhir.r4.model.Attachment) PatientInfo(org.openehealth.ipf.commons.ihe.xds.core.metadata.PatientInfo) Name(org.openehealth.ipf.commons.ihe.xds.core.metadata.Name) Association(org.openehealth.ipf.commons.ihe.xds.core.metadata.Association) Identifier(org.hl7.fhir.r4.model.Identifier) ReferenceId(org.openehealth.ipf.commons.ihe.xds.core.metadata.ReferenceId) DocumentEntry(org.openehealth.ipf.commons.ihe.xds.core.metadata.DocumentEntry) ArrayList(java.util.ArrayList) List(java.util.List) DocumentReference(org.hl7.fhir.r4.model.DocumentReference) Reference(org.hl7.fhir.r4.model.Reference) DocumentReference(org.hl7.fhir.r4.model.DocumentReference) Period(org.hl7.fhir.r4.model.Period) Patient(org.hl7.fhir.r4.model.Patient) Identifiable(org.openehealth.ipf.commons.ihe.xds.core.metadata.Identifiable) Practitioner(org.hl7.fhir.r4.model.Practitioner) AssociationType(org.openehealth.ipf.commons.ihe.xds.core.metadata.AssociationType) Author(org.openehealth.ipf.commons.ihe.xds.core.metadata.Author) Person(org.openehealth.ipf.commons.ihe.xds.core.metadata.Person) DocumentReferenceContentComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent)

Example 4 with PatientInfo

use of org.hl7.gravity.refimpl.sdohexchange.info.PatientInfo in project beneficiary-fhir-data by CMSgov.

the class FissClaimResponseTransformerV2 method getContainedPatient.

private static Resource getContainedPatient(PreAdjFissClaim claimGroup) {
    Optional<PreAdjFissPayer> optional = claimGroup.getPayers().stream().filter(p -> p.getPayerType() == PreAdjFissPayer.PayerType.BeneZ).findFirst();
    Patient patient;
    if (optional.isPresent()) {
        PreAdjFissPayer benePayer = optional.get();
        patient = getContainedPatient(claimGroup.getMbi(), new PatientInfo(benePayer.getBeneFirstName(), benePayer.getBeneLastName(), ifNotNull(benePayer.getBeneMidInit(), s -> s.charAt(0) + "."), benePayer.getBeneDob(), benePayer.getBeneSex()));
    } else {
        patient = getContainedPatient(claimGroup.getMbi(), null);
    }
    return patient;
}
Also used : Trace(com.newrelic.api.agent.Trace) PreAdjFissPayer(gov.cms.bfd.model.rda.PreAdjFissPayer) Date(java.util.Date) Identifier(org.hl7.fhir.r4.model.Identifier) CodeableConcept(org.hl7.fhir.r4.model.CodeableConcept) Reference(org.hl7.fhir.r4.model.Reference) ArrayList(java.util.ArrayList) C4BBIdentifierType(gov.cms.bfd.server.war.commons.carin.C4BBIdentifierType) Map(java.util.Map) ClaimType(org.hl7.fhir.r4.model.codesystems.ClaimType) Meta(org.hl7.fhir.r4.model.Meta) Patient(org.hl7.fhir.r4.model.Patient) PreAdjFissClaim(gov.cms.bfd.model.rda.PreAdjFissClaim) MetricRegistry(com.codahale.metrics.MetricRegistry) DateType(org.hl7.fhir.r4.model.DateType) BadCodeMonkeyException(gov.cms.bfd.sharedutils.exceptions.BadCodeMonkeyException) Resource(org.hl7.fhir.r4.model.Resource) ClaimResponse(org.hl7.fhir.r4.model.ClaimResponse) BBCodingSystems(gov.cms.bfd.server.war.commons.BBCodingSystems) AbstractTransformerV2(gov.cms.bfd.server.war.r4.providers.preadj.common.AbstractTransformerV2) List(java.util.List) Coding(org.hl7.fhir.r4.model.Coding) Timer(com.codahale.metrics.Timer) Optional(java.util.Optional) Extension(org.hl7.fhir.r4.model.Extension) Patient(org.hl7.fhir.r4.model.Patient) PreAdjFissPayer(gov.cms.bfd.model.rda.PreAdjFissPayer)

Example 5 with PatientInfo

use of org.hl7.gravity.refimpl.sdohexchange.info.PatientInfo in project beneficiary-fhir-data by CMSgov.

the class FissClaimTransformerV2 method getContainedPatient.

private static Resource getContainedPatient(PreAdjFissClaim claimGroup) {
    Optional<PreAdjFissPayer> optional = claimGroup.getPayers().stream().filter(p -> p.getPayerType() == PreAdjFissPayer.PayerType.BeneZ).findFirst();
    Patient patient;
    if (optional.isPresent()) {
        PreAdjFissPayer benePayer = optional.get();
        patient = getContainedPatient(claimGroup.getMbi(), new PatientInfo(benePayer.getBeneFirstName(), benePayer.getBeneLastName(), ifNotNull(benePayer.getBeneMidInit(), s -> s.charAt(0) + "."), benePayer.getBeneDob(), benePayer.getBeneSex()));
    } else {
        patient = getContainedPatient(claimGroup.getMbi(), null);
    }
    return patient;
}
Also used : Trace(com.newrelic.api.agent.Trace) PreAdjFissPayer(gov.cms.bfd.model.rda.PreAdjFissPayer) Date(java.util.Date) Identifier(org.hl7.fhir.r4.model.Identifier) CodeableConcept(org.hl7.fhir.r4.model.CodeableConcept) IcdCode(gov.cms.bfd.server.war.commons.IcdCode) Reference(org.hl7.fhir.r4.model.Reference) C4BBClaimIdentifierType(gov.cms.bfd.server.war.commons.carin.C4BBClaimIdentifierType) Money(org.hl7.fhir.r4.model.Money) C4BBIdentifierType(gov.cms.bfd.server.war.commons.carin.C4BBIdentifierType) Locale(java.util.Locale) ObjectUtils(org.apache.commons.lang3.ObjectUtils) ExDiagnosistype(org.hl7.fhir.r4.model.codesystems.ExDiagnosistype) StringType(org.hl7.fhir.r4.model.StringType) ClaimType(org.hl7.fhir.r4.model.codesystems.ClaimType) PreAdjFissDiagnosisCode(gov.cms.bfd.model.rda.PreAdjFissDiagnosisCode) Meta(org.hl7.fhir.r4.model.Meta) Patient(org.hl7.fhir.r4.model.Patient) PreAdjFissClaim(gov.cms.bfd.model.rda.PreAdjFissClaim) MetricRegistry(com.codahale.metrics.MetricRegistry) C4BBSupportingInfoType(gov.cms.bfd.server.war.commons.carin.C4BBSupportingInfoType) BadCodeMonkeyException(gov.cms.bfd.sharedutils.exceptions.BadCodeMonkeyException) PreAdjFissProcCode(gov.cms.bfd.model.rda.PreAdjFissProcCode) Period(org.hl7.fhir.r4.model.Period) Resource(org.hl7.fhir.r4.model.Resource) ProcessPriority(org.hl7.fhir.r4.model.codesystems.ProcessPriority) Collectors(java.util.stream.Collectors) BBCodingSystems(gov.cms.bfd.server.war.commons.BBCodingSystems) Objects(java.util.Objects) AbstractTransformerV2(gov.cms.bfd.server.war.r4.providers.preadj.common.AbstractTransformerV2) Organization(org.hl7.fhir.r4.model.Organization) List(java.util.List) TransformerConstants(gov.cms.bfd.server.war.commons.TransformerConstants) C4BBOrganizationIdentifierType(gov.cms.bfd.server.war.commons.carin.C4BBOrganizationIdentifierType) Coding(org.hl7.fhir.r4.model.Coding) LocalDate(java.time.LocalDate) Timer(com.codahale.metrics.Timer) Optional(java.util.Optional) Extension(org.hl7.fhir.r4.model.Extension) Comparator(java.util.Comparator) Collections(java.util.Collections) Claim(org.hl7.fhir.r4.model.Claim) Patient(org.hl7.fhir.r4.model.Patient) PreAdjFissPayer(gov.cms.bfd.model.rda.PreAdjFissPayer)

Aggregations

Patient (org.hl7.fhir.r4.model.Patient)7 Identifier (org.hl7.fhir.r4.model.Identifier)5 ArrayList (java.util.ArrayList)4 List (java.util.List)4 Coding (org.hl7.fhir.r4.model.Coding)4 Optional (java.util.Optional)3 CodeableConcept (org.hl7.fhir.r4.model.CodeableConcept)3 Extension (org.hl7.fhir.r4.model.Extension)3 Organization (org.hl7.fhir.r4.model.Organization)3 Reference (org.hl7.fhir.r4.model.Reference)3 Resource (org.hl7.fhir.r4.model.Resource)3 MetricRegistry (com.codahale.metrics.MetricRegistry)2 Timer (com.codahale.metrics.Timer)2 Trace (com.newrelic.api.agent.Trace)2 PreAdjFissClaim (gov.cms.bfd.model.rda.PreAdjFissClaim)2 PreAdjFissPayer (gov.cms.bfd.model.rda.PreAdjFissPayer)2 BBCodingSystems (gov.cms.bfd.server.war.commons.BBCodingSystems)2 C4BBIdentifierType (gov.cms.bfd.server.war.commons.carin.C4BBIdentifierType)2 AbstractTransformerV2 (gov.cms.bfd.server.war.r4.providers.preadj.common.AbstractTransformerV2)2 BadCodeMonkeyException (gov.cms.bfd.sharedutils.exceptions.BadCodeMonkeyException)2