@@ -28,20 +28,17 @@ def _get_patient(self):
2828 contained = self .fhir_json_data .get ("contained" , [])
2929 return next ((c for c in contained if isinstance (c , dict ) and c .get ("resourceType" ) == "Patient" ), "" )
3030
31- def _get_valid_names (self , names , occurrence_time , resource_type = "Patient" ):
32-
33- def has_required_fields (name ):
34- return "given" in name and "family" in name if resource_type == "Patient" else True
31+ def _get_valid_names (self , names , occurrence_time ):
3532
3633 official_names = [n for n in names if n .get ("use" ) == "official" and self ._is_current_period (n , occurrence_time )]
3734 if official_names :
38- filtered_official_names = [n for n in official_names if has_required_fields (n )]
39- return filtered_official_names [0 ]
35+ return official_names [0 ]
4036
4137 valid_names = [n for n in names if self ._is_current_period (n , occurrence_time ) and n .get ("use" ) != "old" ]
42- filtered_valid_names = [n for n in valid_names if has_required_fields (n )]
38+ if valid_names :
39+ return valid_names [0 ]
4340
44- return filtered_valid_names [ 0 ] if filtered_valid_names else names [0 ]
41+ return names [0 ]
4542
4643
4744
@@ -53,7 +50,7 @@ def _get_person_names(self):
5350 if not names :
5451 return "" , ""
5552
56- selected_name = self ._get_valid_names (names , occurrence_time , resource_type = "Patient" )
53+ selected_name = self ._get_valid_names (names , occurrence_time )
5754 person_forename = " " .join (selected_name .get ("given" , []))
5855 person_surname = selected_name .get ("family" , "" )
5956
@@ -74,7 +71,7 @@ def _get_practitioner_names(self):
7471 if not valid_practitioner_names :
7572 return "" , ""
7673
77- selected_practitioner_name = self ._get_valid_names (valid_practitioner_names , occurrence_time , resource_type = "Practitioner" )
74+ selected_practitioner_name = self ._get_valid_names (valid_practitioner_names , occurrence_time )
7875 performing_professional_forename = " " .join (selected_practitioner_name .get ("given" , []))
7976 performing_professional_surname = selected_practitioner_name .get ("family" , "" )
8077
0 commit comments