AdGroup.py 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  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.Position import Position
  6. class AdGroup(object):
  7. def __init__(self):
  8. self._ad_user_id = None
  9. self._crowd_condition = None
  10. self._group_id = None
  11. self._group_name = None
  12. self._plan_id = None
  13. self._position_condition = None
  14. self._quantity = None
  15. @property
  16. def ad_user_id(self):
  17. return self._ad_user_id
  18. @ad_user_id.setter
  19. def ad_user_id(self, value):
  20. self._ad_user_id = value
  21. @property
  22. def crowd_condition(self):
  23. return self._crowd_condition
  24. @crowd_condition.setter
  25. def crowd_condition(self, value):
  26. self._crowd_condition = value
  27. @property
  28. def group_id(self):
  29. return self._group_id
  30. @group_id.setter
  31. def group_id(self, value):
  32. self._group_id = value
  33. @property
  34. def group_name(self):
  35. return self._group_name
  36. @group_name.setter
  37. def group_name(self, value):
  38. self._group_name = value
  39. @property
  40. def plan_id(self):
  41. return self._plan_id
  42. @plan_id.setter
  43. def plan_id(self, value):
  44. self._plan_id = value
  45. @property
  46. def position_condition(self):
  47. return self._position_condition
  48. @position_condition.setter
  49. def position_condition(self, value):
  50. if isinstance(value, list):
  51. self._position_condition = list()
  52. for i in value:
  53. if isinstance(i, Position):
  54. self._position_condition.append(i)
  55. else:
  56. self._position_condition.append(Position.from_alipay_dict(i))
  57. @property
  58. def quantity(self):
  59. return self._quantity
  60. @quantity.setter
  61. def quantity(self, value):
  62. self._quantity = value
  63. def to_alipay_dict(self):
  64. params = dict()
  65. if self.ad_user_id:
  66. if hasattr(self.ad_user_id, 'to_alipay_dict'):
  67. params['ad_user_id'] = self.ad_user_id.to_alipay_dict()
  68. else:
  69. params['ad_user_id'] = self.ad_user_id
  70. if self.crowd_condition:
  71. if hasattr(self.crowd_condition, 'to_alipay_dict'):
  72. params['crowd_condition'] = self.crowd_condition.to_alipay_dict()
  73. else:
  74. params['crowd_condition'] = self.crowd_condition
  75. if self.group_id:
  76. if hasattr(self.group_id, 'to_alipay_dict'):
  77. params['group_id'] = self.group_id.to_alipay_dict()
  78. else:
  79. params['group_id'] = self.group_id
  80. if self.group_name:
  81. if hasattr(self.group_name, 'to_alipay_dict'):
  82. params['group_name'] = self.group_name.to_alipay_dict()
  83. else:
  84. params['group_name'] = self.group_name
  85. if self.plan_id:
  86. if hasattr(self.plan_id, 'to_alipay_dict'):
  87. params['plan_id'] = self.plan_id.to_alipay_dict()
  88. else:
  89. params['plan_id'] = self.plan_id
  90. if self.position_condition:
  91. if isinstance(self.position_condition, list):
  92. for i in range(0, len(self.position_condition)):
  93. element = self.position_condition[i]
  94. if hasattr(element, 'to_alipay_dict'):
  95. self.position_condition[i] = element.to_alipay_dict()
  96. if hasattr(self.position_condition, 'to_alipay_dict'):
  97. params['position_condition'] = self.position_condition.to_alipay_dict()
  98. else:
  99. params['position_condition'] = self.position_condition
  100. if self.quantity:
  101. if hasattr(self.quantity, 'to_alipay_dict'):
  102. params['quantity'] = self.quantity.to_alipay_dict()
  103. else:
  104. params['quantity'] = self.quantity
  105. return params
  106. @staticmethod
  107. def from_alipay_dict(d):
  108. if not d:
  109. return None
  110. o = AdGroup()
  111. if 'ad_user_id' in d:
  112. o.ad_user_id = d['ad_user_id']
  113. if 'crowd_condition' in d:
  114. o.crowd_condition = d['crowd_condition']
  115. if 'group_id' in d:
  116. o.group_id = d['group_id']
  117. if 'group_name' in d:
  118. o.group_name = d['group_name']
  119. if 'plan_id' in d:
  120. o.plan_id = d['plan_id']
  121. if 'position_condition' in d:
  122. o.position_condition = d['position_condition']
  123. if 'quantity' in d:
  124. o.quantity = d['quantity']
  125. return o