AlipayBusinessOrderPayModel.py 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  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.PaytoolRequestDetail import PaytoolRequestDetail
  6. class AlipayBusinessOrderPayModel(object):
  7. def __init__(self):
  8. self._order_no = None
  9. self._paytool_list = None
  10. @property
  11. def order_no(self):
  12. return self._order_no
  13. @order_no.setter
  14. def order_no(self, value):
  15. self._order_no = value
  16. @property
  17. def paytool_list(self):
  18. return self._paytool_list
  19. @paytool_list.setter
  20. def paytool_list(self, value):
  21. if isinstance(value, list):
  22. self._paytool_list = list()
  23. for i in value:
  24. if isinstance(i, PaytoolRequestDetail):
  25. self._paytool_list.append(i)
  26. else:
  27. self._paytool_list.append(PaytoolRequestDetail.from_alipay_dict(i))
  28. def to_alipay_dict(self):
  29. params = dict()
  30. if self.order_no:
  31. if hasattr(self.order_no, 'to_alipay_dict'):
  32. params['order_no'] = self.order_no.to_alipay_dict()
  33. else:
  34. params['order_no'] = self.order_no
  35. if self.paytool_list:
  36. if isinstance(self.paytool_list, list):
  37. for i in range(0, len(self.paytool_list)):
  38. element = self.paytool_list[i]
  39. if hasattr(element, 'to_alipay_dict'):
  40. self.paytool_list[i] = element.to_alipay_dict()
  41. if hasattr(self.paytool_list, 'to_alipay_dict'):
  42. params['paytool_list'] = self.paytool_list.to_alipay_dict()
  43. else:
  44. params['paytool_list'] = self.paytool_list
  45. return params
  46. @staticmethod
  47. def from_alipay_dict(d):
  48. if not d:
  49. return None
  50. o = AlipayBusinessOrderPayModel()
  51. if 'order_no' in d:
  52. o.order_no = d['order_no']
  53. if 'paytool_list' in d:
  54. o.paytool_list = d['paytool_list']
  55. return o