from datetime import datetime from typing import Any from sqlalchemy import ( Boolean, Column, DateTime, ForeignKey, Integer, String, ) from sqlalchemy.dialects.postgresql import BIT from sqlalchemy.orm import declarative_base from app.utils.utility import to_dict Base = declarative_base() class UserNotifications(Base): __tablename__ = "UserNotifications" userNotificationId = Column(Integer, primary_key=True) message = Column(String, nullable=False) subject = Column(String, nullable=False) typeId = Column(Integer) isRead = Column(BIT, default="0") recipientUserId = Column(Integer) userId = Column(Integer) applicationId = Column(Integer) userProfileId = Column(Integer) isActive = Column(BIT, default="1") createdAt = Column(DateTime, default=datetime.now()) def dict(self) -> dict[str, Any]: return to_dict(self)