AlipayEbppProdmodeAgreementUploadRequest.py 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  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 AlipayEbppProdmodeAgreementUploadRequest(object):
  7. def __init__(self, biz_model=None):
  8. self._biz_model = biz_model
  9. self._operator_name = None
  10. self._task_id = None
  11. self._upload_file = None
  12. self._version = "1.0"
  13. self._terminal_type = None
  14. self._terminal_info = None
  15. self._prod_code = None
  16. self._notify_url = None
  17. self._return_url = None
  18. self._udf_params = None
  19. self._need_encrypt = False
  20. @property
  21. def biz_model(self):
  22. return self._biz_model
  23. @biz_model.setter
  24. def biz_model(self, value):
  25. self._biz_model = value
  26. @property
  27. def operator_name(self):
  28. return self._operator_name
  29. @operator_name.setter
  30. def operator_name(self, value):
  31. self._operator_name = value
  32. @property
  33. def task_id(self):
  34. return self._task_id
  35. @task_id.setter
  36. def task_id(self, value):
  37. self._task_id = value
  38. @property
  39. def upload_file(self):
  40. return self._upload_file
  41. @upload_file.setter
  42. def upload_file(self, value):
  43. if not isinstance(value, FileItem):
  44. return
  45. self._upload_file = value
  46. @property
  47. def version(self):
  48. return self._version
  49. @version.setter
  50. def version(self, value):
  51. self._version = value
  52. @property
  53. def terminal_type(self):
  54. return self._terminal_type
  55. @terminal_type.setter
  56. def terminal_type(self, value):
  57. self._terminal_type = value
  58. @property
  59. def terminal_info(self):
  60. return self._terminal_info
  61. @terminal_info.setter
  62. def terminal_info(self, value):
  63. self._terminal_info = value
  64. @property
  65. def prod_code(self):
  66. return self._prod_code
  67. @prod_code.setter
  68. def prod_code(self, value):
  69. self._prod_code = value
  70. @property
  71. def notify_url(self):
  72. return self._notify_url
  73. @notify_url.setter
  74. def notify_url(self, value):
  75. self._notify_url = value
  76. @property
  77. def return_url(self):
  78. return self._return_url
  79. @return_url.setter
  80. def return_url(self, value):
  81. self._return_url = value
  82. @property
  83. def udf_params(self):
  84. return self._udf_params
  85. @udf_params.setter
  86. def udf_params(self, value):
  87. if not isinstance(value, dict):
  88. return
  89. self._udf_params = value
  90. @property
  91. def need_encrypt(self):
  92. return self._need_encrypt
  93. @need_encrypt.setter
  94. def need_encrypt(self, value):
  95. self._need_encrypt = value
  96. def add_other_text_param(self, key, value):
  97. if not self.udf_params:
  98. self.udf_params = dict()
  99. self.udf_params[key] = value
  100. def get_params(self):
  101. params = dict()
  102. params[P_METHOD] = 'alipay.ebpp.prodmode.agreement.upload'
  103. params[P_VERSION] = self.version
  104. if self.biz_model:
  105. params[P_BIZ_CONTENT] = json.dumps(obj=self.biz_model.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  106. if self.operator_name:
  107. if hasattr(self.operator_name, 'to_alipay_dict'):
  108. params['operator_name'] = json.dumps(obj=self.operator_name.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  109. else:
  110. params['operator_name'] = self.operator_name
  111. if self.task_id:
  112. if hasattr(self.task_id, 'to_alipay_dict'):
  113. params['task_id'] = json.dumps(obj=self.task_id.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':'))
  114. else:
  115. params['task_id'] = self.task_id
  116. if self.terminal_type:
  117. params['terminal_type'] = self.terminal_type
  118. if self.terminal_info:
  119. params['terminal_info'] = self.terminal_info
  120. if self.prod_code:
  121. params['prod_code'] = self.prod_code
  122. if self.notify_url:
  123. params['notify_url'] = self.notify_url
  124. if self.return_url:
  125. params['return_url'] = self.return_url
  126. if self.udf_params:
  127. params.update(self.udf_params)
  128. return params
  129. def get_multipart_params(self):
  130. multipart_params = dict()
  131. if self.upload_file:
  132. multipart_params['upload_file'] = self.upload_file
  133. return multipart_params