[feat]: add models bind to eco database

This commit is contained in:
VivianDee
2025-07-25 15:13:59 +01:00
parent 8c215a7f35
commit 5c99bf96c2
6 changed files with 122 additions and 0 deletions
+26
View File
@@ -0,0 +1,26 @@
from app.eco.enums.loan_status import LoanStatus
from sqlalchemy import Column, String, Date, Numeric, Enum
from app.extensions import db
import enum
class Loan(db.Model):
__tablename__ = 'loans'
__bind_key__ = 'eco'
id = Column(Integer, primary_key=True)
request_id = Column(String(50), unique=True, nullable=False)
affiliate_code = Column(String(3), nullable=False)
customer_id = Column(String(9), nullable=False)
account_id = Column(String(10), nullable=False)
product_id = Column(String(4), nullable=False)
debt_id = Column(String(20), unique=True, nullable=False)
initial_credit_amount = Column(Numeric(12, 2), nullable=False)
current_balance = Column(Numeric(12, 2), nullable=False)
interest_rate = Column(Numeric(5, 2), nullable=False)
status = Column(Enum(LoanStatus), default=LoanStatus.PENDING)
disbursement_date = Column(Date, nullable=False)
due_date = Column(Date, nullable=False)
lien_amount = Column(Numeric(12, 2), default=0.00)
def __repr__(self):
return f"<Loan(id={self.id}, debt_id={self.debt_id}, status={self.status})>"