def build_fhir_age(cls, imis_medication): adult = cls.build_fhir_adult(imis_medication) kid = cls.build_fhir_kid(imis_medication) if adult == "": adult = None if kid == "": kid = None extension = Extension() extension.url = "useContextAge" extension.valueUsageContext = UsageContext() extension.valueUsageContext.code = Coding() extension.valueUsageContext.code.code = "age" extension.valueUsageContext.valueCodeableConcept = CodeableConcept() if adult is not None: coding_adult = Coding() coding_adult.code = adult coding_adult.display = "Adult" extension.valueUsageContext.valueCodeableConcept.coding.append( coding_adult) if kid is not None: coding_kid = Coding() coding_kid.code = kid coding_kid.display = "Kid" extension.valueUsageContext.valueCodeableConcept.coding.append( coding_kid) extension.valueUsageContext.valueCodeableConcept.text = "Adult or Kid" return extension
def build_fhir_gender(cls, imis_medication): male = cls.build_fhir_male(imis_medication) female = cls.build_fhir_female(imis_medication) if male == "": male = None if female == "": female = None extension = Extension() extension.url = "useContextGender" extension.valueUsageContext = UsageContext() extension.valueUsageContext.code = Coding() extension.valueUsageContext.code.code = "gender" extension.valueUsageContext.valueCodeableConcept = CodeableConcept() if male is not None: coding_male = Coding() coding_male.code = male coding_male.display = "Male" extension.valueUsageContext.valueCodeableConcept.coding.append( coding_male) if female is not None: coding_female = Coding() coding_female.code = female coding_female.display = "Female" extension.valueUsageContext.valueCodeableConcept.coding.append( coding_female) extension.valueUsageContext.valueCodeableConcept.text = "Male or Female" return extension
def build_fhir_venue(cls, imis_medication): display = "" if imis_medication.care_type == "O": display = "Out-patient" if imis_medication.care_type == "I": display = "In-patient" if imis_medication.care_type == "B": display = "Both" extension = Extension() if imis_medication.care_type is not None: extension.url = "useContextVenue" extension.valueUsageContext = UsageContext() extension.valueUsageContext.code = Coding() extension.valueUsageContext.code.code = "venue" extension.valueUsageContext.valueCodeableConcept = CodeableConcept( ) coding_venue = Coding() coding_venue.code = imis_medication.care_type coding_venue.display = display extension.valueUsageContext.valueCodeableConcept.coding.append( coding_venue) extension.valueUsageContext.valueCodeableConcept.text = "Clinical Venue" return extension