AlipayAcquirePrecreateRequest.py 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import json
  4. from alipay.aop.api.FileItem import FileItem
  5. from alipay.aop.api.constant.ParamConstants import *
  6. class AlipayAcquirePrecreateRequest(object):
  7. def __init__(self, biz_model=None):
  8. self._biz_model = biz_model
  9. self._body = None
  10. self._channel_parameters = None
  11. self._currency = None
  12. self._extend_params = None
  13. self._goods_detail = None
  14. self._it_b_pay = None
  15. self._operator_code = None
  16. self._operator_id = None
  17. self._out_trade_no = None
  18. self._price = None
  19. self._quantity = None
  20. self._royalty_parameters = None
  21. self._royalty_type = None
  22. self._seller_email = None
  23. self._seller_id = None
  24. self._show_url = None
  25. self._subject = None
  26. self._total_fee = None
  27. self._version = "1.0"
  28. self._terminal_type = None
  29. self._terminal_info = None
  30. self._prod_code = None
  31. self._notify_url = None
  32. self._return_url = None
  33. self._udf_params = None
  34. self._need_encrypt = False
  35. @property
  36. def biz_model(self):
  37. return self._biz_model
  38. @biz_model.setter
  39. def biz_model(self, value):
  40. self._biz_model = value
  41. @property
  42. def body(self):
  43. return self._body
  44. @body.setter
  45. def body(self, value):
  46. self._body = value
  47. @property
  48. def channel_parameters(self):
  49. return self._channel_parameters
  50. @channel_parameters.setter
  51. def channel_parameters(self, value):
  52. self._channel_parameters = value
  53. @property
  54. def currency(self):
  55. return self._currency
  56. @currency.setter
  57. def currency(self, value):
  58. self._currency = value
  59. @property
  60. def extend_params(self):
  61. return self._extend_params
  62. @extend_params.setter
  63. def extend_params(self, value):
  64. self._extend_params = value
  65. @property
  66. def goods_detail(self):
  67. return self._goods_detail
  68. @goods_detail.setter
  69. def goods_detail(self, value):
  70. self._goods_detail = value
  71. @property
  72. def it_b_pay(self):
  73. return self._it_b_pay
  74. @it_b_pay.setter
  75. def it_b_pay(self, value):
  76. self._it_b_pay = value
  77. @property
  78. def operator_code(self):
  79. return self._operator_code
  80. @operator_code.setter
  81. def operator_code(self, value):
  82. self._operator_code = value
  83. @property
  84. def operator_id(self):
  85. return self._operator_id
  86. @operator_id.setter
  87. def operator_id(self, value):
  88. self._operator_id = value
  89. @property
  90. def out_trade_no(self):
  91. return self._out_trade_no
  92. @out_trade_no.setter
  93. def out_trade_no(self, value):
  94. self._out_trade_no = value
  95. @property
  96. def price(self):
  97. return self._price
  98. @price.setter
  99. def price(self, value):
  100. self._price = value
  101. @property
  102. def quantity(self):
  103. return self._quantity
  104. @quantity.setter
  105. def quantity(self, value):
  106. self._quantity = value
  107. @property
  108. def royalty_parameters(self):
  109. return self._royalty_parameters
  110. @royalty_parameters.setter
  111. def royalty_parameters(self, value):
  112. self._royalty_parameters = value
  113. @property
  114. def royalty_type(self):
  115. return self._royalty_type
  116. @royalty_type.setter
  117. def royalty_type(self, value):
  118. self._royalty_type = value
  119. @property
  120. def seller_email(self):
  121. return self._seller_email
  122. @seller_email.setter
  123. def seller_email(self, value):
  124. self._seller_email = value
  125. @property
  126. def seller_id(self):
  127. return self._seller_id
  128. @seller_id.setter
  129. def seller_id(self, value):
  130. self._seller_id = value
  131. @property
  132. def show_url(self):
  133. return self._show_url
  134. @show_url.setter
  135. def show_url(self, value):
  136. self._show_url = value
  137. @property
  138. def subject(self):
  139. return self._subject
  140. @subject.setter
  141. def subject(self, value):
  142. self._subject = value
  143. @property
  144. def total_fee(self):
  145. return self._total_fee
  146. @total_fee.setter
  147. def total_fee(self, value):
  148. self._total_fee = value
  149. @property
  150. def version(self):
  151. return self._version
  152. @version.setter
  153. def version(self, value):
  154. self._version = value
  155. @property
  156. def terminal_type(self):
  157. return self._terminal_type
  158. @terminal_type.setter
  159. def terminal_type(self, value):
  160. self._terminal_type = value
  161. @property
  162. def terminal_info(self):
  163. return self._terminal_info
  164. @terminal_info.setter
  165. def terminal_info(self, value):
  166. self._terminal_info = value
  167. @property
  168. def prod_code(self):
  169. return self._prod_code
  170. @prod_code.setter
  171. def prod_code(self, value):
  172. self._prod_code = value
  173. @property
  174. def notify_url(self):
  175. return self._notify_url
  176. @notify_url.setter
  177. def notify_url(self, value):
  178. self._notify_url = value
  179. @property
  180. def return_url(self):
  181. return self._return_url
  182. @return_url.setter
  183. def return_url(self, value):
  184. self._return_url = value
  185. @property
  186. def udf_params(self):
  187. return self._udf_params
  188. @udf_params.setter
  189. def udf_params(self, value):
  190. if not isinstance(value, dict):
  191. return
  192. self._udf_params = value
  193. @property
  194. def need_encrypt(self):
  195. return self._need_encrypt
  196. @need_encrypt.setter
  197. def need_encrypt(self, value):
  198. self._need_encrypt = value
  199. def add_other_text_param(self, key, value):
  200. if not self.udf_params:
  201. self.udf_params = dict()
  202. self.udf_params[key] = value
  203. def get_params(self):
  204. params = dict()
  205. params[P_METHOD] = 'alipay.acquire.precreate'
  206. params[P_VERSION] = self.version
  207. if self.biz_model:
  208. params[P_BIZ_CONTENT] = json.dumps(obj=self.biz_model.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  209. if self.body:
  210. if hasattr(self.body, 'to_alipay_dict'):
  211. params['body'] = json.dumps(obj=self.body.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  212. else:
  213. params['body'] = self.body
  214. if self.channel_parameters:
  215. if hasattr(self.channel_parameters, 'to_alipay_dict'):
  216. params['channel_parameters'] = json.dumps(obj=self.channel_parameters.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  217. else:
  218. params['channel_parameters'] = self.channel_parameters
  219. if self.currency:
  220. if hasattr(self.currency, 'to_alipay_dict'):
  221. params['currency'] = json.dumps(obj=self.currency.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  222. else:
  223. params['currency'] = self.currency
  224. if self.extend_params:
  225. if hasattr(self.extend_params, 'to_alipay_dict'):
  226. params['extend_params'] = json.dumps(obj=self.extend_params.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  227. else:
  228. params['extend_params'] = self.extend_params
  229. if self.goods_detail:
  230. if hasattr(self.goods_detail, 'to_alipay_dict'):
  231. params['goods_detail'] = json.dumps(obj=self.goods_detail.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  232. else:
  233. params['goods_detail'] = self.goods_detail
  234. if self.it_b_pay:
  235. if hasattr(self.it_b_pay, 'to_alipay_dict'):
  236. params['it_b_pay'] = json.dumps(obj=self.it_b_pay.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  237. else:
  238. params['it_b_pay'] = self.it_b_pay
  239. if self.operator_code:
  240. if hasattr(self.operator_code, 'to_alipay_dict'):
  241. params['operator_code'] = json.dumps(obj=self.operator_code.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  242. else:
  243. params['operator_code'] = self.operator_code
  244. if self.operator_id:
  245. if hasattr(self.operator_id, 'to_alipay_dict'):
  246. params['operator_id'] = json.dumps(obj=self.operator_id.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  247. else:
  248. params['operator_id'] = self.operator_id
  249. if self.out_trade_no:
  250. if hasattr(self.out_trade_no, 'to_alipay_dict'):
  251. params['out_trade_no'] = json.dumps(obj=self.out_trade_no.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  252. else:
  253. params['out_trade_no'] = self.out_trade_no
  254. if self.price:
  255. if hasattr(self.price, 'to_alipay_dict'):
  256. params['price'] = json.dumps(obj=self.price.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  257. else:
  258. params['price'] = self.price
  259. if self.quantity:
  260. if hasattr(self.quantity, 'to_alipay_dict'):
  261. params['quantity'] = json.dumps(obj=self.quantity.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  262. else:
  263. params['quantity'] = self.quantity
  264. if self.royalty_parameters:
  265. if hasattr(self.royalty_parameters, 'to_alipay_dict'):
  266. params['royalty_parameters'] = json.dumps(obj=self.royalty_parameters.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  267. else:
  268. params['royalty_parameters'] = self.royalty_parameters
  269. if self.royalty_type:
  270. if hasattr(self.royalty_type, 'to_alipay_dict'):
  271. params['royalty_type'] = json.dumps(obj=self.royalty_type.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  272. else:
  273. params['royalty_type'] = self.royalty_type
  274. if self.seller_email:
  275. if hasattr(self.seller_email, 'to_alipay_dict'):
  276. params['seller_email'] = json.dumps(obj=self.seller_email.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  277. else:
  278. params['seller_email'] = self.seller_email
  279. if self.seller_id:
  280. if hasattr(self.seller_id, 'to_alipay_dict'):
  281. params['seller_id'] = json.dumps(obj=self.seller_id.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  282. else:
  283. params['seller_id'] = self.seller_id
  284. if self.show_url:
  285. if hasattr(self.show_url, 'to_alipay_dict'):
  286. params['show_url'] = json.dumps(obj=self.show_url.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  287. else:
  288. params['show_url'] = self.show_url
  289. if self.subject:
  290. if hasattr(self.subject, 'to_alipay_dict'):
  291. params['subject'] = json.dumps(obj=self.subject.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  292. else:
  293. params['subject'] = self.subject
  294. if self.total_fee:
  295. if hasattr(self.total_fee, 'to_alipay_dict'):
  296. params['total_fee'] = json.dumps(obj=self.total_fee.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  297. else:
  298. params['total_fee'] = self.total_fee
  299. if self.terminal_type:
  300. params['terminal_type'] = self.terminal_type
  301. if self.terminal_info:
  302. params['terminal_info'] = self.terminal_info
  303. if self.prod_code:
  304. params['prod_code'] = self.prod_code
  305. if self.notify_url:
  306. params['notify_url'] = self.notify_url
  307. if self.return_url:
  308. params['return_url'] = self.return_url
  309. if self.udf_params:
  310. params.update(self.udf_params)
  311. return params
  312. def get_multipart_params(self):
  313. multipart_params = dict()
  314. return multipart_params