from datetime import datetime
from typing import Optional

from application.model import (
    BenefitAppliers,
    OperationDescription,
)


class BenefitControllerDto(object):

    def __init__(
        self,
        benefit_id=None,                # type: Optional[str]
        operation_description=None,     # type: Optional[OperationDescription]
        benefit_applier=None,           # type: Optional[BenefitAppliers]
        retry_quantity=None,            # type: Optional[int]
        last_retry_date_utc=None,       # type: Optional[datetime]
        order_picture=None,             # type: Optional[datetime]
        table_picture=None,             # type: Optional[datetime]
    ):
        # type: (...) -> None

        self.benefit_id = benefit_id
        self.operation_description = operation_description
        self.benefit_applier = benefit_applier
        self.retry_quantity = retry_quantity
        self.last_retry_date_utc = last_retry_date_utc
        self.order_picture = order_picture
        self.table_picture = table_picture

