diff --git a/src/server/api/API_ingest/updated_data.py b/src/server/api/API_ingest/updated_data.py index 6e3bc783..2b5cd368 100644 --- a/src/server/api/API_ingest/updated_data.py +++ b/src/server/api/API_ingest/updated_data.py @@ -61,6 +61,7 @@ def get_updated_contact_data(): with Session() as session: result = session.execute(qry) sfdata = result.fetchone()[0] - logger.debug(sfdata) - logger.debug("Query for Salesforce update returned %d records", len(sfdata)) - return sfdata \ No newline at end of file + if sfdata: + logger.debug(sfdata) + logger.debug("Query for Salesforce update returned %d records", len(sfdata)) + return sfdata \ No newline at end of file diff --git a/src/server/api/internal_api.py b/src/server/api/internal_api.py index fd2ad08b..adc40f8a 100644 --- a/src/server/api/internal_api.py +++ b/src/server/api/internal_api.py @@ -45,8 +45,11 @@ def ingest_raw_data(): def get_contact_data(): logger.debug("Calling get_updated_contact_data()") contact_json = updated_data.get_updated_contact_data() - logger.debug("Returning %d contact records", len(contact_json)) - return jsonify(contact_json), 200 + if contact_json: + logger.debug("Returning %d contact records", len(contact_json)) + else: + logger.debug("No contact records found") + return jsonify({'outcome': 'OK'}), 200 @internal_api.route("/api/internal/start_flow", methods=["GET"]) @@ -54,15 +57,17 @@ def run_flow(): logger.debug("Calling flow_script.start_flow()") flow_script.start_flow() logger.debug("Flow processing complete") - return jsonify(''), 200 + return jsonify({'outcome': 'OK'}), 200 @internal_api.route("/api/internal/send_salesforce_platform_message", methods=["GET"]) def send_salesforce_platform_message(): contact_list = updated_data.get_updated_contact_data() - logger.debug("Returning %d contact records", len(contact_list)) - salesforce_message_publisher.send_pipeline_update_messages(contact_list) - + if contact_list: + logger.debug("Returning %d contact records", len(contact_list)) + salesforce_message_publisher.send_pipeline_update_messages(contact_list) + else: + logger.debug("No contact records found") return jsonify({'outcome': 'OK'}), 200 @internal_api.route("/api/internal/full_flow", methods=["GET"]) @@ -73,7 +78,10 @@ def start_flow(): flow_script.start_flow() logger.info("Building updated data payload") updated_contacts_list = updated_data.get_updated_contact_data() - logger.info("Sending Salesforce platform messages") - salesforce_message_publisher.send_pipeline_update_messages(updated_contacts_list) + if updated_contacts_list: + logger.info("Sending Salesforce platform messages") + salesforce_message_publisher.send_pipeline_update_messages(updated_contacts_list) + else: + logger.info("No contacts to update") return jsonify({'outcome': 'OK'}), 200 \ No newline at end of file diff --git a/src/server/requirements.txt b/src/server/requirements.txt index 4ce11bc7..4a33bd12 100644 --- a/src/server/requirements.txt +++ b/src/server/requirements.txt @@ -1,19 +1,19 @@ -Flask==1.1.2 +Flask==3.0.1 sqlalchemy==1.4.15 psycopg2-binary==2.9.1 openpyxl requests pytest -flask-jwt-extended==4.0.2 +flask-jwt-extended==4.6.0 alembic flask-cors dropbox jellyfish networkx -jinja2<3.1.0 -itsdangerous==2.0.1 # TODO: upgrade flask so we don't have to do this +Jinja2>=3.1.2 +itsdangerous>=2.1.2 simple-salesforce -werkzeug==2.0.3 +werkzeug==3.0.1 structlog pyjwt cryptography