from dataclasses import dataclass from models.base import BaseModel @dataclass class PendingReward(BaseModel): child_id: str reward_id: str status: str = "pending" # pending, approved, rejected @classmethod def from_dict(cls, d: dict): return cls( child_id=d.get('child_id'), reward_id=d.get('reward_id'), status=d.get('status', 'pending'), id=d.get('id'), created_at=d.get('created_at'), updated_at=d.get('updated_at') ) def to_dict(self): base = super().to_dict() base.update({ 'child_id': self.child_id, 'reward_id': self.reward_id, 'status': self.status }) return base