Skip to content

Commit 9ed5fcb

Browse files
committed
get_nhs_number
1 parent ac0f47a commit 9ed5fcb

File tree

3 files changed

+10
-17
lines changed

3 files changed

+10
-17
lines changed

lambdas/backend/src/repository/fhir_repository.py

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
from common.models.constants import Constants
1717
from common.models.errors import ResourceNotFoundError
1818
from common.models.immunization_record_metadata import ImmunizationRecordMetadata
19-
from common.models.utils.generic_utils import get_contained_patient
19+
from common.models.utils.generic_utils import get_contained_patient, get_nhs_number
2020
from common.models.utils.validation_utils import (
2121
get_vaccine_type,
2222
)
@@ -47,14 +47,6 @@ def _query_identifier(table, index, pk, identifier):
4747
return queryresponse
4848

4949

50-
def get_nhs_number(imms):
51-
try:
52-
nhs_number = [x for x in imms["contained"] if x["resourceType"] == "Patient"][0]["identifier"][0]["value"]
53-
except (KeyError, IndexError):
54-
nhs_number = "TBC"
55-
return nhs_number
56-
57-
5850
@dataclass
5951
class RecordAttributes:
6052
pk: str

lambdas/recordforwarder/src/repository/fhir_batch_repository.py

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
ResourceNotFoundError,
1616
UnhandledResponseError,
1717
)
18+
from common.models.utils.generic_utils import get_nhs_number
1819

1920

2021
def create_table(region_name="eu-west-2"):
@@ -56,14 +57,6 @@ def _query_identifier(table, index, pk, identifier, is_present):
5657
return queryresponse
5758

5859

59-
def get_nhs_number(imms):
60-
try:
61-
nhs_number = [x for x in imms["contained"] if x["resourceType"] == "Patient"][0]["identifier"][0]["value"]
62-
except (KeyError, IndexError):
63-
nhs_number = "TBC"
64-
return nhs_number
65-
66-
6760
@dataclass
6861
class RecordAttributes:
6962
pk: str

lambdas/shared/src/common/models/utils/generic_utils.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,14 @@
2020
from common.models.constants import Constants
2121

2222

23+
def get_nhs_number(imms: dict):
24+
try:
25+
nhs_number = [x for x in imms["contained"] if x["resourceType"] == "Patient"][0]["identifier"][0]["value"]
26+
except (KeyError, IndexError):
27+
nhs_number = "TBC"
28+
return nhs_number
29+
30+
2331
def get_contained_resource(imms: dict, resource: Literal["Patient", "Practitioner", "QuestionnaireResponse"]):
2432
"""Extract and return the requested contained resource from the FHIR Immunization Resource JSON data"""
2533
return [x for x in imms.get("contained") if x.get("resourceType") == resource][0]

0 commit comments

Comments
 (0)