MEquityUseRule.py 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  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.MTimeControlInfo import MTimeControlInfo
  6. from alipay.aop.api.domain.MItemInfo import MItemInfo
  7. from alipay.aop.api.domain.MTimeControlInfo import MTimeControlInfo
  8. class MEquityUseRule(object):
  9. def __init__(self):
  10. self._disabled_times = None
  11. self._min_cost_amount = None
  12. self._suit_item_list = None
  13. self._usaged_times = None
  14. @property
  15. def disabled_times(self):
  16. return self._disabled_times
  17. @disabled_times.setter
  18. def disabled_times(self, value):
  19. if isinstance(value, list):
  20. self._disabled_times = list()
  21. for i in value:
  22. if isinstance(i, MTimeControlInfo):
  23. self._disabled_times.append(i)
  24. else:
  25. self._disabled_times.append(MTimeControlInfo.from_alipay_dict(i))
  26. @property
  27. def min_cost_amount(self):
  28. return self._min_cost_amount
  29. @min_cost_amount.setter
  30. def min_cost_amount(self, value):
  31. self._min_cost_amount = value
  32. @property
  33. def suit_item_list(self):
  34. return self._suit_item_list
  35. @suit_item_list.setter
  36. def suit_item_list(self, value):
  37. if isinstance(value, list):
  38. self._suit_item_list = list()
  39. for i in value:
  40. if isinstance(i, MItemInfo):
  41. self._suit_item_list.append(i)
  42. else:
  43. self._suit_item_list.append(MItemInfo.from_alipay_dict(i))
  44. @property
  45. def usaged_times(self):
  46. return self._usaged_times
  47. @usaged_times.setter
  48. def usaged_times(self, value):
  49. if isinstance(value, list):
  50. self._usaged_times = list()
  51. for i in value:
  52. if isinstance(i, MTimeControlInfo):
  53. self._usaged_times.append(i)
  54. else:
  55. self._usaged_times.append(MTimeControlInfo.from_alipay_dict(i))
  56. def to_alipay_dict(self):
  57. params = dict()
  58. if self.disabled_times:
  59. if isinstance(self.disabled_times, list):
  60. for i in range(0, len(self.disabled_times)):
  61. element = self.disabled_times[i]
  62. if hasattr(element, 'to_alipay_dict'):
  63. self.disabled_times[i] = element.to_alipay_dict()
  64. if hasattr(self.disabled_times, 'to_alipay_dict'):
  65. params['disabled_times'] = self.disabled_times.to_alipay_dict()
  66. else:
  67. params['disabled_times'] = self.disabled_times
  68. if self.min_cost_amount:
  69. if hasattr(self.min_cost_amount, 'to_alipay_dict'):
  70. params['min_cost_amount'] = self.min_cost_amount.to_alipay_dict()
  71. else:
  72. params['min_cost_amount'] = self.min_cost_amount
  73. if self.suit_item_list:
  74. if isinstance(self.suit_item_list, list):
  75. for i in range(0, len(self.suit_item_list)):
  76. element = self.suit_item_list[i]
  77. if hasattr(element, 'to_alipay_dict'):
  78. self.suit_item_list[i] = element.to_alipay_dict()
  79. if hasattr(self.suit_item_list, 'to_alipay_dict'):
  80. params['suit_item_list'] = self.suit_item_list.to_alipay_dict()
  81. else:
  82. params['suit_item_list'] = self.suit_item_list
  83. if self.usaged_times:
  84. if isinstance(self.usaged_times, list):
  85. for i in range(0, len(self.usaged_times)):
  86. element = self.usaged_times[i]
  87. if hasattr(element, 'to_alipay_dict'):
  88. self.usaged_times[i] = element.to_alipay_dict()
  89. if hasattr(self.usaged_times, 'to_alipay_dict'):
  90. params['usaged_times'] = self.usaged_times.to_alipay_dict()
  91. else:
  92. params['usaged_times'] = self.usaged_times
  93. return params
  94. @staticmethod
  95. def from_alipay_dict(d):
  96. if not d:
  97. return None
  98. o = MEquityUseRule()
  99. if 'disabled_times' in d:
  100. o.disabled_times = d['disabled_times']
  101. if 'min_cost_amount' in d:
  102. o.min_cost_amount = d['min_cost_amount']
  103. if 'suit_item_list' in d:
  104. o.suit_item_list = d['suit_item_list']
  105. if 'usaged_times' in d:
  106. o.usaged_times = d['usaged_times']
  107. return o