AlipayOpenAgentMiniCreateRequest.py 7.5 KB

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