AntMerchantExpandAttachmentUploadSyncRequest.py 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256
  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 AntMerchantExpandAttachmentUploadSyncRequest(object):
  7. def __init__(self, biz_model=None):
  8. self._biz_model = biz_model
  9. self._biz_type = None
  10. self._ext_info = None
  11. self._file_format = None
  12. self._file_url = None
  13. self._memo = None
  14. self._out_biz_no = None
  15. self._part_no = None
  16. self._sub_biz_type = None
  17. self._sub_out_biz_no = None
  18. self._file_content = 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 biz_type(self):
  35. return self._biz_type
  36. @biz_type.setter
  37. def biz_type(self, value):
  38. self._biz_type = value
  39. @property
  40. def ext_info(self):
  41. return self._ext_info
  42. @ext_info.setter
  43. def ext_info(self, value):
  44. self._ext_info = value
  45. @property
  46. def file_format(self):
  47. return self._file_format
  48. @file_format.setter
  49. def file_format(self, value):
  50. self._file_format = value
  51. @property
  52. def file_url(self):
  53. return self._file_url
  54. @file_url.setter
  55. def file_url(self, value):
  56. self._file_url = value
  57. @property
  58. def memo(self):
  59. return self._memo
  60. @memo.setter
  61. def memo(self, value):
  62. self._memo = value
  63. @property
  64. def out_biz_no(self):
  65. return self._out_biz_no
  66. @out_biz_no.setter
  67. def out_biz_no(self, value):
  68. self._out_biz_no = value
  69. @property
  70. def part_no(self):
  71. return self._part_no
  72. @part_no.setter
  73. def part_no(self, value):
  74. self._part_no = value
  75. @property
  76. def sub_biz_type(self):
  77. return self._sub_biz_type
  78. @sub_biz_type.setter
  79. def sub_biz_type(self, value):
  80. self._sub_biz_type = value
  81. @property
  82. def sub_out_biz_no(self):
  83. return self._sub_out_biz_no
  84. @sub_out_biz_no.setter
  85. def sub_out_biz_no(self, value):
  86. self._sub_out_biz_no = value
  87. @property
  88. def file_content(self):
  89. return self._file_content
  90. @file_content.setter
  91. def file_content(self, value):
  92. if not isinstance(value, FileItem):
  93. return
  94. self._file_content = value
  95. @property
  96. def version(self):
  97. return self._version
  98. @version.setter
  99. def version(self, value):
  100. self._version = value
  101. @property
  102. def terminal_type(self):
  103. return self._terminal_type
  104. @terminal_type.setter
  105. def terminal_type(self, value):
  106. self._terminal_type = value
  107. @property
  108. def terminal_info(self):
  109. return self._terminal_info
  110. @terminal_info.setter
  111. def terminal_info(self, value):
  112. self._terminal_info = value
  113. @property
  114. def prod_code(self):
  115. return self._prod_code
  116. @prod_code.setter
  117. def prod_code(self, value):
  118. self._prod_code = value
  119. @property
  120. def notify_url(self):
  121. return self._notify_url
  122. @notify_url.setter
  123. def notify_url(self, value):
  124. self._notify_url = value
  125. @property
  126. def return_url(self):
  127. return self._return_url
  128. @return_url.setter
  129. def return_url(self, value):
  130. self._return_url = value
  131. @property
  132. def udf_params(self):
  133. return self._udf_params
  134. @udf_params.setter
  135. def udf_params(self, value):
  136. if not isinstance(value, dict):
  137. return
  138. self._udf_params = value
  139. @property
  140. def need_encrypt(self):
  141. return self._need_encrypt
  142. @need_encrypt.setter
  143. def need_encrypt(self, value):
  144. self._need_encrypt = value
  145. def add_other_text_param(self, key, value):
  146. if not self.udf_params:
  147. self.udf_params = dict()
  148. self.udf_params[key] = value
  149. def get_params(self):
  150. params = dict()
  151. params[P_METHOD] = 'ant.merchant.expand.attachment.upload.sync'
  152. params[P_VERSION] = self.version
  153. if self.biz_model:
  154. params[P_BIZ_CONTENT] = json.dumps(obj=self.biz_model.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  155. if self.biz_type:
  156. if hasattr(self.biz_type, 'to_alipay_dict'):
  157. params['biz_type'] = json.dumps(obj=self.biz_type.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  158. else:
  159. params['biz_type'] = self.biz_type
  160. if self.ext_info:
  161. if hasattr(self.ext_info, 'to_alipay_dict'):
  162. params['ext_info'] = json.dumps(obj=self.ext_info.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  163. else:
  164. params['ext_info'] = self.ext_info
  165. if self.file_format:
  166. if hasattr(self.file_format, 'to_alipay_dict'):
  167. params['file_format'] = json.dumps(obj=self.file_format.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  168. else:
  169. params['file_format'] = self.file_format
  170. if self.file_url:
  171. if hasattr(self.file_url, 'to_alipay_dict'):
  172. params['file_url'] = json.dumps(obj=self.file_url.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  173. else:
  174. params['file_url'] = self.file_url
  175. if self.memo:
  176. if hasattr(self.memo, 'to_alipay_dict'):
  177. params['memo'] = json.dumps(obj=self.memo.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  178. else:
  179. params['memo'] = self.memo
  180. if self.out_biz_no:
  181. if hasattr(self.out_biz_no, 'to_alipay_dict'):
  182. params['out_biz_no'] = json.dumps(obj=self.out_biz_no.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  183. else:
  184. params['out_biz_no'] = self.out_biz_no
  185. if self.part_no:
  186. if hasattr(self.part_no, 'to_alipay_dict'):
  187. params['part_no'] = json.dumps(obj=self.part_no.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  188. else:
  189. params['part_no'] = self.part_no
  190. if self.sub_biz_type:
  191. if hasattr(self.sub_biz_type, 'to_alipay_dict'):
  192. params['sub_biz_type'] = json.dumps(obj=self.sub_biz_type.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  193. else:
  194. params['sub_biz_type'] = self.sub_biz_type
  195. if self.sub_out_biz_no:
  196. if hasattr(self.sub_out_biz_no, 'to_alipay_dict'):
  197. params['sub_out_biz_no'] = json.dumps(obj=self.sub_out_biz_no.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  198. else:
  199. params['sub_out_biz_no'] = self.sub_out_biz_no
  200. if self.terminal_type:
  201. params['terminal_type'] = self.terminal_type
  202. if self.terminal_info:
  203. params['terminal_info'] = self.terminal_info
  204. if self.prod_code:
  205. params['prod_code'] = self.prod_code
  206. if self.notify_url:
  207. params['notify_url'] = self.notify_url
  208. if self.return_url:
  209. params['return_url'] = self.return_url
  210. if self.udf_params:
  211. params.update(self.udf_params)
  212. return params
  213. def get_multipart_params(self):
  214. multipart_params = dict()
  215. if self.file_content:
  216. multipart_params['file_content'] = self.file_content
  217. return multipart_params