forked from DigiFi/digifi-BankToProductCore
[add]: Repayment status, balance and description
This commit is contained in:
@@ -1,5 +1,6 @@
|
|||||||
from datetime import datetime, timezone
|
from datetime import datetime, timezone
|
||||||
from app.extensions import db
|
from app.extensions import db
|
||||||
|
from app.models import repayment
|
||||||
from sqlalchemy.orm import relationship
|
from sqlalchemy.orm import relationship
|
||||||
from dateutil.relativedelta import relativedelta
|
from dateutil.relativedelta import relativedelta
|
||||||
from sqlalchemy.sql import func
|
from sqlalchemy.sql import func
|
||||||
@@ -19,6 +20,9 @@ class LoanRepaymentSchedule(db.Model):
|
|||||||
paid_at = db.Column(db.DateTime, nullable=True)
|
paid_at = db.Column(db.DateTime, nullable=True)
|
||||||
due_process_date = db.Column(db.DateTime, nullable=True)
|
due_process_date = db.Column(db.DateTime, nullable=True)
|
||||||
due_process_count = db.Column(db.Integer, default=0)
|
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())
|
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())
|
updated_at = db.Column(db.DateTime(timezone=True), server_default=func.now(), onupdate=func.now())
|
||||||
|
|||||||
@@ -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 ###
|
||||||
Reference in New Issue
Block a user