From bc5d7f56a8eab4198d17f7609356a093d64839cb Mon Sep 17 00:00:00 2001 From: meawong Date: Mon, 2 Mar 2026 16:02:22 -0800 Subject: [PATCH 1/3] 32594 - Get email from auth when contactPoint is not provided --- .../src/business_emailer/email_processors/__init__.py | 5 ++++- .../email_processors/restoration_notification.py | 7 +++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/queue_services/business-emailer/src/business_emailer/email_processors/__init__.py b/queue_services/business-emailer/src/business_emailer/email_processors/__init__.py index c3d54b8d2f..1ddf504a27 100644 --- a/queue_services/business-emailer/src/business_emailer/email_processors/__init__.py +++ b/queue_services/business-emailer/src/business_emailer/email_processors/__init__.py @@ -53,7 +53,10 @@ def get_recipients(option: str, filing_json: dict, token: str | None = None, fil recipients = "" filing_type = filing_type if filing_type else "incorporationApplication" if filing_json["filing"].get(filing_type): - recipients = filing_json["filing"][filing_type]["contactPoint"]["email"] + recipients = filing_json["filing"][filing_type].get("contactPoint", {}).get("email", "") + if not recipients: + identifier = filing_json["filing"]["business"]["identifier"] + recipients = get_recipient_from_auth(identifier, token) if option in [Filing.Status.PAID.value, "bn"] and \ filing_json["filing"]["header"]["name"] == filing_type: parties = filing_json["filing"][filing_type].get("parties") diff --git a/queue_services/business-emailer/src/business_emailer/email_processors/restoration_notification.py b/queue_services/business-emailer/src/business_emailer/email_processors/restoration_notification.py index 9e85818b70..cf844f0bb5 100644 --- a/queue_services/business-emailer/src/business_emailer/email_processors/restoration_notification.py +++ b/queue_services/business-emailer/src/business_emailer/email_processors/restoration_notification.py @@ -22,7 +22,7 @@ from flask import current_app from jinja2 import Environment, FileSystemLoader -from business_emailer.email_processors import get_filing_document, get_filing_info +from business_emailer.email_processors import get_filing_document, get_filing_info, get_recipient_from_auth from business_model.models import Business, CorpType, Filing @@ -172,7 +172,10 @@ def process(email_info: dict, token: str) -> dict: # pylint: disable=too-many-l # get recipients recipients = [] - recipients.append(filing_data["contactPoint"]["email"]) + if contact_email := filing_data.get("contactPoint", {}).get("email"): + recipients.append(contact_email) + else: + recipients.append(get_recipient_from_auth(identifier, token)) for party in filing_data["parties"]: for role in party["roles"]: From 0bb7213c6203ff92e28e4280e02ecad17f8c532e Mon Sep 17 00:00:00 2001 From: meawong Date: Mon, 2 Mar 2026 17:16:46 -0800 Subject: [PATCH 2/3] 32594 - Fix and version update --- queue_services/business-emailer/pyproject.toml | 2 +- .../src/business_emailer/email_processors/__init__.py | 5 +---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/queue_services/business-emailer/pyproject.toml b/queue_services/business-emailer/pyproject.toml index 718e7a10e7..9da95847f8 100644 --- a/queue_services/business-emailer/pyproject.toml +++ b/queue_services/business-emailer/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "business-emailer" -version = "0.1.2" +version = "0.1.3" description = "This module is the service worker for sending emails about entity related events." authors = ["Hrvoje Fekete "] license = "BSD-3-Clause" diff --git a/queue_services/business-emailer/src/business_emailer/email_processors/__init__.py b/queue_services/business-emailer/src/business_emailer/email_processors/__init__.py index 1ddf504a27..5a382e15f2 100644 --- a/queue_services/business-emailer/src/business_emailer/email_processors/__init__.py +++ b/queue_services/business-emailer/src/business_emailer/email_processors/__init__.py @@ -53,10 +53,7 @@ def get_recipients(option: str, filing_json: dict, token: str | None = None, fil recipients = "" filing_type = filing_type if filing_type else "incorporationApplication" if filing_json["filing"].get(filing_type): - recipients = filing_json["filing"][filing_type].get("contactPoint", {}).get("email", "") - if not recipients: - identifier = filing_json["filing"]["business"]["identifier"] - recipients = get_recipient_from_auth(identifier, token) + recipients = filing_json["filing"][filing_type].get("contactPoint", {}).get("email") if option in [Filing.Status.PAID.value, "bn"] and \ filing_json["filing"]["header"]["name"] == filing_type: parties = filing_json["filing"][filing_type].get("parties") From 098d676fe11c24a9d2f978411e398a6a6147778e Mon Sep 17 00:00:00 2001 From: meawong Date: Tue, 3 Mar 2026 09:21:40 -0800 Subject: [PATCH 3/3] 32594 - Add back string fallback --- .../src/business_emailer/email_processors/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/queue_services/business-emailer/src/business_emailer/email_processors/__init__.py b/queue_services/business-emailer/src/business_emailer/email_processors/__init__.py index 5a382e15f2..d2730dddf1 100644 --- a/queue_services/business-emailer/src/business_emailer/email_processors/__init__.py +++ b/queue_services/business-emailer/src/business_emailer/email_processors/__init__.py @@ -53,7 +53,7 @@ def get_recipients(option: str, filing_json: dict, token: str | None = None, fil recipients = "" filing_type = filing_type if filing_type else "incorporationApplication" if filing_json["filing"].get(filing_type): - recipients = filing_json["filing"][filing_type].get("contactPoint", {}).get("email") + recipients = filing_json["filing"][filing_type].get("contactPoint", {}).get("email", "") if option in [Filing.Status.PAID.value, "bn"] and \ filing_json["filing"]["header"]["name"] == filing_type: parties = filing_json["filing"][filing_type].get("parties")