ExchangeRate.py 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import json
  4. from alipay.aop.api.constant.ParamConstants import *
  5. class ExchangeRate(object):
  6. def __init__(self):
  7. self._base_currency = None
  8. self._exchange_currency = None
  9. self._rate = None
  10. @property
  11. def base_currency(self):
  12. return self._base_currency
  13. @base_currency.setter
  14. def base_currency(self, value):
  15. self._base_currency = value
  16. @property
  17. def exchange_currency(self):
  18. return self._exchange_currency
  19. @exchange_currency.setter
  20. def exchange_currency(self, value):
  21. self._exchange_currency = value
  22. @property
  23. def rate(self):
  24. return self._rate
  25. @rate.setter
  26. def rate(self, value):
  27. self._rate = value
  28. def to_alipay_dict(self):
  29. params = dict()
  30. if self.base_currency:
  31. if hasattr(self.base_currency, 'to_alipay_dict'):
  32. params['base_currency'] = self.base_currency.to_alipay_dict()
  33. else:
  34. params['base_currency'] = self.base_currency
  35. if self.exchange_currency:
  36. if hasattr(self.exchange_currency, 'to_alipay_dict'):
  37. params['exchange_currency'] = self.exchange_currency.to_alipay_dict()
  38. else:
  39. params['exchange_currency'] = self.exchange_currency
  40. if self.rate:
  41. if hasattr(self.rate, 'to_alipay_dict'):
  42. params['rate'] = self.rate.to_alipay_dict()
  43. else:
  44. params['rate'] = self.rate
  45. return params
  46. @staticmethod
  47. def from_alipay_dict(d):
  48. if not d:
  49. return None
  50. o = ExchangeRate()
  51. if 'base_currency' in d:
  52. o.base_currency = d['base_currency']
  53. if 'exchange_currency' in d:
  54. o.exchange_currency = d['exchange_currency']
  55. if 'rate' in d:
  56. o.rate = d['rate']
  57. return o