from sqlalchemy import DateTime, Text
from sqlalchemy.orm import Mapped, mapped_column
from src.apps.base.models.base import Base
from sqlalchemy.sql import func


class PaymentMethodChequeDetails(Base):
    """
    PaymentMethodChequeDetails Model: ORM class for PaymentMethodChequeDetails Entity
    """

    __tablename__ = "payment_methods_cheque_details"

    id: Mapped[int] = mapped_column(primary_key=True, index=True, autoincrement=True)
    cheque_number: Mapped[str | None] = mapped_column(Text, nullable=True)
    created_at: Mapped[DateTime] = mapped_column(DateTime, server_default=func.now())

    def __init__(self, **kwargs):
        """Initialize PaymentMethodChequeDetails"""
        super().__init__(**kwargs)
