AlipayMerchantOrderCreateandpayModel.py 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  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.UserIdentity import UserIdentity
  6. from alipay.aop.api.domain.OrderExtInfo import OrderExtInfo
  7. from alipay.aop.api.domain.GoodsInformation import GoodsInformation
  8. from alipay.aop.api.domain.PriceInformation import PriceInformation
  9. from alipay.aop.api.domain.PaymentInformation import PaymentInformation
  10. from alipay.aop.api.domain.UserIdentity import UserIdentity
  11. class AlipayMerchantOrderCreateandpayModel(object):
  12. def __init__(self):
  13. self._biz_scene = None
  14. self._buyer = None
  15. self._ext_info = None
  16. self._goods_infos = None
  17. self._order_amount = None
  18. self._out_biz_no = None
  19. self._payment_request = None
  20. self._seller = None
  21. self._service_type = None
  22. @property
  23. def biz_scene(self):
  24. return self._biz_scene
  25. @biz_scene.setter
  26. def biz_scene(self, value):
  27. self._biz_scene = value
  28. @property
  29. def buyer(self):
  30. return self._buyer
  31. @buyer.setter
  32. def buyer(self, value):
  33. if isinstance(value, UserIdentity):
  34. self._buyer = value
  35. else:
  36. self._buyer = UserIdentity.from_alipay_dict(value)
  37. @property
  38. def ext_info(self):
  39. return self._ext_info
  40. @ext_info.setter
  41. def ext_info(self, value):
  42. if isinstance(value, list):
  43. self._ext_info = list()
  44. for i in value:
  45. if isinstance(i, OrderExtInfo):
  46. self._ext_info.append(i)
  47. else:
  48. self._ext_info.append(OrderExtInfo.from_alipay_dict(i))
  49. @property
  50. def goods_infos(self):
  51. return self._goods_infos
  52. @goods_infos.setter
  53. def goods_infos(self, value):
  54. if isinstance(value, list):
  55. self._goods_infos = list()
  56. for i in value:
  57. if isinstance(i, GoodsInformation):
  58. self._goods_infos.append(i)
  59. else:
  60. self._goods_infos.append(GoodsInformation.from_alipay_dict(i))
  61. @property
  62. def order_amount(self):
  63. return self._order_amount
  64. @order_amount.setter
  65. def order_amount(self, value):
  66. if isinstance(value, list):
  67. self._order_amount = list()
  68. for i in value:
  69. if isinstance(i, PriceInformation):
  70. self._order_amount.append(i)
  71. else:
  72. self._order_amount.append(PriceInformation.from_alipay_dict(i))
  73. @property
  74. def out_biz_no(self):
  75. return self._out_biz_no
  76. @out_biz_no.setter
  77. def out_biz_no(self, value):
  78. self._out_biz_no = value
  79. @property
  80. def payment_request(self):
  81. return self._payment_request
  82. @payment_request.setter
  83. def payment_request(self, value):
  84. if isinstance(value, list):
  85. self._payment_request = list()
  86. for i in value:
  87. if isinstance(i, PaymentInformation):
  88. self._payment_request.append(i)
  89. else:
  90. self._payment_request.append(PaymentInformation.from_alipay_dict(i))
  91. @property
  92. def seller(self):
  93. return self._seller
  94. @seller.setter
  95. def seller(self, value):
  96. if isinstance(value, UserIdentity):
  97. self._seller = value
  98. else:
  99. self._seller = UserIdentity.from_alipay_dict(value)
  100. @property
  101. def service_type(self):
  102. return self._service_type
  103. @service_type.setter
  104. def service_type(self, value):
  105. self._service_type = value
  106. def to_alipay_dict(self):
  107. params = dict()
  108. if self.biz_scene:
  109. if hasattr(self.biz_scene, 'to_alipay_dict'):
  110. params['biz_scene'] = self.biz_scene.to_alipay_dict()
  111. else:
  112. params['biz_scene'] = self.biz_scene
  113. if self.buyer:
  114. if hasattr(self.buyer, 'to_alipay_dict'):
  115. params['buyer'] = self.buyer.to_alipay_dict()
  116. else:
  117. params['buyer'] = self.buyer
  118. if self.ext_info:
  119. if isinstance(self.ext_info, list):
  120. for i in range(0, len(self.ext_info)):
  121. element = self.ext_info[i]
  122. if hasattr(element, 'to_alipay_dict'):
  123. self.ext_info[i] = element.to_alipay_dict()
  124. if hasattr(self.ext_info, 'to_alipay_dict'):
  125. params['ext_info'] = self.ext_info.to_alipay_dict()
  126. else:
  127. params['ext_info'] = self.ext_info
  128. if self.goods_infos:
  129. if isinstance(self.goods_infos, list):
  130. for i in range(0, len(self.goods_infos)):
  131. element = self.goods_infos[i]
  132. if hasattr(element, 'to_alipay_dict'):
  133. self.goods_infos[i] = element.to_alipay_dict()
  134. if hasattr(self.goods_infos, 'to_alipay_dict'):
  135. params['goods_infos'] = self.goods_infos.to_alipay_dict()
  136. else:
  137. params['goods_infos'] = self.goods_infos
  138. if self.order_amount:
  139. if isinstance(self.order_amount, list):
  140. for i in range(0, len(self.order_amount)):
  141. element = self.order_amount[i]
  142. if hasattr(element, 'to_alipay_dict'):
  143. self.order_amount[i] = element.to_alipay_dict()
  144. if hasattr(self.order_amount, 'to_alipay_dict'):
  145. params['order_amount'] = self.order_amount.to_alipay_dict()
  146. else:
  147. params['order_amount'] = self.order_amount
  148. if self.out_biz_no:
  149. if hasattr(self.out_biz_no, 'to_alipay_dict'):
  150. params['out_biz_no'] = self.out_biz_no.to_alipay_dict()
  151. else:
  152. params['out_biz_no'] = self.out_biz_no
  153. if self.payment_request:
  154. if isinstance(self.payment_request, list):
  155. for i in range(0, len(self.payment_request)):
  156. element = self.payment_request[i]
  157. if hasattr(element, 'to_alipay_dict'):
  158. self.payment_request[i] = element.to_alipay_dict()
  159. if hasattr(self.payment_request, 'to_alipay_dict'):
  160. params['payment_request'] = self.payment_request.to_alipay_dict()
  161. else:
  162. params['payment_request'] = self.payment_request
  163. if self.seller:
  164. if hasattr(self.seller, 'to_alipay_dict'):
  165. params['seller'] = self.seller.to_alipay_dict()
  166. else:
  167. params['seller'] = self.seller
  168. if self.service_type:
  169. if hasattr(self.service_type, 'to_alipay_dict'):
  170. params['service_type'] = self.service_type.to_alipay_dict()
  171. else:
  172. params['service_type'] = self.service_type
  173. return params
  174. @staticmethod
  175. def from_alipay_dict(d):
  176. if not d:
  177. return None
  178. o = AlipayMerchantOrderCreateandpayModel()
  179. if 'biz_scene' in d:
  180. o.biz_scene = d['biz_scene']
  181. if 'buyer' in d:
  182. o.buyer = d['buyer']
  183. if 'ext_info' in d:
  184. o.ext_info = d['ext_info']
  185. if 'goods_infos' in d:
  186. o.goods_infos = d['goods_infos']
  187. if 'order_amount' in d:
  188. o.order_amount = d['order_amount']
  189. if 'out_biz_no' in d:
  190. o.out_biz_no = d['out_biz_no']
  191. if 'payment_request' in d:
  192. o.payment_request = d['payment_request']
  193. if 'seller' in d:
  194. o.seller = d['seller']
  195. if 'service_type' in d:
  196. o.service_type = d['service_type']
  197. return o