Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ca3ca1cac3 |
+10
-10
@@ -3,14 +3,14 @@ KAFKA_TIMEOUT=1000.0
|
|||||||
KAFKA_BROKER="10.20.30.50:9092"
|
KAFKA_BROKER="10.20.30.50:9092"
|
||||||
KAFKA_TOPICS=PROCESS_PAYMENT,LOAN_REPAYMENT
|
KAFKA_TOPICS=PROCESS_PAYMENT,LOAN_REPAYMENT
|
||||||
|
|
||||||
# DATABASE_USER=firstadvance
|
DATABASE_USER=firstadvance
|
||||||
# DATABASE_PASSWORD=FirstAdvance!
|
DATABASE_PASSWORD=FirstAdvance!
|
||||||
# DATABASE_HOST=10.20.30.60
|
DATABASE_HOST=10.20.30.60
|
||||||
# DATABASE_PORT=5432
|
DATABASE_PORT=5432
|
||||||
# DATABASE_NAME=firstadvancedev
|
DATABASE_NAME=firstadvancedev
|
||||||
|
|
||||||
DATABASE_USER=system
|
# DATABASE_USER=system
|
||||||
DATABASE_PASSWORD=FIRSTADV_PASS
|
#DATABASE_PASSWORD=FIRSTADV_PASS
|
||||||
DATABASE_HOST=10.10.33.65
|
#DATABASE_HOST=10.10.33.65
|
||||||
DATABASE_PORT=1521
|
#DATABASE_PORT=1521
|
||||||
DATABASE_SID=FREE
|
#DATABASE_SID=FREE
|
||||||
+10
-10
@@ -3,14 +3,14 @@ KAFKA_TIMEOUT=1000.0
|
|||||||
KAFKA_BROKER="dev-events.simbrellang.net:9085"
|
KAFKA_BROKER="dev-events.simbrellang.net:9085"
|
||||||
KAFKA_TOPICS=PROCESS_PAYMENT,LOAN_REPAYMENT
|
KAFKA_TOPICS=PROCESS_PAYMENT,LOAN_REPAYMENT
|
||||||
|
|
||||||
# DATABASE_USER=firstadvance
|
DATABASE_USER=firstadvance
|
||||||
# DATABASE_PASSWORD=FirstAdvance!
|
DATABASE_PASSWORD=FirstAdvance!
|
||||||
# DATABASE_HOST=dev-data.simbrellang.net
|
DATABASE_HOST=10.20.30.60
|
||||||
# DATABASE_PORT=10532
|
DATABASE_PORT=5432
|
||||||
# DATABASE_NAME=firstadvancedev
|
DATABASE_NAME=firstadvancedev
|
||||||
|
|
||||||
DATABASE_USER=system
|
# DATABASE_USER=system
|
||||||
DATABASE_PASSWORD=FIRSTADV_PASS
|
#DATABASE_PASSWORD=FIRSTADV_PASS
|
||||||
DATABASE_HOST=10.10.33.65
|
#DATABASE_HOST=10.10.33.65
|
||||||
DATABASE_PORT=1521
|
#DATABASE_PORT=1521
|
||||||
DATABASE_SID=FREE
|
#DATABASE_SID=FREE
|
||||||
+4
-4
@@ -33,12 +33,12 @@ class Config:
|
|||||||
DATABASE_NAME = os.getenv("DATABASE_NAME")
|
DATABASE_NAME = os.getenv("DATABASE_NAME")
|
||||||
DATABASE_PORT = os.getenv("DATABASE_PORT", 10532)
|
DATABASE_PORT = os.getenv("DATABASE_PORT", 10532)
|
||||||
DATABASE_SID = os.environ.get("DATABASE_SID", "FREE")
|
DATABASE_SID = os.environ.get("DATABASE_SID", "FREE")
|
||||||
DNS = f"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST={DATABASE_HOST})(PORT={DATABASE_PORT}))(CONNECT_DATA=(SID={DATABASE_SID})))"
|
#DNS = f"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST={DATABASE_HOST})(PORT={DATABASE_PORT}))(CONNECT_DATA=(SID={DATABASE_SID})))"
|
||||||
|
|
||||||
|
|
||||||
SQLALCHEMY_DATABASE_URI = (f"oracle+oracledb://{DATABASE_USER}:{DATABASE_PASSWORD}@{DNS}")
|
#SQLALCHEMY_DATABASE_URI = (f"oracle+oracledb://{DATABASE_USER}:{DATABASE_PASSWORD}@{DNS}")
|
||||||
|
|
||||||
# SQLALCHEMY_DATABASE_URI = f"postgresql+psycopg2://{DATABASE_USER}:{DATABASE_PASSWORD}@{DATABASE_HOST}:{DATABASE_PORT}/{DATABASE_NAME}"
|
SQLALCHEMY_DATABASE_URI = f"postgresql+psycopg2://{DATABASE_USER}:{DATABASE_PASSWORD}@{DATABASE_HOST}:{DATABASE_PORT}/{DATABASE_NAME}"
|
||||||
SQLALCHEMY_TRACK_MODIFICATIONS = False
|
SQLALCHEMY_TRACK_MODIFICATIONS = False
|
||||||
# SQLALCHEMY_ECHO = True
|
# SQLALCHEMY_ECHO = True
|
||||||
|
|
||||||
@@ -50,7 +50,7 @@ class Config:
|
|||||||
MAIL_USE_TLS = os.getenv('MAIL_USE_TLS', 'True').lower() in ('true', '1', 'yes')
|
MAIL_USE_TLS = os.getenv('MAIL_USE_TLS', 'True').lower() in ('true', '1', 'yes')
|
||||||
MAIL_USE_SSL = os.getenv('MAIL_USE_SSL', 'False').lower() in ('true', '1', 'yes')
|
MAIL_USE_SSL = os.getenv('MAIL_USE_SSL', 'False').lower() in ('true', '1', 'yes')
|
||||||
MAIL_DEFAULT_SENDER = ('FirstAdvance', 'firstadvance@dynamikservices.tech')
|
MAIL_DEFAULT_SENDER = ('FirstAdvance', 'firstadvance@dynamikservices.tech')
|
||||||
MAIL_RECEIVER= os.getenv('MAIL_RECEIVER', 'chinenyeumeaku@gmail.com,umeakuchinenye@gmail.com')
|
MAIL_RECEIVER= os.getenv('MAIL_RECEIVER', 'chinenyeumeaku@gmail.com')
|
||||||
|
|
||||||
BANK_CALL_BASE_URL = os.getenv("BANK_CALL_BASE_URL", "https://bank-emulator.dev.simbrellang.net/api")
|
BANK_CALL_BASE_URL = os.getenv("BANK_CALL_BASE_URL", "https://bank-emulator.dev.simbrellang.net/api")
|
||||||
BANK_CALL_SMS_BASE_URL= os.getenv("BANK_CALL_SMS_BASE_URL","https://first-advance-middleware-develop.fbn-devops-dev-asenv.appserviceenvironment.net/SMS")
|
BANK_CALL_SMS_BASE_URL= os.getenv("BANK_CALL_SMS_BASE_URL","https://first-advance-middleware-develop.fbn-devops-dev-asenv.appserviceenvironment.net/SMS")
|
||||||
|
|||||||
@@ -78,9 +78,10 @@ class SimbrellaClient:
|
|||||||
insurance_fee = loan_charges.get("INSURANCE")['amount']
|
insurance_fee = loan_charges.get("INSURANCE")['amount']
|
||||||
|
|
||||||
debtId = str(loan_data.get('debtId', "")).strip().zfill(6)
|
debtId = str(loan_data.get('debtId', "")).strip().zfill(6)
|
||||||
|
t_id = ''.join(random.choices(string.ascii_uppercase, k=22))
|
||||||
|
|
||||||
disbursement_data = {
|
disbursement_data = {
|
||||||
"transactionId": loan_data.get('transactionId'),
|
"transactionId": t_id,
|
||||||
"FbnTransactionId": loan_data.get('transactionId'),
|
"FbnTransactionId": loan_data.get('transactionId'),
|
||||||
"debtId": debtId,
|
"debtId": debtId,
|
||||||
"customerId": loan_data.get('customerId'),
|
"customerId": loan_data.get('customerId'),
|
||||||
@@ -97,7 +98,7 @@ class SimbrellaClient:
|
|||||||
|
|
||||||
try:
|
try:
|
||||||
logger.info(f"Here is your Disbursement Request data ****** : {disbursement_data}")
|
logger.info(f"Here is your Disbursement Request data ****** : {disbursement_data}")
|
||||||
response = requests.post(api_url, json=disbursement_data, timeout=10, headers=get_headers())
|
response = requests.post(api_url, json=disbursement_data, timeout=90, headers=get_headers())
|
||||||
if response.status_code == 404:
|
if response.status_code == 404:
|
||||||
logger.error("Received 404 from external service")
|
logger.error("Received 404 from external service")
|
||||||
return ResponseHelper.error("Disbursement Service url not found (404)", status_code=404)
|
return ResponseHelper.error("Disbursement Service url not found (404)", status_code=404)
|
||||||
@@ -178,7 +179,7 @@ class SimbrellaClient:
|
|||||||
"unicode": True
|
"unicode": True
|
||||||
}
|
}
|
||||||
try:
|
try:
|
||||||
sms_response = requests.post(sms_url, json=sms_data, timeout=10, headers=get_headers())
|
sms_response = requests.post(sms_url, json=sms_data, timeout=90, headers=get_headers())
|
||||||
sms_response.raise_for_status() # Raise an exception for 4xx or 5xx status codes
|
sms_response.raise_for_status() # Raise an exception for 4xx or 5xx status codes
|
||||||
|
|
||||||
result = sms_response.json()
|
result = sms_response.json()
|
||||||
@@ -194,7 +195,7 @@ class SimbrellaClient:
|
|||||||
return 0
|
return 0
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.info(f"Failed to call TransactionVerify endpoint: {e}")
|
logger.info(f"Failed to call TransactionVerify endpoint: {e}")
|
||||||
return 0
|
return ResponseHelper.error("Unexpected error while processing loan disbursement", status_code=500, error=str(e))
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def collect_loan_user_initiated(data):
|
def collect_loan_user_initiated(data):
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ from flask import current_app
|
|||||||
from app.extensions import mail
|
from app.extensions import mail
|
||||||
import pandas as pd
|
import pandas as pd
|
||||||
from io import BytesIO
|
from io import BytesIO
|
||||||
|
from app.utils.logger import logger
|
||||||
|
|
||||||
def get_report_data():
|
def get_report_data():
|
||||||
"""
|
"""
|
||||||
@@ -36,5 +37,6 @@ def send_report_email(report_data: list, recipients: list):
|
|||||||
|
|
||||||
with current_app.app_context():
|
with current_app.app_context():
|
||||||
mail.send(msg)
|
mail.send(msg)
|
||||||
|
|
||||||
|
|
||||||
return "Report email sent"
|
return "Report email sent"
|
||||||
+2
-2
@@ -1,7 +1,7 @@
|
|||||||
openapi: 3.0.3
|
openapi: 3.0.3
|
||||||
info:
|
info:
|
||||||
title: Event Manager API
|
title: Eco Integration Event Manager API
|
||||||
description: The documentation for Event Manager API
|
description: The documentation for Eco Event Manager API
|
||||||
version: 1.0.0
|
version: 1.0.0
|
||||||
contact:
|
contact:
|
||||||
name: API Support
|
name: API Support
|
||||||
|
|||||||
Reference in New Issue
Block a user