Source code for worldline.acquiring.sdk.v1.domain.get_dcc_rate_request

# -*- coding: utf-8 -*-
#
# This file was automatically generated.
#
from typing import Optional

from .card_data_for_dcc import CardDataForDcc
from .point_of_sale_data_for_dcc import PointOfSaleDataForDcc
from .transaction_data_for_dcc import TransactionDataForDcc

from worldline.acquiring.sdk.domain.data_object import DataObject


[docs] class GetDCCRateRequest(DataObject): __card_payment_data: Optional[CardDataForDcc] = None __operation_id: Optional[str] = None __point_of_sale_data: Optional[PointOfSaleDataForDcc] = None __rate_reference_id: Optional[str] = None __target_currency: Optional[str] = None __transaction: Optional[TransactionDataForDcc] = None @property def card_payment_data(self) -> Optional[CardDataForDcc]: """ Type: :class:`worldline.acquiring.sdk.v1.domain.card_data_for_dcc.CardDataForDcc` """ return self.__card_payment_data @card_payment_data.setter def card_payment_data(self, value: Optional[CardDataForDcc]) -> None: self.__card_payment_data = value @property def operation_id(self) -> Optional[str]: """ | A unique identifier of the operation, generated by the client. Type: str """ return self.__operation_id @operation_id.setter def operation_id(self, value: Optional[str]) -> None: self.__operation_id = value @property def point_of_sale_data(self) -> Optional[PointOfSaleDataForDcc]: """ Type: :class:`worldline.acquiring.sdk.v1.domain.point_of_sale_data_for_dcc.PointOfSaleDataForDcc` """ return self.__point_of_sale_data @point_of_sale_data.setter def point_of_sale_data(self, value: Optional[PointOfSaleDataForDcc]) -> None: self.__point_of_sale_data = value @property def rate_reference_id(self) -> Optional[str]: """ | The reference of a previously used rate | This can be used in case of refund if you want to use the same rate as the original transaction. Type: str """ return self.__rate_reference_id @rate_reference_id.setter def rate_reference_id(self, value: Optional[str]) -> None: self.__rate_reference_id = value @property def target_currency(self) -> Optional[str]: """ | The currency to convert to Type: str """ return self.__target_currency @target_currency.setter def target_currency(self, value: Optional[str]) -> None: self.__target_currency = value @property def transaction(self) -> Optional[TransactionDataForDcc]: """ Type: :class:`worldline.acquiring.sdk.v1.domain.transaction_data_for_dcc.TransactionDataForDcc` """ return self.__transaction @transaction.setter def transaction(self, value: Optional[TransactionDataForDcc]) -> None: self.__transaction = value
[docs] def to_dictionary(self) -> dict: dictionary = super(GetDCCRateRequest, self).to_dictionary() if self.card_payment_data is not None: dictionary['cardPaymentData'] = self.card_payment_data.to_dictionary() if self.operation_id is not None: dictionary['operationId'] = self.operation_id if self.point_of_sale_data is not None: dictionary['pointOfSaleData'] = self.point_of_sale_data.to_dictionary() if self.rate_reference_id is not None: dictionary['rateReferenceId'] = self.rate_reference_id if self.target_currency is not None: dictionary['targetCurrency'] = self.target_currency if self.transaction is not None: dictionary['transaction'] = self.transaction.to_dictionary() return dictionary
[docs] def from_dictionary(self, dictionary: dict) -> 'GetDCCRateRequest': super(GetDCCRateRequest, self).from_dictionary(dictionary) if 'cardPaymentData' in dictionary: if not isinstance(dictionary['cardPaymentData'], dict): raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['cardPaymentData'])) value = CardDataForDcc() self.card_payment_data = value.from_dictionary(dictionary['cardPaymentData']) if 'operationId' in dictionary: self.operation_id = dictionary['operationId'] if 'pointOfSaleData' in dictionary: if not isinstance(dictionary['pointOfSaleData'], dict): raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['pointOfSaleData'])) value = PointOfSaleDataForDcc() self.point_of_sale_data = value.from_dictionary(dictionary['pointOfSaleData']) if 'rateReferenceId' in dictionary: self.rate_reference_id = dictionary['rateReferenceId'] if 'targetCurrency' in dictionary: self.target_currency = dictionary['targetCurrency'] if 'transaction' in dictionary: if not isinstance(dictionary['transaction'], dict): raise TypeError('value \'{}\' is not a dictionary'.format(dictionary['transaction'])) value = TransactionDataForDcc() self.transaction = value.from_dictionary(dictionary['transaction']) return self