Siddharaj Shirke
v1 completed successfully
67c8aca
from sqlalchemy import Column, Integer, String, Float, DateTime, Text
from sqlalchemy.sql import func
from .database import Base
class LoanApplication(Base):
__tablename__ = "loan_applications"
id = Column(Integer, primary_key=True, index=True)
applicant_name = Column(String, default="Applicant")
# Financial Inputs (Stored as stringified JSON or separate columns, but columns are safer for SQLite)
gender = Column(String)
married = Column(String)
dependents = Column(String)
education = Column(String)
self_employed = Column(String)
applicant_income = Column(Float)
coapplicant_income = Column(Float)
loan_amount = Column(Float)
loan_amount_term = Column(Float)
credit_history = Column(Float)
property_area = Column(String)
# Processed Results
prediction = Column(String) # "Y" or "N"
confidence = Column(Float)
dti_ratio = Column(Float)
# AI & Explanation Outputs
explanation_text = Column(Text, nullable=True)
optimized_suggestion = Column(Text, nullable=True)
feature_importance_json = Column(Text, nullable=True) # stringified JSON
benchmarks_json = Column(Text, nullable=True) # stringified JSON
created_at = Column(DateTime(timezone=True), server_default=func.now())