from app.extensions import db


class PaydownPlanCard(db.Model):
    __tablename__ = 'paydown_plan_cards'

    id = db.Column(db.Integer, primary_key=True)
    monthly_allocation = db.Column(db.Numeric(10, 2), nullable=False)
    starting_balance = db.Column(db.Numeric(10, 2), nullable=False)
    starting_apr = db.Column(db.Numeric(6, 4), nullable=False)    # e.g. 19.9900 for 19.99%

    plan_id = db.Column(db.Integer, db.ForeignKey('paydown_plans.id', ondelete='CASCADE'), nullable=False)
    account_id = db.Column(db.Integer, db.ForeignKey('accounts.id', ondelete='RESTRICT'), nullable=False)

    plan = db.relationship('PaydownPlan', back_populates='cards')
    account = db.relationship('Account', back_populates='paydown_plan_cards')
