Loan status fix
This commit is contained in:
+12
-17
@@ -50,34 +50,29 @@ class Repayment(db.Model):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def create_repayment(cls, repayment_data):
|
def create_repayment(cls, repayment_data):
|
||||||
logger.info(f"create_repayment data: {repayment_data}")
|
|
||||||
|
|
||||||
try:
|
|
||||||
logger.info(f"repayment_data-LoanStatus- data: {repayment_data['LoanStatus']}")
|
|
||||||
except Exception as e:
|
|
||||||
logger.error(f"Bad data LoanStatus 777777 error: {e}")
|
|
||||||
llogger.info(f"LoanStatus 2222222 data: {repayment_data.LoanStatus}")
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if repayment_data["LoanStatus"] not in [LoanStatus.ACTIVE, LoanStatus.START_REPAY]:
|
if repayment_data["LoanStatus"] not in [LoanStatus.ACTIVE, LoanStatus.START_REPAY]:
|
||||||
raise ValueError(f"Repayment cannot be processed. Loan status: ({repayment_data["LoanStatus"]})")
|
raise ValueError(f"Repayment cannot be processed. Loan status: ({repayment_data['LoanStatus']})")
|
||||||
|
|
||||||
repayment = cls(
|
repayment = cls(
|
||||||
customer_id=repayment_data.customerId,
|
customer_id=repayment_data["customerId"],
|
||||||
loan_id=repayment_data.loanId,
|
loan_id=repayment_data["loanId"],
|
||||||
product_id=repayment_data.productId,
|
product_id=repayment_data["productId"],
|
||||||
transaction_id=repayment_data.transactionId,
|
transaction_id=repayment_data["transactionId"],
|
||||||
created_at=datetime.now(timezone.utc),
|
created_at=datetime.now(timezone.utc),
|
||||||
updated_at=datetime.now(timezone.utc),
|
updated_at=datetime.now(timezone.utc),
|
||||||
initiated_by= repayment_data.initiated_by
|
initiated_by= repayment_data["initiatedBy"],
|
||||||
|
salary_amount=repayment_data["salaryAmount"]
|
||||||
)
|
)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
db.session.add(repayment)
|
db.session.add(repayment)
|
||||||
except IntegrityError as err:
|
db.session.commit()
|
||||||
|
logger.info("Repayment record committed.")
|
||||||
|
return repayment
|
||||||
|
except InqtegrityError as err:
|
||||||
logger.error(f"Database integrity error: {err}")
|
logger.error(f"Database integrity error: {err}")
|
||||||
return repayment
|
return [q]
|
||||||
|
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ from app.integrations.simbrella import SimbrellaClient
|
|||||||
from app.services.loan import LoanService
|
from app.services.loan import LoanService
|
||||||
from app.services.repayment import RepaymentService
|
from app.services.repayment import RepaymentService
|
||||||
from app.services.salary import SalaryService
|
from app.services.salary import SalaryService
|
||||||
|
from app.enums.loan_status import LoanStatus
|
||||||
|
|
||||||
autocall_bp = Blueprint("autocall", __name__)
|
autocall_bp = Blueprint("autocall", __name__)
|
||||||
|
|
||||||
@@ -192,7 +193,7 @@ def salary_detect():
|
|||||||
#logger.info(f"Creating repayment for loan ID {loan_dict['debtId']}")
|
#logger.info(f"Creating repayment for loan ID {loan_dict['debtId']}")
|
||||||
# repayment = RepaymentService.add_repayment(repayment_data)
|
# repayment = RepaymentService.add_repayment(repayment_data)
|
||||||
repayment = RepaymentService.create_repayment(repayment_data)
|
repayment = RepaymentService.create_repayment(repayment_data)
|
||||||
Loan.update_status(loan_id=repayment_data.loanId,
|
LoanService.update_status(loan_id=repayment_data["loanId"],
|
||||||
status=LoanStatus.START_REPAY) # repay started
|
status=LoanStatus.START_REPAY) # repay started
|
||||||
|
|
||||||
logger.info(f"Created repayment ID: {repayment.id}")
|
logger.info(f"Created repayment ID: {repayment.id}")
|
||||||
|
|||||||
Reference in New Issue
Block a user