from datetime import datetime from app import db class Account(db.Model): __tablename__ = 'accounts' __table_args__ = {'schema': 'flask_app'} id = db.Column(db.String(50), primary_key=True) customer_id = db.Column(db.String(50), nullable=False) account_type = db.Column(db.String(50)) status = db.Column(db.String(20), default='active') lien_amount = db.Column(db.Float, default=0.0) created_at = db.Column(db.DateTime, default=datetime.utcnow) updated_at = db.Column(db.DateTime, default=datetime.utcnow, onupdate=datetime.utcnow) # Database relationship # customer = db.relationship( # 'Customer', # primaryjoin='Account.customer_id == Customer.id', # backref='accounts', # foreign_keys=[customer_id], # viewonly=True # ) @classmethod def is_valid_account(cls, account_id, customer_id): account = cls.query.filter_by(id=account_id, customer_id=customer_id).first() if not account: return False, "Account not found or doesn't belong to customer" if account.lien_amount > 0: return False, "Account has an existing lien" return True, "Account is valid" def __repr__(self): return f''