|
3 | 3 |
|
4 | 4 | from fastapi import BackgroundTasks, Depends, HTTPException, status |
5 | 5 |
|
6 | | -from mesh_sandbox.common.exceptions import create_ndr |
| 6 | +from mesh_sandbox.common.exceptions import create_ndr_event, create_ndr_metadata |
7 | 7 |
|
8 | 8 | from ..common.messaging import Messaging |
9 | 9 | from ..dependencies import get_messaging |
@@ -53,45 +53,49 @@ async def create_report(self, request: CreateReportRequest, background_tasks: Ba |
53 | 53 | assert request.status in (MessageStatus.UNDELIVERABLE, MessageStatus.ERROR) |
54 | 54 |
|
55 | 55 | if request.status == MessageStatus.UNDELIVERABLE: |
56 | | - message = create_ndr(request, recipient) |
| 56 | + message_event = create_ndr_event(request) |
| 57 | + message_metadata = create_ndr_metadata(request) |
57 | 58 | else: |
58 | | - message = Message( |
59 | | - events=[ |
60 | | - MessageEvent(status=MessageStatus.ACCEPTED), |
61 | | - MessageEvent( |
62 | | - status=request.status, |
63 | | - event="TRANSFER", |
64 | | - code=request.code, |
65 | | - description=request.description, |
66 | | - linked_message_id=request.linked_message_id, |
67 | | - ), |
68 | | - ], |
69 | | - message_id=uuid4().hex.upper(), |
70 | | - sender=MessageParty( |
71 | | - mailbox_id="", |
72 | | - mailbox_name="Central System Mailbox", |
73 | | - ods_code="X26", |
74 | | - org_code="X26", |
75 | | - org_name="NHS England", |
76 | | - billing_entity="England", |
77 | | - ), |
78 | | - recipient=MessageParty( |
79 | | - mailbox_id=recipient.mailbox_id, |
80 | | - mailbox_name=recipient.mailbox_name, |
81 | | - ods_code=recipient.ods_code, |
82 | | - org_code=recipient.org_code, |
83 | | - org_name=recipient.org_name, |
84 | | - billing_entity=recipient.billing_entity, |
85 | | - ), |
86 | | - total_chunks=0, |
87 | | - message_type=MessageType.REPORT, |
88 | | - workflow_id=request.workflow_id, |
89 | | - metadata=MessageMetadata( |
90 | | - subject=request.subject, |
91 | | - local_id=request.local_id, |
92 | | - file_name=request.file_name, |
93 | | - ), |
| 59 | + message_event = MessageEvent( |
| 60 | + status=request.status, |
| 61 | + event="TRANSFER", |
| 62 | + code=request.code, |
| 63 | + description=request.description, |
| 64 | + linked_message_id=request.linked_message_id, |
94 | 65 | ) |
| 66 | + message_metadata = MessageMetadata( |
| 67 | + subject=request.subject, |
| 68 | + local_id=request.local_id, |
| 69 | + file_name=request.file_name, |
| 70 | + ) |
| 71 | + |
| 72 | + message = Message( |
| 73 | + events=[ |
| 74 | + MessageEvent(status=MessageStatus.ACCEPTED), |
| 75 | + message_event, |
| 76 | + ], |
| 77 | + message_id=uuid4().hex.upper(), |
| 78 | + sender=MessageParty( |
| 79 | + mailbox_id="", |
| 80 | + mailbox_name="Central System Mailbox", |
| 81 | + ods_code="X26", |
| 82 | + org_code="X26", |
| 83 | + org_name="NHS England", |
| 84 | + billing_entity="England", |
| 85 | + ), |
| 86 | + recipient=MessageParty( |
| 87 | + mailbox_id=recipient.mailbox_id, |
| 88 | + mailbox_name=recipient.mailbox_name, |
| 89 | + ods_code=recipient.ods_code, |
| 90 | + org_code=recipient.org_code, |
| 91 | + org_name=recipient.org_name, |
| 92 | + billing_entity=recipient.billing_entity, |
| 93 | + ), |
| 94 | + total_chunks=0, |
| 95 | + message_type=MessageType.REPORT, |
| 96 | + workflow_id=request.workflow_id, |
| 97 | + metadata=message_metadata, |
| 98 | + ) |
95 | 99 |
|
96 | 100 | await self.messaging.send_message(message=message, body=b"", background_tasks=background_tasks) |
97 | 101 |
|
|
0 commit comments