# This file was generated by liblab | https://liblab.com/

from .utils.json_map import JsonMap
from .base import BaseModel


@JsonMap({"id_": "id"})
class RequesterTimeOff(BaseModel):
    """RequesterTimeOff

    :param is_part_time: is_part_time, defaults to None
    :type is_part_time: bool, optional
    :param has_reached_end_date: has_reached_end_date, defaults to None
    :type has_reached_end_date: bool, optional
    :param id_: Unique identifier of this resource., defaults to None
    :type id_: str, optional
    :param uuid: uuid, defaults to None
    :type uuid: str, optional
    :param hris_profile_id: hris_profile_id, defaults to None
    :type hris_profile_id: str, optional
    :param client_profile_id: client_profile_id, defaults to None
    :type client_profile_id: str, optional
    :param organization_id: organization_id, defaults to None
    :type organization_id: float, optional
    :param country: country, defaults to None
    :type country: str, optional
    :param worker_type: worker_type, defaults to None
    :type worker_type: str, optional
    :param end_date: end_date, defaults to None
    :type end_date: str, optional
    :param part_time_percentage: part_time_percentage, defaults to None
    :type part_time_percentage: str, optional
    :param created_at: created_at, defaults to None
    :type created_at: str, optional
    :param updated_at: updated_at, defaults to None
    :type updated_at: str, optional
    """

    def __init__(
        self,
        is_part_time: bool = None,
        has_reached_end_date: bool = None,
        id_: str = None,
        uuid: str = None,
        hris_profile_id: str = None,
        client_profile_id: str = None,
        organization_id: float = None,
        country: str = None,
        worker_type: str = None,
        end_date: str = None,
        part_time_percentage: str = None,
        created_at: str = None,
        updated_at: str = None,
    ):
        if is_part_time is not None:
            self.is_part_time = is_part_time
        if has_reached_end_date is not None:
            self.has_reached_end_date = has_reached_end_date
        if id_ is not None:
            self.id_ = id_
        if uuid is not None:
            self.uuid = uuid
        if hris_profile_id is not None:
            self.hris_profile_id = hris_profile_id
        if client_profile_id is not None:
            self.client_profile_id = client_profile_id
        if organization_id is not None:
            self.organization_id = organization_id
        if country is not None:
            self.country = country
        if worker_type is not None:
            self.worker_type = worker_type
        if end_date is not None:
            self.end_date = end_date
        if part_time_percentage is not None:
            self.part_time_percentage = part_time_percentage
        if created_at is not None:
            self.created_at = created_at
        if updated_at is not None:
            self.updated_at = updated_at
