diff --git a/app/models/loan_repayment_schedule.py b/app/models/loan_repayment_schedule.py index 8b87d1c..d9e3182 100644 --- a/app/models/loan_repayment_schedule.py +++ b/app/models/loan_repayment_schedule.py @@ -1,5 +1,6 @@ from datetime import datetime, timezone from app.extensions import db +from app.models import repayment from sqlalchemy.orm import relationship from dateutil.relativedelta import relativedelta from sqlalchemy.sql import func @@ -19,6 +20,9 @@ class LoanRepaymentSchedule(db.Model): paid_at = db.Column(db.DateTime, nullable=True) due_process_date = db.Column(db.DateTime, nullable=True) due_process_count = db.Column(db.Integer, default=0) + paid_status = db.Column(db.String(20), nullable=True) + repay_description = db.Column(db.String(255), nullable=True) + partial_balance = db.Column(db.Float, default=0.0) created_at = db.Column(db.DateTime(timezone=True), server_default=func.now()) updated_at = db.Column(db.DateTime(timezone=True), server_default=func.now(), onupdate=func.now()) diff --git a/migrations/versions/30b45df851fa_.py b/migrations/versions/30b45df851fa_.py new file mode 100644 index 0000000..80beaff --- /dev/null +++ b/migrations/versions/30b45df851fa_.py @@ -0,0 +1,45 @@ +"""empty message + +Revision ID: 30b45df851fa +Revises: d59bfb9ead82 +Create Date: 2025-08-26 13:48:27.458593 + +""" +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = '30b45df851fa' +down_revision = 'd59bfb9ead82' +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.add_column( + 'loan_repayment_schedules', + sa.Column('paid_status', sa.String(length=20), nullable=True), + ) + + op.add_column( + 'loan_repayment_schedules', + sa.Column('repay_description', sa.String(length=255), nullable=True), + ) + + + op.add_column( + 'loan_repayment_schedules', + sa.Column('partial_balance', sa.Float(), nullable=True), + ) + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_column('loan_repayment_schedules', 'partial_balance') + op.drop_column('loan_repayment_schedules', 'repay_description') + op.drop_column('loan_repayment_schedules', 'paid_status') + + # ### end Alembic commands ###