InstallmentValue.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import json
  4. from alipay.aop.api.constant.ParamConstants import *
  5. from alipay.aop.api.domain.InstallmentMetaInfo import InstallmentMetaInfo
  6. class InstallmentValue(object):
  7. def __init__(self):
  8. self._installment_values = None
  9. @property
  10. def installment_values(self):
  11. return self._installment_values
  12. @installment_values.setter
  13. def installment_values(self, value):
  14. if isinstance(value, list):
  15. self._installment_values = list()
  16. for i in value:
  17. if isinstance(i, InstallmentMetaInfo):
  18. self._installment_values.append(i)
  19. else:
  20. self._installment_values.append(InstallmentMetaInfo.from_alipay_dict(i))
  21. def to_alipay_dict(self):
  22. params = dict()
  23. if self.installment_values:
  24. if isinstance(self.installment_values, list):
  25. for i in range(0, len(self.installment_values)):
  26. element = self.installment_values[i]
  27. if hasattr(element, 'to_alipay_dict'):
  28. self.installment_values[i] = element.to_alipay_dict()
  29. if hasattr(self.installment_values, 'to_alipay_dict'):
  30. params['installment_values'] = self.installment_values.to_alipay_dict()
  31. else:
  32. params['installment_values'] = self.installment_values
  33. return params
  34. @staticmethod
  35. def from_alipay_dict(d):
  36. if not d:
  37. return None
  38. o = InstallmentValue()
  39. if 'installment_values' in d:
  40. o.installment_values = d['installment_values']
  41. return o