AlipayOpenAgentMobilepaySignRequest.py 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253
  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 AlipayOpenAgentMobilepaySignRequest(object):
  7. def __init__(self, biz_model=None):
  8. self._biz_model = biz_model
  9. self._app_name = None
  10. self._batch_no = None
  11. self._business_license_no = None
  12. self._date_limitation = None
  13. self._long_term = None
  14. self._mcc_code = None
  15. self._app_demo = None
  16. self._business_license_auth_pic = None
  17. self._business_license_pic = None
  18. self._special_license_pic = None
  19. self._version = "1.0"
  20. self._terminal_type = None
  21. self._terminal_info = None
  22. self._prod_code = None
  23. self._notify_url = None
  24. self._return_url = None
  25. self._udf_params = None
  26. self._need_encrypt = False
  27. @property
  28. def biz_model(self):
  29. return self._biz_model
  30. @biz_model.setter
  31. def biz_model(self, value):
  32. self._biz_model = value
  33. @property
  34. def app_name(self):
  35. return self._app_name
  36. @app_name.setter
  37. def app_name(self, value):
  38. self._app_name = value
  39. @property
  40. def batch_no(self):
  41. return self._batch_no
  42. @batch_no.setter
  43. def batch_no(self, value):
  44. self._batch_no = value
  45. @property
  46. def business_license_no(self):
  47. return self._business_license_no
  48. @business_license_no.setter
  49. def business_license_no(self, value):
  50. self._business_license_no = value
  51. @property
  52. def date_limitation(self):
  53. return self._date_limitation
  54. @date_limitation.setter
  55. def date_limitation(self, value):
  56. self._date_limitation = value
  57. @property
  58. def long_term(self):
  59. return self._long_term
  60. @long_term.setter
  61. def long_term(self, value):
  62. self._long_term = value
  63. @property
  64. def mcc_code(self):
  65. return self._mcc_code
  66. @mcc_code.setter
  67. def mcc_code(self, value):
  68. self._mcc_code = value
  69. @property
  70. def app_demo(self):
  71. return self._app_demo
  72. @app_demo.setter
  73. def app_demo(self, value):
  74. if not isinstance(value, FileItem):
  75. return
  76. self._app_demo = value
  77. @property
  78. def business_license_auth_pic(self):
  79. return self._business_license_auth_pic
  80. @business_license_auth_pic.setter
  81. def business_license_auth_pic(self, value):
  82. if not isinstance(value, FileItem):
  83. return
  84. self._business_license_auth_pic = value
  85. @property
  86. def business_license_pic(self):
  87. return self._business_license_pic
  88. @business_license_pic.setter
  89. def business_license_pic(self, value):
  90. if not isinstance(value, FileItem):
  91. return
  92. self._business_license_pic = value
  93. @property
  94. def special_license_pic(self):
  95. return self._special_license_pic
  96. @special_license_pic.setter
  97. def special_license_pic(self, value):
  98. if not isinstance(value, FileItem):
  99. return
  100. self._special_license_pic = value
  101. @property
  102. def version(self):
  103. return self._version
  104. @version.setter
  105. def version(self, value):
  106. self._version = value
  107. @property
  108. def terminal_type(self):
  109. return self._terminal_type
  110. @terminal_type.setter
  111. def terminal_type(self, value):
  112. self._terminal_type = value
  113. @property
  114. def terminal_info(self):
  115. return self._terminal_info
  116. @terminal_info.setter
  117. def terminal_info(self, value):
  118. self._terminal_info = value
  119. @property
  120. def prod_code(self):
  121. return self._prod_code
  122. @prod_code.setter
  123. def prod_code(self, value):
  124. self._prod_code = value
  125. @property
  126. def notify_url(self):
  127. return self._notify_url
  128. @notify_url.setter
  129. def notify_url(self, value):
  130. self._notify_url = value
  131. @property
  132. def return_url(self):
  133. return self._return_url
  134. @return_url.setter
  135. def return_url(self, value):
  136. self._return_url = value
  137. @property
  138. def udf_params(self):
  139. return self._udf_params
  140. @udf_params.setter
  141. def udf_params(self, value):
  142. if not isinstance(value, dict):
  143. return
  144. self._udf_params = value
  145. @property
  146. def need_encrypt(self):
  147. return self._need_encrypt
  148. @need_encrypt.setter
  149. def need_encrypt(self, value):
  150. self._need_encrypt = value
  151. def add_other_text_param(self, key, value):
  152. if not self.udf_params:
  153. self.udf_params = dict()
  154. self.udf_params[key] = value
  155. def get_params(self):
  156. params = dict()
  157. params[P_METHOD] = 'alipay.open.agent.mobilepay.sign'
  158. params[P_VERSION] = self.version
  159. if self.biz_model:
  160. params[P_BIZ_CONTENT] = json.dumps(obj=self.biz_model.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  161. if self.app_name:
  162. if hasattr(self.app_name, 'to_alipay_dict'):
  163. params['app_name'] = json.dumps(obj=self.app_name.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  164. else:
  165. params['app_name'] = self.app_name
  166. if self.batch_no:
  167. if hasattr(self.batch_no, 'to_alipay_dict'):
  168. params['batch_no'] = json.dumps(obj=self.batch_no.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  169. else:
  170. params['batch_no'] = self.batch_no
  171. if self.business_license_no:
  172. if hasattr(self.business_license_no, 'to_alipay_dict'):
  173. params['business_license_no'] = json.dumps(obj=self.business_license_no.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  174. else:
  175. params['business_license_no'] = self.business_license_no
  176. if self.date_limitation:
  177. if hasattr(self.date_limitation, 'to_alipay_dict'):
  178. params['date_limitation'] = json.dumps(obj=self.date_limitation.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  179. else:
  180. params['date_limitation'] = self.date_limitation
  181. if self.long_term:
  182. if hasattr(self.long_term, 'to_alipay_dict'):
  183. params['long_term'] = json.dumps(obj=self.long_term.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  184. else:
  185. params['long_term'] = self.long_term
  186. if self.mcc_code:
  187. if hasattr(self.mcc_code, 'to_alipay_dict'):
  188. params['mcc_code'] = json.dumps(obj=self.mcc_code.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  189. else:
  190. params['mcc_code'] = self.mcc_code
  191. if self.terminal_type:
  192. params['terminal_type'] = self.terminal_type
  193. if self.terminal_info:
  194. params['terminal_info'] = self.terminal_info
  195. if self.prod_code:
  196. params['prod_code'] = self.prod_code
  197. if self.notify_url:
  198. params['notify_url'] = self.notify_url
  199. if self.return_url:
  200. params['return_url'] = self.return_url
  201. if self.udf_params:
  202. params.update(self.udf_params)
  203. return params
  204. def get_multipart_params(self):
  205. multipart_params = dict()
  206. if self.app_demo:
  207. multipart_params['app_demo'] = self.app_demo
  208. if self.business_license_auth_pic:
  209. multipart_params['business_license_auth_pic'] = self.business_license_auth_pic
  210. if self.business_license_pic:
  211. multipart_params['business_license_pic'] = self.business_license_pic
  212. if self.special_license_pic:
  213. multipart_params['special_license_pic'] = self.special_license_pic
  214. return multipart_params