KoubeiTradeVoucherItemTemplete.py 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  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.AvailableTimeInfo import AvailableTimeInfo
  6. from alipay.aop.api.domain.KoubeiItemDescription import KoubeiItemDescription
  7. from alipay.aop.api.domain.UnAvailableTimeInfo import UnAvailableTimeInfo
  8. class KoubeiTradeVoucherItemTemplete(object):
  9. def __init__(self):
  10. self._available_time_info_list = None
  11. self._buyer_notes = None
  12. self._support_book = None
  13. self._un_available_time_info_list = None
  14. self._validity_period = None
  15. self._validity_period_range_from = None
  16. self._validity_period_range_to = None
  17. self._validity_period_type = None
  18. self._verify_enable_times = None
  19. self._verify_frequency = None
  20. @property
  21. def available_time_info_list(self):
  22. return self._available_time_info_list
  23. @available_time_info_list.setter
  24. def available_time_info_list(self, value):
  25. if isinstance(value, list):
  26. self._available_time_info_list = list()
  27. for i in value:
  28. if isinstance(i, AvailableTimeInfo):
  29. self._available_time_info_list.append(i)
  30. else:
  31. self._available_time_info_list.append(AvailableTimeInfo.from_alipay_dict(i))
  32. @property
  33. def buyer_notes(self):
  34. return self._buyer_notes
  35. @buyer_notes.setter
  36. def buyer_notes(self, value):
  37. if isinstance(value, list):
  38. self._buyer_notes = list()
  39. for i in value:
  40. if isinstance(i, KoubeiItemDescription):
  41. self._buyer_notes.append(i)
  42. else:
  43. self._buyer_notes.append(KoubeiItemDescription.from_alipay_dict(i))
  44. @property
  45. def support_book(self):
  46. return self._support_book
  47. @support_book.setter
  48. def support_book(self, value):
  49. self._support_book = value
  50. @property
  51. def un_available_time_info_list(self):
  52. return self._un_available_time_info_list
  53. @un_available_time_info_list.setter
  54. def un_available_time_info_list(self, value):
  55. if isinstance(value, list):
  56. self._un_available_time_info_list = list()
  57. for i in value:
  58. if isinstance(i, UnAvailableTimeInfo):
  59. self._un_available_time_info_list.append(i)
  60. else:
  61. self._un_available_time_info_list.append(UnAvailableTimeInfo.from_alipay_dict(i))
  62. @property
  63. def validity_period(self):
  64. return self._validity_period
  65. @validity_period.setter
  66. def validity_period(self, value):
  67. self._validity_period = value
  68. @property
  69. def validity_period_range_from(self):
  70. return self._validity_period_range_from
  71. @validity_period_range_from.setter
  72. def validity_period_range_from(self, value):
  73. self._validity_period_range_from = value
  74. @property
  75. def validity_period_range_to(self):
  76. return self._validity_period_range_to
  77. @validity_period_range_to.setter
  78. def validity_period_range_to(self, value):
  79. self._validity_period_range_to = value
  80. @property
  81. def validity_period_type(self):
  82. return self._validity_period_type
  83. @validity_period_type.setter
  84. def validity_period_type(self, value):
  85. self._validity_period_type = value
  86. @property
  87. def verify_enable_times(self):
  88. return self._verify_enable_times
  89. @verify_enable_times.setter
  90. def verify_enable_times(self, value):
  91. self._verify_enable_times = value
  92. @property
  93. def verify_frequency(self):
  94. return self._verify_frequency
  95. @verify_frequency.setter
  96. def verify_frequency(self, value):
  97. self._verify_frequency = value
  98. def to_alipay_dict(self):
  99. params = dict()
  100. if self.available_time_info_list:
  101. if isinstance(self.available_time_info_list, list):
  102. for i in range(0, len(self.available_time_info_list)):
  103. element = self.available_time_info_list[i]
  104. if hasattr(element, 'to_alipay_dict'):
  105. self.available_time_info_list[i] = element.to_alipay_dict()
  106. if hasattr(self.available_time_info_list, 'to_alipay_dict'):
  107. params['available_time_info_list'] = self.available_time_info_list.to_alipay_dict()
  108. else:
  109. params['available_time_info_list'] = self.available_time_info_list
  110. if self.buyer_notes:
  111. if isinstance(self.buyer_notes, list):
  112. for i in range(0, len(self.buyer_notes)):
  113. element = self.buyer_notes[i]
  114. if hasattr(element, 'to_alipay_dict'):
  115. self.buyer_notes[i] = element.to_alipay_dict()
  116. if hasattr(self.buyer_notes, 'to_alipay_dict'):
  117. params['buyer_notes'] = self.buyer_notes.to_alipay_dict()
  118. else:
  119. params['buyer_notes'] = self.buyer_notes
  120. if self.support_book:
  121. if hasattr(self.support_book, 'to_alipay_dict'):
  122. params['support_book'] = self.support_book.to_alipay_dict()
  123. else:
  124. params['support_book'] = self.support_book
  125. if self.un_available_time_info_list:
  126. if isinstance(self.un_available_time_info_list, list):
  127. for i in range(0, len(self.un_available_time_info_list)):
  128. element = self.un_available_time_info_list[i]
  129. if hasattr(element, 'to_alipay_dict'):
  130. self.un_available_time_info_list[i] = element.to_alipay_dict()
  131. if hasattr(self.un_available_time_info_list, 'to_alipay_dict'):
  132. params['un_available_time_info_list'] = self.un_available_time_info_list.to_alipay_dict()
  133. else:
  134. params['un_available_time_info_list'] = self.un_available_time_info_list
  135. if self.validity_period:
  136. if hasattr(self.validity_period, 'to_alipay_dict'):
  137. params['validity_period'] = self.validity_period.to_alipay_dict()
  138. else:
  139. params['validity_period'] = self.validity_period
  140. if self.validity_period_range_from:
  141. if hasattr(self.validity_period_range_from, 'to_alipay_dict'):
  142. params['validity_period_range_from'] = self.validity_period_range_from.to_alipay_dict()
  143. else:
  144. params['validity_period_range_from'] = self.validity_period_range_from
  145. if self.validity_period_range_to:
  146. if hasattr(self.validity_period_range_to, 'to_alipay_dict'):
  147. params['validity_period_range_to'] = self.validity_period_range_to.to_alipay_dict()
  148. else:
  149. params['validity_period_range_to'] = self.validity_period_range_to
  150. if self.validity_period_type:
  151. if hasattr(self.validity_period_type, 'to_alipay_dict'):
  152. params['validity_period_type'] = self.validity_period_type.to_alipay_dict()
  153. else:
  154. params['validity_period_type'] = self.validity_period_type
  155. if self.verify_enable_times:
  156. if hasattr(self.verify_enable_times, 'to_alipay_dict'):
  157. params['verify_enable_times'] = self.verify_enable_times.to_alipay_dict()
  158. else:
  159. params['verify_enable_times'] = self.verify_enable_times
  160. if self.verify_frequency:
  161. if hasattr(self.verify_frequency, 'to_alipay_dict'):
  162. params['verify_frequency'] = self.verify_frequency.to_alipay_dict()
  163. else:
  164. params['verify_frequency'] = self.verify_frequency
  165. return params
  166. @staticmethod
  167. def from_alipay_dict(d):
  168. if not d:
  169. return None
  170. o = KoubeiTradeVoucherItemTemplete()
  171. if 'available_time_info_list' in d:
  172. o.available_time_info_list = d['available_time_info_list']
  173. if 'buyer_notes' in d:
  174. o.buyer_notes = d['buyer_notes']
  175. if 'support_book' in d:
  176. o.support_book = d['support_book']
  177. if 'un_available_time_info_list' in d:
  178. o.un_available_time_info_list = d['un_available_time_info_list']
  179. if 'validity_period' in d:
  180. o.validity_period = d['validity_period']
  181. if 'validity_period_range_from' in d:
  182. o.validity_period_range_from = d['validity_period_range_from']
  183. if 'validity_period_range_to' in d:
  184. o.validity_period_range_to = d['validity_period_range_to']
  185. if 'validity_period_type' in d:
  186. o.validity_period_type = d['validity_period_type']
  187. if 'verify_enable_times' in d:
  188. o.verify_enable_times = d['verify_enable_times']
  189. if 'verify_frequency' in d:
  190. o.verify_frequency = d['verify_frequency']
  191. return o