Skip to content

Commit d6376e7

Browse files
committed
NRL-1075 split category by list for multi category search
1 parent 25adafa commit d6376e7

File tree

5 files changed

+9
-7
lines changed

5 files changed

+9
-7
lines changed

api/consumer/searchDocumentReference/search_document_reference.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ def handler(
102102
nhs_number=params.nhs_number,
103103
custodian=custodian_id,
104104
pointer_types=pointer_types,
105-
categories=[params.category.root] if params.category else [],
105+
categories=params.category.root.split(",") if params.category else [],
106106
):
107107
try:
108108
document_reference = DocumentReference.model_validate_json(result.document)

api/consumer/searchPostDocumentReference/search_post_document_reference.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ def handler(
105105
nhs_number=body.nhs_number,
106106
custodian=custodian_id,
107107
pointer_types=pointer_types,
108-
categories=[body.category.root] if body.category else [],
108+
categories=body.category.root.split(",") if body.category else [],
109109
):
110110
try:
111111
document_reference = DocumentReference.model_validate_json(result.document)

api/producer/searchDocumentReference/search_document_reference.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,15 +78,15 @@ def handler(
7878
custodian_suffix=metadata.ods_code_extension,
7979
nhs_number=params.nhs_number,
8080
pointer_types=pointer_types,
81-
categories=[params.category.root] if params.category else [],
81+
categories=params.category.root.split(",") if params.category else [],
8282
)
8383

8484
for result in repository.search(
8585
custodian=metadata.ods_code,
8686
custodian_suffix=metadata.ods_code_extension,
8787
nhs_number=params.nhs_number,
8888
pointer_types=pointer_types,
89-
categories=[params.category.root] if params.category else [],
89+
categories=params.category.root.split(",") if params.category else [],
9090
):
9191
try:
9292
document_reference = DocumentReference.model_validate_json(result.document)

api/producer/searchPostDocumentReference/search_post_document_reference.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,15 +72,15 @@ def handler(
7272
custodian_suffix=metadata.ods_code_extension,
7373
nhs_number=body.nhs_number,
7474
pointer_types=pointer_types,
75-
categories=[body.category.root] if body.category else [],
75+
categories=body.category.root.split(",") if body.category else [],
7676
)
7777

7878
for result in repository.search(
7979
custodian=metadata.ods_code,
8080
custodian_suffix=metadata.ods_code_extension,
8181
nhs_number=body.nhs_number,
8282
pointer_types=pointer_types,
83-
categories=[body.category.root] if body.category else [],
83+
categories=body.category.root.split(",") if body.category else [],
8484
):
8585
try:
8686
document_reference = DocumentReference.model_validate_json(result.document)

layer/nrlf/core/validators.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,9 @@ def validate_category(category_: Optional[RequestQueryCategory]) -> bool:
4343
if not category_:
4444
return True
4545

46-
return category_.root in Categories.list()
46+
categories = category_.root.split(",")
47+
48+
return all(category in Categories.list() for category in categories)
4749

4850

4951
@dataclass

0 commit comments

Comments
 (0)