a
    tNg                     @   s0   d dl mZ d dlmZ dZG dd deZdS )    )
BaseObject)Amount   c                   @   s   e Zd ZdZdZdZdZdZdZe	dd Z
e
jdd Z
e	dd Zejdd Ze	d	d
 Zejdd
 Ze	dd Zejdd Ze	dd Zejdd ZdS )TransferuH  
    Данные о распределении денег — сколько и в какой магазин нужно перевести. Необходимо передавать, если вы используете %[Сплитование платежей](/developers/solutions-for-platforms/split-payments/basics).
    Nc                 C   s   | j S )u   
        Возвращает account_id модели Transfer.

        :return: account_id модели Transfer.
        :rtype: str
        )_Transfer__account_idself r	   |/var/www/vosh/data/www/fastworkle.ru/webshop-tgbot-v.1.0/venv/lib/python3.9/site-packages/yookassa/domain/models/transfer.py
account_id   s    zTransfer.account_idc                 C   s   t || _dS )u   
        Устанавливает account_id модели Transfer.

        :param value: account_id модели Transfer.
        :type value: str
        N)strr   r   valuer	   r	   r
   r   &   s    c                 C   s   | j S )u   
        Возвращает amount модели Transfer.

        :return: amount модели Transfer.
        :rtype: Amount
        )_Transfer__amountr   r	   r	   r
   amount0   s    zTransfer.amountc                 C   s4   t |trt|| _nt |tr(|| _ntddS )u   
        Устанавливает amount модели Transfer.

        :param value: amount модели Transfer.
        :type value: Amount
        z"Invalid transfer.amount value typeN)
isinstancedictr   r   	TypeErrorr   r	   r	   r
   r   :   s
    

c                 C   s   | j S )u   
        Возвращает platform_fee_amount модели Transfer.

        :return: platform_fee_amount модели Transfer.
        :rtype: Amount
        )_Transfer__platform_fee_amountr   r	   r	   r
   platform_fee_amountI   s    zTransfer.platform_fee_amountc                 C   s4   t |trt|| _nt |tr(|| _ntddS )u   
        Устанавливает platform_fee_amount модели Transfer.

        :param value: platform_fee_amount модели Transfer.
        :type value: Amount
        z/Invalid transfer.platform_fee_amount value typeN)r   r   r   r   r   r   r	   r	   r
   r   S   s
    

c                 C   s   | j S )u   
        Возвращает description модели Transfer.

        :return: description модели Transfer.
        :rtype: str
        )_Transfer__descriptionr   r	   r	   r
   descriptionb   s    zTransfer.descriptionc                 C   s2   t |}|r.t|tkr || _ntdtdS )u   
        Устанавливает description модели Transfer.

        :param value: description модели Transfer.
        :type value: str
        zDThe value of the description parameter is too long. Max length is {}N)r   lenDESCRIPTION_MAX_LENGTHr   
ValueErrorformat)r   r   Z
cast_valuer	   r	   r
   r   l   s
    c                 C   s   | j S )u   
        Возвращает metadata модели Transfer.

        :return: metadata модели Transfer.
        :rtype: dict[str, str]
        )_Transfer__metadatar   r	   r	   r
   metadata{   s    zTransfer.metadatac                 C   s   t |tu r|| _dS )u   
        Устанавливает metadata модели Transfer.

        :param value: metadata модели Transfer.
        :type value: dict[str, str]
        N)typer   r   r   r	   r	   r
   r      s    )__name__
__module____qualname____doc__r   r   r   r   r   propertyr   setterr   r   r   r   r	   r	   r	   r
   r      s4   
	
	
	

	

	

	r   N)Zyookassa.domain.commonr   Zyookassa.domain.models.amountr   r   r   r	   r	   r	   r
   <module>   s   