IntelligentPromo.py 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414
  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.PromoOperatorInfo import PromoOperatorInfo
  6. from alipay.aop.api.domain.IntelligentPromoEffect import IntelligentPromoEffect
  7. from alipay.aop.api.domain.InteligentMerchantPromo import InteligentMerchantPromo
  8. from alipay.aop.api.domain.PromoOperatorInfo import PromoOperatorInfo
  9. from alipay.aop.api.domain.IntelligentPromoDetail import IntelligentPromoDetail
  10. class IntelligentPromo(object):
  11. def __init__(self):
  12. self._allow_auto_delay = None
  13. self._audit_status = None
  14. self._create_request_no = None
  15. self._creator_info = None
  16. self._desc = None
  17. self._ext_info = None
  18. self._forecast_effect = None
  19. self._gmt_closed = None
  20. self._gmt_enabled = None
  21. self._gmt_end = None
  22. self._gmt_start = None
  23. self._merchant_promos = None
  24. self._name = None
  25. self._owner_info = None
  26. self._parent_promo_id = None
  27. self._plan_id = None
  28. self._promo_id = None
  29. self._promos = None
  30. self._status = None
  31. self._sub_promo_ids = None
  32. self._sub_status = None
  33. self._template_id = None
  34. self._type = None
  35. @property
  36. def allow_auto_delay(self):
  37. return self._allow_auto_delay
  38. @allow_auto_delay.setter
  39. def allow_auto_delay(self, value):
  40. self._allow_auto_delay = value
  41. @property
  42. def audit_status(self):
  43. return self._audit_status
  44. @audit_status.setter
  45. def audit_status(self, value):
  46. self._audit_status = value
  47. @property
  48. def create_request_no(self):
  49. return self._create_request_no
  50. @create_request_no.setter
  51. def create_request_no(self, value):
  52. self._create_request_no = value
  53. @property
  54. def creator_info(self):
  55. return self._creator_info
  56. @creator_info.setter
  57. def creator_info(self, value):
  58. if isinstance(value, PromoOperatorInfo):
  59. self._creator_info = value
  60. else:
  61. self._creator_info = PromoOperatorInfo.from_alipay_dict(value)
  62. @property
  63. def desc(self):
  64. return self._desc
  65. @desc.setter
  66. def desc(self, value):
  67. self._desc = value
  68. @property
  69. def ext_info(self):
  70. return self._ext_info
  71. @ext_info.setter
  72. def ext_info(self, value):
  73. self._ext_info = value
  74. @property
  75. def forecast_effect(self):
  76. return self._forecast_effect
  77. @forecast_effect.setter
  78. def forecast_effect(self, value):
  79. if isinstance(value, IntelligentPromoEffect):
  80. self._forecast_effect = value
  81. else:
  82. self._forecast_effect = IntelligentPromoEffect.from_alipay_dict(value)
  83. @property
  84. def gmt_closed(self):
  85. return self._gmt_closed
  86. @gmt_closed.setter
  87. def gmt_closed(self, value):
  88. self._gmt_closed = value
  89. @property
  90. def gmt_enabled(self):
  91. return self._gmt_enabled
  92. @gmt_enabled.setter
  93. def gmt_enabled(self, value):
  94. self._gmt_enabled = value
  95. @property
  96. def gmt_end(self):
  97. return self._gmt_end
  98. @gmt_end.setter
  99. def gmt_end(self, value):
  100. self._gmt_end = value
  101. @property
  102. def gmt_start(self):
  103. return self._gmt_start
  104. @gmt_start.setter
  105. def gmt_start(self, value):
  106. self._gmt_start = value
  107. @property
  108. def merchant_promos(self):
  109. return self._merchant_promos
  110. @merchant_promos.setter
  111. def merchant_promos(self, value):
  112. if isinstance(value, list):
  113. self._merchant_promos = list()
  114. for i in value:
  115. if isinstance(i, InteligentMerchantPromo):
  116. self._merchant_promos.append(i)
  117. else:
  118. self._merchant_promos.append(InteligentMerchantPromo.from_alipay_dict(i))
  119. @property
  120. def name(self):
  121. return self._name
  122. @name.setter
  123. def name(self, value):
  124. self._name = value
  125. @property
  126. def owner_info(self):
  127. return self._owner_info
  128. @owner_info.setter
  129. def owner_info(self, value):
  130. if isinstance(value, PromoOperatorInfo):
  131. self._owner_info = value
  132. else:
  133. self._owner_info = PromoOperatorInfo.from_alipay_dict(value)
  134. @property
  135. def parent_promo_id(self):
  136. return self._parent_promo_id
  137. @parent_promo_id.setter
  138. def parent_promo_id(self, value):
  139. self._parent_promo_id = value
  140. @property
  141. def plan_id(self):
  142. return self._plan_id
  143. @plan_id.setter
  144. def plan_id(self, value):
  145. self._plan_id = value
  146. @property
  147. def promo_id(self):
  148. return self._promo_id
  149. @promo_id.setter
  150. def promo_id(self, value):
  151. self._promo_id = value
  152. @property
  153. def promos(self):
  154. return self._promos
  155. @promos.setter
  156. def promos(self, value):
  157. if isinstance(value, list):
  158. self._promos = list()
  159. for i in value:
  160. if isinstance(i, IntelligentPromoDetail):
  161. self._promos.append(i)
  162. else:
  163. self._promos.append(IntelligentPromoDetail.from_alipay_dict(i))
  164. @property
  165. def status(self):
  166. return self._status
  167. @status.setter
  168. def status(self, value):
  169. self._status = value
  170. @property
  171. def sub_promo_ids(self):
  172. return self._sub_promo_ids
  173. @sub_promo_ids.setter
  174. def sub_promo_ids(self, value):
  175. if isinstance(value, list):
  176. self._sub_promo_ids = list()
  177. for i in value:
  178. self._sub_promo_ids.append(i)
  179. @property
  180. def sub_status(self):
  181. return self._sub_status
  182. @sub_status.setter
  183. def sub_status(self, value):
  184. self._sub_status = value
  185. @property
  186. def template_id(self):
  187. return self._template_id
  188. @template_id.setter
  189. def template_id(self, value):
  190. self._template_id = value
  191. @property
  192. def type(self):
  193. return self._type
  194. @type.setter
  195. def type(self, value):
  196. self._type = value
  197. def to_alipay_dict(self):
  198. params = dict()
  199. if self.allow_auto_delay:
  200. if hasattr(self.allow_auto_delay, 'to_alipay_dict'):
  201. params['allow_auto_delay'] = self.allow_auto_delay.to_alipay_dict()
  202. else:
  203. params['allow_auto_delay'] = self.allow_auto_delay
  204. if self.audit_status:
  205. if hasattr(self.audit_status, 'to_alipay_dict'):
  206. params['audit_status'] = self.audit_status.to_alipay_dict()
  207. else:
  208. params['audit_status'] = self.audit_status
  209. if self.create_request_no:
  210. if hasattr(self.create_request_no, 'to_alipay_dict'):
  211. params['create_request_no'] = self.create_request_no.to_alipay_dict()
  212. else:
  213. params['create_request_no'] = self.create_request_no
  214. if self.creator_info:
  215. if hasattr(self.creator_info, 'to_alipay_dict'):
  216. params['creator_info'] = self.creator_info.to_alipay_dict()
  217. else:
  218. params['creator_info'] = self.creator_info
  219. if self.desc:
  220. if hasattr(self.desc, 'to_alipay_dict'):
  221. params['desc'] = self.desc.to_alipay_dict()
  222. else:
  223. params['desc'] = self.desc
  224. if self.ext_info:
  225. if hasattr(self.ext_info, 'to_alipay_dict'):
  226. params['ext_info'] = self.ext_info.to_alipay_dict()
  227. else:
  228. params['ext_info'] = self.ext_info
  229. if self.forecast_effect:
  230. if hasattr(self.forecast_effect, 'to_alipay_dict'):
  231. params['forecast_effect'] = self.forecast_effect.to_alipay_dict()
  232. else:
  233. params['forecast_effect'] = self.forecast_effect
  234. if self.gmt_closed:
  235. if hasattr(self.gmt_closed, 'to_alipay_dict'):
  236. params['gmt_closed'] = self.gmt_closed.to_alipay_dict()
  237. else:
  238. params['gmt_closed'] = self.gmt_closed
  239. if self.gmt_enabled:
  240. if hasattr(self.gmt_enabled, 'to_alipay_dict'):
  241. params['gmt_enabled'] = self.gmt_enabled.to_alipay_dict()
  242. else:
  243. params['gmt_enabled'] = self.gmt_enabled
  244. if self.gmt_end:
  245. if hasattr(self.gmt_end, 'to_alipay_dict'):
  246. params['gmt_end'] = self.gmt_end.to_alipay_dict()
  247. else:
  248. params['gmt_end'] = self.gmt_end
  249. if self.gmt_start:
  250. if hasattr(self.gmt_start, 'to_alipay_dict'):
  251. params['gmt_start'] = self.gmt_start.to_alipay_dict()
  252. else:
  253. params['gmt_start'] = self.gmt_start
  254. if self.merchant_promos:
  255. if isinstance(self.merchant_promos, list):
  256. for i in range(0, len(self.merchant_promos)):
  257. element = self.merchant_promos[i]
  258. if hasattr(element, 'to_alipay_dict'):
  259. self.merchant_promos[i] = element.to_alipay_dict()
  260. if hasattr(self.merchant_promos, 'to_alipay_dict'):
  261. params['merchant_promos'] = self.merchant_promos.to_alipay_dict()
  262. else:
  263. params['merchant_promos'] = self.merchant_promos
  264. if self.name:
  265. if hasattr(self.name, 'to_alipay_dict'):
  266. params['name'] = self.name.to_alipay_dict()
  267. else:
  268. params['name'] = self.name
  269. if self.owner_info:
  270. if hasattr(self.owner_info, 'to_alipay_dict'):
  271. params['owner_info'] = self.owner_info.to_alipay_dict()
  272. else:
  273. params['owner_info'] = self.owner_info
  274. if self.parent_promo_id:
  275. if hasattr(self.parent_promo_id, 'to_alipay_dict'):
  276. params['parent_promo_id'] = self.parent_promo_id.to_alipay_dict()
  277. else:
  278. params['parent_promo_id'] = self.parent_promo_id
  279. if self.plan_id:
  280. if hasattr(self.plan_id, 'to_alipay_dict'):
  281. params['plan_id'] = self.plan_id.to_alipay_dict()
  282. else:
  283. params['plan_id'] = self.plan_id
  284. if self.promo_id:
  285. if hasattr(self.promo_id, 'to_alipay_dict'):
  286. params['promo_id'] = self.promo_id.to_alipay_dict()
  287. else:
  288. params['promo_id'] = self.promo_id
  289. if self.promos:
  290. if isinstance(self.promos, list):
  291. for i in range(0, len(self.promos)):
  292. element = self.promos[i]
  293. if hasattr(element, 'to_alipay_dict'):
  294. self.promos[i] = element.to_alipay_dict()
  295. if hasattr(self.promos, 'to_alipay_dict'):
  296. params['promos'] = self.promos.to_alipay_dict()
  297. else:
  298. params['promos'] = self.promos
  299. if self.status:
  300. if hasattr(self.status, 'to_alipay_dict'):
  301. params['status'] = self.status.to_alipay_dict()
  302. else:
  303. params['status'] = self.status
  304. if self.sub_promo_ids:
  305. if isinstance(self.sub_promo_ids, list):
  306. for i in range(0, len(self.sub_promo_ids)):
  307. element = self.sub_promo_ids[i]
  308. if hasattr(element, 'to_alipay_dict'):
  309. self.sub_promo_ids[i] = element.to_alipay_dict()
  310. if hasattr(self.sub_promo_ids, 'to_alipay_dict'):
  311. params['sub_promo_ids'] = self.sub_promo_ids.to_alipay_dict()
  312. else:
  313. params['sub_promo_ids'] = self.sub_promo_ids
  314. if self.sub_status:
  315. if hasattr(self.sub_status, 'to_alipay_dict'):
  316. params['sub_status'] = self.sub_status.to_alipay_dict()
  317. else:
  318. params['sub_status'] = self.sub_status
  319. if self.template_id:
  320. if hasattr(self.template_id, 'to_alipay_dict'):
  321. params['template_id'] = self.template_id.to_alipay_dict()
  322. else:
  323. params['template_id'] = self.template_id
  324. if self.type:
  325. if hasattr(self.type, 'to_alipay_dict'):
  326. params['type'] = self.type.to_alipay_dict()
  327. else:
  328. params['type'] = self.type
  329. return params
  330. @staticmethod
  331. def from_alipay_dict(d):
  332. if not d:
  333. return None
  334. o = IntelligentPromo()
  335. if 'allow_auto_delay' in d:
  336. o.allow_auto_delay = d['allow_auto_delay']
  337. if 'audit_status' in d:
  338. o.audit_status = d['audit_status']
  339. if 'create_request_no' in d:
  340. o.create_request_no = d['create_request_no']
  341. if 'creator_info' in d:
  342. o.creator_info = d['creator_info']
  343. if 'desc' in d:
  344. o.desc = d['desc']
  345. if 'ext_info' in d:
  346. o.ext_info = d['ext_info']
  347. if 'forecast_effect' in d:
  348. o.forecast_effect = d['forecast_effect']
  349. if 'gmt_closed' in d:
  350. o.gmt_closed = d['gmt_closed']
  351. if 'gmt_enabled' in d:
  352. o.gmt_enabled = d['gmt_enabled']
  353. if 'gmt_end' in d:
  354. o.gmt_end = d['gmt_end']
  355. if 'gmt_start' in d:
  356. o.gmt_start = d['gmt_start']
  357. if 'merchant_promos' in d:
  358. o.merchant_promos = d['merchant_promos']
  359. if 'name' in d:
  360. o.name = d['name']
  361. if 'owner_info' in d:
  362. o.owner_info = d['owner_info']
  363. if 'parent_promo_id' in d:
  364. o.parent_promo_id = d['parent_promo_id']
  365. if 'plan_id' in d:
  366. o.plan_id = d['plan_id']
  367. if 'promo_id' in d:
  368. o.promo_id = d['promo_id']
  369. if 'promos' in d:
  370. o.promos = d['promos']
  371. if 'status' in d:
  372. o.status = d['status']
  373. if 'sub_promo_ids' in d:
  374. o.sub_promo_ids = d['sub_promo_ids']
  375. if 'sub_status' in d:
  376. o.sub_status = d['sub_status']
  377. if 'template_id' in d:
  378. o.template_id = d['template_id']
  379. if 'type' in d:
  380. o.type = d['type']
  381. return o