ConstraintInfo.py 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import json
  4. from alipay.aop.api.constant.ParamConstants import *
  5. class ConstraintInfo(object):
  6. def __init__(self):
  7. self._cash_pool_id = None
  8. self._crowd_group_id = None
  9. self._crowd_restriction = None
  10. self._crowd_restriction_value = None
  11. self._item_ids = None
  12. self._min_cost = None
  13. self._subsidy_percent = None
  14. self._suit_shops = None
  15. self._user_win_count = None
  16. self._user_win_frequency = None
  17. @property
  18. def cash_pool_id(self):
  19. return self._cash_pool_id
  20. @cash_pool_id.setter
  21. def cash_pool_id(self, value):
  22. self._cash_pool_id = value
  23. @property
  24. def crowd_group_id(self):
  25. return self._crowd_group_id
  26. @crowd_group_id.setter
  27. def crowd_group_id(self, value):
  28. self._crowd_group_id = value
  29. @property
  30. def crowd_restriction(self):
  31. return self._crowd_restriction
  32. @crowd_restriction.setter
  33. def crowd_restriction(self, value):
  34. self._crowd_restriction = value
  35. @property
  36. def crowd_restriction_value(self):
  37. return self._crowd_restriction_value
  38. @crowd_restriction_value.setter
  39. def crowd_restriction_value(self, value):
  40. self._crowd_restriction_value = value
  41. @property
  42. def item_ids(self):
  43. return self._item_ids
  44. @item_ids.setter
  45. def item_ids(self, value):
  46. if isinstance(value, list):
  47. self._item_ids = list()
  48. for i in value:
  49. self._item_ids.append(i)
  50. @property
  51. def min_cost(self):
  52. return self._min_cost
  53. @min_cost.setter
  54. def min_cost(self, value):
  55. self._min_cost = value
  56. @property
  57. def subsidy_percent(self):
  58. return self._subsidy_percent
  59. @subsidy_percent.setter
  60. def subsidy_percent(self, value):
  61. self._subsidy_percent = value
  62. @property
  63. def suit_shops(self):
  64. return self._suit_shops
  65. @suit_shops.setter
  66. def suit_shops(self, value):
  67. if isinstance(value, list):
  68. self._suit_shops = list()
  69. for i in value:
  70. self._suit_shops.append(i)
  71. @property
  72. def user_win_count(self):
  73. return self._user_win_count
  74. @user_win_count.setter
  75. def user_win_count(self, value):
  76. self._user_win_count = value
  77. @property
  78. def user_win_frequency(self):
  79. return self._user_win_frequency
  80. @user_win_frequency.setter
  81. def user_win_frequency(self, value):
  82. self._user_win_frequency = value
  83. def to_alipay_dict(self):
  84. params = dict()
  85. if self.cash_pool_id:
  86. if hasattr(self.cash_pool_id, 'to_alipay_dict'):
  87. params['cash_pool_id'] = self.cash_pool_id.to_alipay_dict()
  88. else:
  89. params['cash_pool_id'] = self.cash_pool_id
  90. if self.crowd_group_id:
  91. if hasattr(self.crowd_group_id, 'to_alipay_dict'):
  92. params['crowd_group_id'] = self.crowd_group_id.to_alipay_dict()
  93. else:
  94. params['crowd_group_id'] = self.crowd_group_id
  95. if self.crowd_restriction:
  96. if hasattr(self.crowd_restriction, 'to_alipay_dict'):
  97. params['crowd_restriction'] = self.crowd_restriction.to_alipay_dict()
  98. else:
  99. params['crowd_restriction'] = self.crowd_restriction
  100. if self.crowd_restriction_value:
  101. if hasattr(self.crowd_restriction_value, 'to_alipay_dict'):
  102. params['crowd_restriction_value'] = self.crowd_restriction_value.to_alipay_dict()
  103. else:
  104. params['crowd_restriction_value'] = self.crowd_restriction_value
  105. if self.item_ids:
  106. if isinstance(self.item_ids, list):
  107. for i in range(0, len(self.item_ids)):
  108. element = self.item_ids[i]
  109. if hasattr(element, 'to_alipay_dict'):
  110. self.item_ids[i] = element.to_alipay_dict()
  111. if hasattr(self.item_ids, 'to_alipay_dict'):
  112. params['item_ids'] = self.item_ids.to_alipay_dict()
  113. else:
  114. params['item_ids'] = self.item_ids
  115. if self.min_cost:
  116. if hasattr(self.min_cost, 'to_alipay_dict'):
  117. params['min_cost'] = self.min_cost.to_alipay_dict()
  118. else:
  119. params['min_cost'] = self.min_cost
  120. if self.subsidy_percent:
  121. if hasattr(self.subsidy_percent, 'to_alipay_dict'):
  122. params['subsidy_percent'] = self.subsidy_percent.to_alipay_dict()
  123. else:
  124. params['subsidy_percent'] = self.subsidy_percent
  125. if self.suit_shops:
  126. if isinstance(self.suit_shops, list):
  127. for i in range(0, len(self.suit_shops)):
  128. element = self.suit_shops[i]
  129. if hasattr(element, 'to_alipay_dict'):
  130. self.suit_shops[i] = element.to_alipay_dict()
  131. if hasattr(self.suit_shops, 'to_alipay_dict'):
  132. params['suit_shops'] = self.suit_shops.to_alipay_dict()
  133. else:
  134. params['suit_shops'] = self.suit_shops
  135. if self.user_win_count:
  136. if hasattr(self.user_win_count, 'to_alipay_dict'):
  137. params['user_win_count'] = self.user_win_count.to_alipay_dict()
  138. else:
  139. params['user_win_count'] = self.user_win_count
  140. if self.user_win_frequency:
  141. if hasattr(self.user_win_frequency, 'to_alipay_dict'):
  142. params['user_win_frequency'] = self.user_win_frequency.to_alipay_dict()
  143. else:
  144. params['user_win_frequency'] = self.user_win_frequency
  145. return params
  146. @staticmethod
  147. def from_alipay_dict(d):
  148. if not d:
  149. return None
  150. o = ConstraintInfo()
  151. if 'cash_pool_id' in d:
  152. o.cash_pool_id = d['cash_pool_id']
  153. if 'crowd_group_id' in d:
  154. o.crowd_group_id = d['crowd_group_id']
  155. if 'crowd_restriction' in d:
  156. o.crowd_restriction = d['crowd_restriction']
  157. if 'crowd_restriction_value' in d:
  158. o.crowd_restriction_value = d['crowd_restriction_value']
  159. if 'item_ids' in d:
  160. o.item_ids = d['item_ids']
  161. if 'min_cost' in d:
  162. o.min_cost = d['min_cost']
  163. if 'subsidy_percent' in d:
  164. o.subsidy_percent = d['subsidy_percent']
  165. if 'suit_shops' in d:
  166. o.suit_shops = d['suit_shops']
  167. if 'user_win_count' in d:
  168. o.user_win_count = d['user_win_count']
  169. if 'user_win_frequency' in d:
  170. o.user_win_frequency = d['user_win_frequency']
  171. return o