"""Legacy contract model.""" from abacus_common_logic.connectors.database import db from abacus_common_logic.models.base import CRUDMixin class LegacyContract(db.Model, CRUDMixin): """Legacy contract model.""" __tablename__ = 'legacy_contract' legacy_contract_id = db.Column(db.Integer, primary_key=True) contract_id = db.Column( db.Integer, db.ForeignKey('contract.contract_id'), nullable=False ) oa_contract_id = db.Column(db.Integer, nullable=True) __table_args__ = ( db.UniqueConstraint( 'contract_id', 'oa_contract_id', name='unique_legacy_contract' ), ) @classmethod def get_by_contract_id(cls, contract_id: int): """Get a legacy_contract by contract_id.""" return cls.query.filter(cls.contract_id == contract_id).first()