From 2fa6ca77dc9584b81faf8776548b6bfa86642988 Mon Sep 17 00:00:00 2001 From: Vysakh Menon Date: Fri, 30 Aug 2024 15:41:12 -0700 Subject: [PATCH] 22931 update consume nr api call (#2959) --- queue_services/entity-filer/flags.json | 5 ++-- .../requirements/bcregistry-libraries.txt | 1 + .../filing_components/name_request.py | 13 ++++++---- .../entity-filer/src/entity_filer/worker.py | 24 +++++++++++-------- 4 files changed, 26 insertions(+), 17 deletions(-) diff --git a/queue_services/entity-filer/flags.json b/queue_services/entity-filer/flags.json index e9e2825353..75a249ff46 100644 --- a/queue_services/entity-filer/flags.json +++ b/queue_services/entity-filer/flags.json @@ -1,5 +1,6 @@ { "flagValues": { - "enable-involuntary-dissolution": true + "enable-involuntary-dissolution": true, + "namex-nro-decommissioned": true } -} \ No newline at end of file +} diff --git a/queue_services/entity-filer/requirements/bcregistry-libraries.txt b/queue_services/entity-filer/requirements/bcregistry-libraries.txt index 565c4dedfd..e0632dcf9a 100644 --- a/queue_services/entity-filer/requirements/bcregistry-libraries.txt +++ b/queue_services/entity-filer/requirements/bcregistry-libraries.txt @@ -1,3 +1,4 @@ +git+https://github.com/bcgov/sbc-connect-common.git#egg=gcp-queue&subdirectory=python/gcp-queue git+https://github.com/bcgov/business-schemas.git@2.18.27#egg=registry_schemas git+https://github.com/bcgov/lear.git#egg=legal_api&subdirectory=legal-api git+https://github.com/bcgov/lear.git#egg=entity_queue_common&subdirectory=queue_services/common diff --git a/queue_services/entity-filer/src/entity_filer/filing_processors/filing_components/name_request.py b/queue_services/entity-filer/src/entity_filer/filing_processors/filing_components/name_request.py index 034c8f6429..983230074f 100644 --- a/queue_services/entity-filer/src/entity_filer/filing_processors/filing_components/name_request.py +++ b/queue_services/entity-filer/src/entity_filer/filing_processors/filing_components/name_request.py @@ -17,14 +17,14 @@ import requests import sentry_sdk -from entity_queue_common.service_utils import QueueException +from entity_queue_common.service_utils import QueueException, logger from flask import current_app from legal_api.models import Business, Filing, RegistrationBootstrap -from legal_api.services.bootstrap import AccountService +from legal_api.services import AccountService, Flags from legal_api.services.utils import get_str -def consume_nr(business: Business, filing: Filing, filing_type: str = None): +def consume_nr(business: Business, filing: Filing, filing_type: str = None, flags: Flags = None): """Update the nr to a consumed state.""" try: filing_type = filing_type if filing_type else filing.filing_type @@ -33,9 +33,12 @@ def consume_nr(business: Business, filing: Filing, filing_type: str = None): namex_svc_url = current_app.config.get('NAMEX_API') token = AccountService.get_bearer_token() + if flags and (flag_on := flags.is_on('namex-nro-decommissioned')): + logger.debug('namex-nro-decommissioned flag: %s', flag_on) + data = json.dumps({'state': 'CONSUMED', 'corpNum': business.identifier}) + else: + data = json.dumps({'consume': {'corpNum': business.identifier}}) - # Create an entity record - data = json.dumps({'consume': {'corpNum': business.identifier}}) rv = requests.patch( url=''.join([namex_svc_url, nr_num]), headers={**AccountService.CONTENT_TYPE_JSON, diff --git a/queue_services/entity-filer/src/entity_filer/worker.py b/queue_services/entity-filer/src/entity_filer/worker.py index adecf08b16..e13d96a929 100644 --- a/queue_services/entity-filer/src/entity_filer/worker.py +++ b/queue_services/entity-filer/src/entity_filer/worker.py @@ -145,15 +145,16 @@ def publish_gcp_queue_event(business: Business, filing: Filing): try: subject = APP_CONFIG.BUSINESS_EVENTS_TOPIC data = { - 'filing': { - 'header': {'filingId': filing.id, - 'effectiveDate': filing.effective_date.isoformat() - }, - 'business': {'identifier': business.identifier}, - 'legalFilings': get_filing_types(filing.filing_json) + 'filing': { + 'header': { + 'filingId': filing.id, + 'effectiveDate': filing.effective_date.isoformat() }, - 'identifier': business.identifier - } + 'business': {'identifier': business.identifier}, + 'legalFilings': get_filing_types(filing.filing_json) + }, + 'identifier': business.identifier + } if filing.temp_reg: data['tempidentifier'] = filing.temp_reg @@ -363,7 +364,7 @@ async def process_filing(filing_msg: Dict, flask_app: Flask): # pylint: disable if filing_core_submission.filing_type != FilingCore.FilingTypes.CONVERSION: business_profile.update_affiliation(business, filing_submission) - name_request.consume_nr(business, filing_submission) + name_request.consume_nr(business, filing_submission, flags=flags) business_profile.update_business_profile(business, filing_submission) await publish_mras_email(filing_submission) else: @@ -386,7 +387,10 @@ async def process_filing(filing_msg: Dict, flask_app: Flask): # pylint: disable FilingCore.FilingTypes.CORRECTION, FilingCore.FilingTypes.RESTORATION, ]: - name_request.consume_nr(business, filing_submission, filing_type) + name_request.consume_nr(business, + filing_submission, + filing_type=filing_type, + flags=flags) if filing_type != FilingCore.FilingTypes.CHANGEOFNAME: business_profile.update_business_profile(business, filing_submission, filing_type)