"""Payee Collaborator model.""" from typing import List from abacus_common_logic.models.base import BaseModel, db class PayeeCollaborator(BaseModel): """Payee Collaborator model.""" __tablename__ = 'payee_collaborator' payee_collaborator_id = db.Column(db.Integer, primary_key=True, autoincrement=True) collaborator_id = db.Column(db.Integer) payee_id = db.Column(db.Integer, db.ForeignKey('payee.payee_id')) account_id = db.Column(db.Integer) @classmethod def get_payee_collaborators( cls, limit: int = 100, offset: int = 0, payee_ids: List[int] = None ): query = cls.query if payee_ids: query = query.filter(cls.payee_id.in_(payee_ids)) total_count = query.count() query = query.limit(limit) if offset: query = query.offset(offset) return query.all(), total_count