Skip to content

Commit d410a71

Browse files
authored
Merge branch 'master' into VED-901-extended-attribute
2 parents 8b2afe0 + 32bd591 commit d410a71

29 files changed

+1547
-2480
lines changed

config/dev/permissions_config.json

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,8 @@
5656
"MENACWY.CRUDS",
5757
"MMR.CRUDS",
5858
"MMRV.CRUDS",
59-
"PNEUMOCOCCAL.CRUDS",
6059
"PERTUSSIS.CRUDS",
60+
"PNEUMOCOCCAL.CRUDS",
6161
"RSV.CRUDS",
6262
"SHINGLES.CRUDS"
6363
],
@@ -73,8 +73,8 @@
7373
"MENACWY.CRUDS",
7474
"MMR.CRUDS",
7575
"MMRV.CRUDS",
76-
"PNEUMOCOCCAL.CRUDS",
7776
"PERTUSSIS.CRUDS",
77+
"PNEUMOCOCCAL.CRUDS",
7878
"RSV.CRUDS",
7979
"SHINGLES.CRUDS"
8080
],
@@ -84,12 +84,14 @@
8484
"supplier": "TPP",
8585
"permissions": [
8686
"3IN1.CRUDS",
87+
"COVID.CRUDS",
88+
"FLU.CRUDS",
8789
"HPV.CRUDS",
8890
"MENACWY.CRUDS",
8991
"MMR.CRUDS",
9092
"MMRV.CRUDS",
91-
"PNEUMOCOCCAL.CRUDS",
9293
"PERTUSSIS.CRUDS",
94+
"PNEUMOCOCCAL.CRUDS",
9395
"RSV.CRUDS",
9496
"SHINGLES.CRUDS"
9597
],
@@ -99,10 +101,16 @@
99101
"supplier": "MEDICUS",
100102
"permissions": [
101103
"3IN1.CRUDS",
104+
"COVID.CRUDS",
105+
"FLU.CRUDS",
102106
"HPV.CRUDS",
103107
"MENACWY.CRUDS",
104108
"MMR.CRUDS",
105-
"RSV.CRUDS"
109+
"MMRV.CRUDS",
110+
"PERTUSSIS.CRUDS",
111+
"PNEUMOCOCCAL.CRUDS",
112+
"RSV.CRUDS",
113+
"SHINGLES.CRUDS"
106114
],
107115
"ods_codes": ["YGMYW"]
108116
},
@@ -164,8 +172,8 @@
164172
"MENACWY.CRUDS",
165173
"MMR.CRUDS",
166174
"MMRV.CRUDS",
167-
"PNEUMOCOCCAL.CRUDS",
168175
"PERTUSSIS.CRUDS",
176+
"PNEUMOCOCCAL.CRUDS",
169177
"RSV.CRUDS",
170178
"SHINGLES.CRUDS"
171179
]
@@ -180,8 +188,8 @@
180188
"MENACWY.CRUDS",
181189
"MMR.CRUDS",
182190
"MMRV.CRUDS",
183-
"PNEUMOCOCCAL.CRUDS",
184191
"PERTUSSIS.CRUDS",
192+
"PNEUMOCOCCAL.CRUDS",
185193
"RSV.CRUDS",
186194
"SHINGLES.CRUDS"
187195
]

config/preprod/permissions_config.json

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,8 @@
4646
"MENACWY.CRUDS",
4747
"MMR.CRUDS",
4848
"MMRV.CRUDS",
49-
"PNEUMOCOCCAL.CRUDS",
5049
"PERTUSSIS.CRUDS",
50+
"PNEUMOCOCCAL.CRUDS",
5151
"RSV.CRUDS",
5252
"SHINGLES.CRUDS"
5353
],
@@ -63,8 +63,8 @@
6363
"MENACWY.CRUDS",
6464
"MMR.CRUDS",
6565
"MMRV.CRUDS",
66-
"PNEUMOCOCCAL.CRUDS",
6766
"PERTUSSIS.CRUDS",
67+
"PNEUMOCOCCAL.CRUDS",
6868
"RSV.CRUDS",
6969
"SHINGLES.CRUDS"
7070
],
@@ -74,12 +74,14 @@
7474
"supplier": "TPP",
7575
"permissions": [
7676
"3IN1.CRUDS",
77+
"COVID.CRUDS",
78+
"FLU.CRUDS",
7779
"HPV.CRUDS",
7880
"MENACWY.CRUDS",
7981
"MMR.CRUDS",
8082
"MMRV.CRUDS",
81-
"PNEUMOCOCCAL.CRUDS",
8283
"PERTUSSIS.CRUDS",
84+
"PNEUMOCOCCAL.CRUDS",
8385
"RSV.CRUDS",
8486
"SHINGLES.CRUDS"
8587
],
@@ -89,10 +91,16 @@
8991
"supplier": "MEDICUS",
9092
"permissions": [
9193
"3IN1.CRUDS",
94+
"COVID.CRUDS",
95+
"FLU.CRUDS",
9296
"HPV.CRUDS",
9397
"MENACWY.CRUDS",
9498
"MMR.CRUDS",
95-
"RSV.CRUDS"
99+
"MMRV.CRUDS",
100+
"PERTUSSIS.CRUDS",
101+
"PNEUMOCOCCAL.CRUDS",
102+
"RSV.CRUDS",
103+
"SHINGLES.CRUDS"
96104
],
97105
"ods_codes": ["YGMYW"]
98106
},
@@ -110,8 +118,8 @@
110118
"MENACWY.CRUDS",
111119
"MMR.CRUDS",
112120
"MMRV.CRUDS",
113-
"PNEUMOCOCCAL.CRUDS",
114121
"PERTUSSIS.CRUDS",
122+
"PNEUMOCOCCAL.CRUDS",
115123
"RSV.CRUDS",
116124
"SHINGLES.CRUDS"
117125
]
@@ -126,8 +134,8 @@
126134
"MENACWY.CRUDS",
127135
"MMR.CRUDS",
128136
"MMRV.CRUDS",
129-
"PNEUMOCOCCAL.CRUDS",
130137
"PERTUSSIS.CRUDS",
138+
"PNEUMOCOCCAL.CRUDS",
131139
"RSV.CRUDS",
132140
"SHINGLES.CRUDS"
133141
]

infrastructure/instance/oas.yaml

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -128,28 +128,6 @@ paths:
128128
httpMethod: "POST"
129129
timeoutInMillis: 30000
130130
type: "AWS_PROXY"
131-
parameters:
132-
- name: patient.identifier
133-
in: query
134-
required: true
135-
schema:
136-
type: string
137-
- name: -immunization.target
138-
in: query
139-
schema:
140-
type: string
141-
- name: -date.from
142-
in: query
143-
schema:
144-
type: string
145-
- name: -date.to
146-
in: query
147-
schema:
148-
type: string
149-
- name: _include
150-
in: query
151-
schema:
152-
type: string
153131
responses:
154132
"201":
155133
description: An Immunisation search event

lambdas/backend/src/controller/aws_apig_event_utils.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@
99
from utils import dict_utils
1010

1111

12+
def get_multi_value_query_params(event: APIGatewayProxyEventV1) -> dict:
13+
return dict_utils.get_field(dict(event), "multiValueQueryStringParameters", default={})
14+
15+
1216
def get_path_parameter(event: APIGatewayProxyEventV1, param_name: str) -> str:
1317
return dict_utils.get_field(event["pathParameters"], param_name, default="")
1418

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,31 @@
11
"""FHIR Controller constants"""
22

3+
from enum import StrEnum
4+
35
SUPPLIER_SYSTEM_HEADER_NAME = "SupplierSystem"
46
E_TAG_HEADER_NAME = "E-Tag"
7+
8+
SEARCH_IMMS_POST_PATH = "/Immunization/_search"
9+
10+
11+
class IdentifierSearchParameterName(StrEnum):
12+
IDENTIFIER = "identifier"
13+
ELEMENTS = "_elements"
14+
15+
16+
class ImmunizationSearchParameterName(StrEnum):
17+
PATIENT_IDENTIFIER = "patient.identifier"
18+
IMMUNIZATION_TARGET = "-immunization.target"
19+
DATE_FROM = "-date.from"
20+
DATE_TO = "-date.to"
21+
INCLUDE = "_include"
22+
23+
24+
class IdentifierSearchElement(StrEnum):
25+
"""Valid elements which can be requested to include in the identifier search response"""
26+
27+
ID = "id"
28+
META = "meta"
29+
30+
31+
IMMUNIZATION_TARGET_LEGACY_KEY_NAME = "immunization.target"

lambdas/backend/src/controller/fhir_api_exception_handler.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,10 @@
2121
InvalidJsonError,
2222
InvalidResourceVersionError,
2323
InvalidStoredDataError,
24+
ParameterExceptionError,
2425
ResourceVersionNotProvidedError,
2526
Severity,
27+
TooManyResultsError,
2628
UnauthorizedError,
2729
UnauthorizedVaxError,
2830
UnhandledResponseError,
@@ -38,6 +40,8 @@
3840
InvalidResourceVersionError: 400,
3941
CustomValidationError: 400,
4042
ResourceVersionNotProvidedError: 400,
43+
ParameterExceptionError: 400,
44+
TooManyResultsError: 400,
4145
UnauthorizedError: 403,
4246
UnauthorizedVaxError: 403,
4347
ResourceNotFoundError: 404,

0 commit comments

Comments
 (0)