PaytoolResultDetail.py 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  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.TradeFundBill import TradeFundBill
  6. from alipay.aop.api.domain.UserDetailInfo import UserDetailInfo
  7. class PaytoolResultDetail(object):
  8. def __init__(self):
  9. self._alipay_trade_no = None
  10. self._amount = None
  11. self._fund_bill_list = None
  12. self._gmt_pay = None
  13. self._payer_info = None
  14. self._paytool_bill_no = None
  15. self._paytool_request_no = None
  16. self._status = None
  17. self._tool_code = None
  18. @property
  19. def alipay_trade_no(self):
  20. return self._alipay_trade_no
  21. @alipay_trade_no.setter
  22. def alipay_trade_no(self, value):
  23. self._alipay_trade_no = value
  24. @property
  25. def amount(self):
  26. return self._amount
  27. @amount.setter
  28. def amount(self, value):
  29. self._amount = value
  30. @property
  31. def fund_bill_list(self):
  32. return self._fund_bill_list
  33. @fund_bill_list.setter
  34. def fund_bill_list(self, value):
  35. if isinstance(value, list):
  36. self._fund_bill_list = list()
  37. for i in value:
  38. if isinstance(i, TradeFundBill):
  39. self._fund_bill_list.append(i)
  40. else:
  41. self._fund_bill_list.append(TradeFundBill.from_alipay_dict(i))
  42. @property
  43. def gmt_pay(self):
  44. return self._gmt_pay
  45. @gmt_pay.setter
  46. def gmt_pay(self, value):
  47. self._gmt_pay = value
  48. @property
  49. def payer_info(self):
  50. return self._payer_info
  51. @payer_info.setter
  52. def payer_info(self, value):
  53. if isinstance(value, UserDetailInfo):
  54. self._payer_info = value
  55. else:
  56. self._payer_info = UserDetailInfo.from_alipay_dict(value)
  57. @property
  58. def paytool_bill_no(self):
  59. return self._paytool_bill_no
  60. @paytool_bill_no.setter
  61. def paytool_bill_no(self, value):
  62. self._paytool_bill_no = value
  63. @property
  64. def paytool_request_no(self):
  65. return self._paytool_request_no
  66. @paytool_request_no.setter
  67. def paytool_request_no(self, value):
  68. self._paytool_request_no = value
  69. @property
  70. def status(self):
  71. return self._status
  72. @status.setter
  73. def status(self, value):
  74. self._status = value
  75. @property
  76. def tool_code(self):
  77. return self._tool_code
  78. @tool_code.setter
  79. def tool_code(self, value):
  80. self._tool_code = value
  81. def to_alipay_dict(self):
  82. params = dict()
  83. if self.alipay_trade_no:
  84. if hasattr(self.alipay_trade_no, 'to_alipay_dict'):
  85. params['alipay_trade_no'] = self.alipay_trade_no.to_alipay_dict()
  86. else:
  87. params['alipay_trade_no'] = self.alipay_trade_no
  88. if self.amount:
  89. if hasattr(self.amount, 'to_alipay_dict'):
  90. params['amount'] = self.amount.to_alipay_dict()
  91. else:
  92. params['amount'] = self.amount
  93. if self.fund_bill_list:
  94. if isinstance(self.fund_bill_list, list):
  95. for i in range(0, len(self.fund_bill_list)):
  96. element = self.fund_bill_list[i]
  97. if hasattr(element, 'to_alipay_dict'):
  98. self.fund_bill_list[i] = element.to_alipay_dict()
  99. if hasattr(self.fund_bill_list, 'to_alipay_dict'):
  100. params['fund_bill_list'] = self.fund_bill_list.to_alipay_dict()
  101. else:
  102. params['fund_bill_list'] = self.fund_bill_list
  103. if self.gmt_pay:
  104. if hasattr(self.gmt_pay, 'to_alipay_dict'):
  105. params['gmt_pay'] = self.gmt_pay.to_alipay_dict()
  106. else:
  107. params['gmt_pay'] = self.gmt_pay
  108. if self.payer_info:
  109. if hasattr(self.payer_info, 'to_alipay_dict'):
  110. params['payer_info'] = self.payer_info.to_alipay_dict()
  111. else:
  112. params['payer_info'] = self.payer_info
  113. if self.paytool_bill_no:
  114. if hasattr(self.paytool_bill_no, 'to_alipay_dict'):
  115. params['paytool_bill_no'] = self.paytool_bill_no.to_alipay_dict()
  116. else:
  117. params['paytool_bill_no'] = self.paytool_bill_no
  118. if self.paytool_request_no:
  119. if hasattr(self.paytool_request_no, 'to_alipay_dict'):
  120. params['paytool_request_no'] = self.paytool_request_no.to_alipay_dict()
  121. else:
  122. params['paytool_request_no'] = self.paytool_request_no
  123. if self.status:
  124. if hasattr(self.status, 'to_alipay_dict'):
  125. params['status'] = self.status.to_alipay_dict()
  126. else:
  127. params['status'] = self.status
  128. if self.tool_code:
  129. if hasattr(self.tool_code, 'to_alipay_dict'):
  130. params['tool_code'] = self.tool_code.to_alipay_dict()
  131. else:
  132. params['tool_code'] = self.tool_code
  133. return params
  134. @staticmethod
  135. def from_alipay_dict(d):
  136. if not d:
  137. return None
  138. o = PaytoolResultDetail()
  139. if 'alipay_trade_no' in d:
  140. o.alipay_trade_no = d['alipay_trade_no']
  141. if 'amount' in d:
  142. o.amount = d['amount']
  143. if 'fund_bill_list' in d:
  144. o.fund_bill_list = d['fund_bill_list']
  145. if 'gmt_pay' in d:
  146. o.gmt_pay = d['gmt_pay']
  147. if 'payer_info' in d:
  148. o.payer_info = d['payer_info']
  149. if 'paytool_bill_no' in d:
  150. o.paytool_bill_no = d['paytool_bill_no']
  151. if 'paytool_request_no' in d:
  152. o.paytool_request_no = d['paytool_request_no']
  153. if 'status' in d:
  154. o.status = d['status']
  155. if 'tool_code' in d:
  156. o.tool_code = d['tool_code']
  157. return o