progress on disbursement endpoint

This commit is contained in:
lennyaiko
2025-04-10 21:50:25 +01:00
parent f408da5a75
commit 6b272eb107
3 changed files with 24 additions and 16 deletions
+7 -8
View File
@@ -3,6 +3,7 @@ import json
from app.utils.logger import logger from app.utils.logger import logger
from app.config import settings from app.config import settings
import requests import requests
from app.routes.loan import disbursement as disbursement_endpoint
class KafkaIntegration: class KafkaIntegration:
@@ -86,15 +87,13 @@ class KafkaIntegration:
logger.info("Kafka consumer closed") logger.info("Kafka consumer closed")
@staticmethod @staticmethod
def _call_disbursement_endpoint(message, endpoint_url=f"{BASE_URL}/Disbursement"): def _call_disbursement_endpoint(message):
"""Call an HTTP endpoint with the received message""" """Call the disbursement endpoint with the received message"""
try: try:
response = requests.post(endpoint_url, json=message, timeout=5) response = disbursement_endpoint(message)
response.raise_for_status()
logger.info( logger.info(
f"Successfully sent message to {endpoint_url}: {response.status_code}" f"Successfully sent message to disbursement endpoint: {response.status_code}"
) )
print(response.json()) except Exception as e:
except requests.exceptions.RequestException as e: logger.error(f"Failed to call disbursement endpoint: {e}")
logger.error(f"Failed to call endpoint {endpoint_url}: {e}")
raise raise
+14 -6
View File
@@ -153,14 +153,22 @@ def rac_check():
@loan_bp.route("/disbursement", methods=["POST"]) @loan_bp.route("/disbursement", methods=["POST"])
def disbursement(): def disbursement(data=None):
data = request.json if data is None:
data = request.json
api_url = f"{BASE_URL}/Disbursement" api_url = f"{BASE_URL}/Disbursement"
return jsonify({"requestId": data["requestId"]}), 200 response = requests.post(
api_url,
# response = requests.post(api_url, json=data, headers=get_headers()) json=data,
# return jsonify(response.json()), response.status_code headers=get_headers(),
auth=(
settings.BANK_CALL_BASIC_AUTH_USERNAME,
settings.BANK_CALL_BASIC_AUTH_PASSWORD,
),
)
return jsonify(response.json()), response.status_code
@loan_bp.route("/collect-loan", methods=["POST"]) @loan_bp.route("/collect-loan", methods=["POST"])
+3 -2
View File
@@ -1,8 +1,9 @@
import requests import requests
from flask import current_app from flask import current_app
def get_headers(): def get_headers():
return { return {
"Authorization": f"Bearer {current_app.config['JWT_SECRET_KEY']}", "Content-Type": "application/json",
"Content-Type": "application/json" "Accept": "application/json",
} }