MerchantCard.py 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import json
  4. from alipay.aop.api.constant.ParamConstants import *
  5. from alipay.aop.api.domain.CardFrontTextDTO import CardFrontTextDTO
  6. from alipay.aop.api.domain.MdCodeInfoDTO import MdCodeInfoDTO
  7. class MerchantCard(object):
  8. def __init__(self):
  9. self._balance = None
  10. self._biz_card_no = None
  11. self._external_card_no = None
  12. self._front_image_id = None
  13. self._front_text_list = None
  14. self._level = None
  15. self._mdcode_info = None
  16. self._open_date = None
  17. self._point = None
  18. self._template_id = None
  19. self._valid_date = None
  20. @property
  21. def balance(self):
  22. return self._balance
  23. @balance.setter
  24. def balance(self, value):
  25. self._balance = value
  26. @property
  27. def biz_card_no(self):
  28. return self._biz_card_no
  29. @biz_card_no.setter
  30. def biz_card_no(self, value):
  31. self._biz_card_no = value
  32. @property
  33. def external_card_no(self):
  34. return self._external_card_no
  35. @external_card_no.setter
  36. def external_card_no(self, value):
  37. self._external_card_no = value
  38. @property
  39. def front_image_id(self):
  40. return self._front_image_id
  41. @front_image_id.setter
  42. def front_image_id(self, value):
  43. self._front_image_id = value
  44. @property
  45. def front_text_list(self):
  46. return self._front_text_list
  47. @front_text_list.setter
  48. def front_text_list(self, value):
  49. if isinstance(value, list):
  50. self._front_text_list = list()
  51. for i in value:
  52. if isinstance(i, CardFrontTextDTO):
  53. self._front_text_list.append(i)
  54. else:
  55. self._front_text_list.append(CardFrontTextDTO.from_alipay_dict(i))
  56. @property
  57. def level(self):
  58. return self._level
  59. @level.setter
  60. def level(self, value):
  61. self._level = value
  62. @property
  63. def mdcode_info(self):
  64. return self._mdcode_info
  65. @mdcode_info.setter
  66. def mdcode_info(self, value):
  67. if isinstance(value, MdCodeInfoDTO):
  68. self._mdcode_info = value
  69. else:
  70. self._mdcode_info = MdCodeInfoDTO.from_alipay_dict(value)
  71. @property
  72. def open_date(self):
  73. return self._open_date
  74. @open_date.setter
  75. def open_date(self, value):
  76. self._open_date = value
  77. @property
  78. def point(self):
  79. return self._point
  80. @point.setter
  81. def point(self, value):
  82. self._point = value
  83. @property
  84. def template_id(self):
  85. return self._template_id
  86. @template_id.setter
  87. def template_id(self, value):
  88. self._template_id = value
  89. @property
  90. def valid_date(self):
  91. return self._valid_date
  92. @valid_date.setter
  93. def valid_date(self, value):
  94. self._valid_date = value
  95. def to_alipay_dict(self):
  96. params = dict()
  97. if self.balance:
  98. if hasattr(self.balance, 'to_alipay_dict'):
  99. params['balance'] = self.balance.to_alipay_dict()
  100. else:
  101. params['balance'] = self.balance
  102. if self.biz_card_no:
  103. if hasattr(self.biz_card_no, 'to_alipay_dict'):
  104. params['biz_card_no'] = self.biz_card_no.to_alipay_dict()
  105. else:
  106. params['biz_card_no'] = self.biz_card_no
  107. if self.external_card_no:
  108. if hasattr(self.external_card_no, 'to_alipay_dict'):
  109. params['external_card_no'] = self.external_card_no.to_alipay_dict()
  110. else:
  111. params['external_card_no'] = self.external_card_no
  112. if self.front_image_id:
  113. if hasattr(self.front_image_id, 'to_alipay_dict'):
  114. params['front_image_id'] = self.front_image_id.to_alipay_dict()
  115. else:
  116. params['front_image_id'] = self.front_image_id
  117. if self.front_text_list:
  118. if isinstance(self.front_text_list, list):
  119. for i in range(0, len(self.front_text_list)):
  120. element = self.front_text_list[i]
  121. if hasattr(element, 'to_alipay_dict'):
  122. self.front_text_list[i] = element.to_alipay_dict()
  123. if hasattr(self.front_text_list, 'to_alipay_dict'):
  124. params['front_text_list'] = self.front_text_list.to_alipay_dict()
  125. else:
  126. params['front_text_list'] = self.front_text_list
  127. if self.level:
  128. if hasattr(self.level, 'to_alipay_dict'):
  129. params['level'] = self.level.to_alipay_dict()
  130. else:
  131. params['level'] = self.level
  132. if self.mdcode_info:
  133. if hasattr(self.mdcode_info, 'to_alipay_dict'):
  134. params['mdcode_info'] = self.mdcode_info.to_alipay_dict()
  135. else:
  136. params['mdcode_info'] = self.mdcode_info
  137. if self.open_date:
  138. if hasattr(self.open_date, 'to_alipay_dict'):
  139. params['open_date'] = self.open_date.to_alipay_dict()
  140. else:
  141. params['open_date'] = self.open_date
  142. if self.point:
  143. if hasattr(self.point, 'to_alipay_dict'):
  144. params['point'] = self.point.to_alipay_dict()
  145. else:
  146. params['point'] = self.point
  147. if self.template_id:
  148. if hasattr(self.template_id, 'to_alipay_dict'):
  149. params['template_id'] = self.template_id.to_alipay_dict()
  150. else:
  151. params['template_id'] = self.template_id
  152. if self.valid_date:
  153. if hasattr(self.valid_date, 'to_alipay_dict'):
  154. params['valid_date'] = self.valid_date.to_alipay_dict()
  155. else:
  156. params['valid_date'] = self.valid_date
  157. return params
  158. @staticmethod
  159. def from_alipay_dict(d):
  160. if not d:
  161. return None
  162. o = MerchantCard()
  163. if 'balance' in d:
  164. o.balance = d['balance']
  165. if 'biz_card_no' in d:
  166. o.biz_card_no = d['biz_card_no']
  167. if 'external_card_no' in d:
  168. o.external_card_no = d['external_card_no']
  169. if 'front_image_id' in d:
  170. o.front_image_id = d['front_image_id']
  171. if 'front_text_list' in d:
  172. o.front_text_list = d['front_text_list']
  173. if 'level' in d:
  174. o.level = d['level']
  175. if 'mdcode_info' in d:
  176. o.mdcode_info = d['mdcode_info']
  177. if 'open_date' in d:
  178. o.open_date = d['open_date']
  179. if 'point' in d:
  180. o.point = d['point']
  181. if 'template_id' in d:
  182. o.template_id = d['template_id']
  183. if 'valid_date' in d:
  184. o.valid_date = d['valid_date']
  185. return o