"""Function logic for send notification.""" from owsrequest import request from src import config from src import service from src.logic.product import fetch_product_data def send_complete_escal_notification(queue_id, product_id, operation_context): """Notify user of approval/ rejection of escalated product.""" data = fetch_product_data(queue_id, product_id) response = request.process( config.APPLICATION_NAME, config.ENVIRONMENT, 'POST', service.OWS_NOTIFICATIONS, '/content-review/notify-escalation-complete', json={**data, 'resolution': operation_context} ) if response.status_code not in (200, 202, 204): error_message = ( 'Failed to send content review escalation complete notification for product_id ' f'{product_id}.\n' f'Status code: {response.status_code}, ' f'Error: {response.text}' ) raise Exception(error_message)