Skip to content

Commit 3fc6093

Browse files
committed
[NRL-1290] Allow bars proxy to create and update appointments for any org
1 parent 29a2a09 commit 3fc6093

File tree

2 files changed

+17
-1
lines changed

2 files changed

+17
-1
lines changed

api/producer/createDocumentReference/create_document_reference.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,11 @@ def _check_permissions(
6464
"""
6565
Check the requester has permissions to create the DocumentReference
6666
"""
67+
68+
# Allow BARS proxy to create a document reference for any organisation
69+
if metadata.ods_code == "V4TOL" and core_model.type in metadata.pointer_types:
70+
return
71+
6772
custodian_parts = tuple(
6873
filter(None, (core_model.custodian, core_model.custodian_suffix))
6974
)

api/producer/updateDocumentReference/update_document_reference.py

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
from pydantic import ValidationError
44

55
from nrlf.core.codes import SpineErrorConcept
6+
from nrlf.core.constants import PointerTypes
67
from nrlf.core.decorators import DocumentPointerRepository, request_handler
78
from nrlf.core.dynamodb.model import DocumentPointer
89
from nrlf.core.errors import OperationOutcomeError
@@ -61,7 +62,17 @@ def handler(
6162

6263
core_model = DocumentPointer.from_document_reference(document_reference)
6364

64-
if metadata.ods_code_parts != tuple(core_model.producer_id.split("|")):
65+
if (
66+
metadata.ods_code == "V4TOL"
67+
and core_model.type.coding[0].code == PointerTypes.APPOINTMENT.coding_value()
68+
):
69+
# If bars app - don't validate the ods code against the pointer
70+
logger.log(
71+
LogReference.PROUPDATE002,
72+
msg="Allowing bars to update pointer",
73+
pointer_id=core_model.id,
74+
)
75+
elif metadata.ods_code_parts != tuple(core_model.producer_id.split("|")):
6576
logger.log(
6677
LogReference.PROUPDATE004,
6778
metadata_ods_code_parts=metadata.ods_code_parts,

0 commit comments

Comments
 (0)