forked from DigiFi/digifi-BankToProductCore
26 lines
1.1 KiB
Python
26 lines
1.1 KiB
Python
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})>" |