AlipayOpenPublicPersonalizedExtensionCreateModel.py 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  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.ExtensionArea import ExtensionArea
  6. from alipay.aop.api.domain.LabelRule import LabelRule
  7. class AlipayOpenPublicPersonalizedExtensionCreateModel(object):
  8. def __init__(self):
  9. self._areas = None
  10. self._label_rule = None
  11. @property
  12. def areas(self):
  13. return self._areas
  14. @areas.setter
  15. def areas(self, value):
  16. if isinstance(value, list):
  17. self._areas = list()
  18. for i in value:
  19. if isinstance(i, ExtensionArea):
  20. self._areas.append(i)
  21. else:
  22. self._areas.append(ExtensionArea.from_alipay_dict(i))
  23. @property
  24. def label_rule(self):
  25. return self._label_rule
  26. @label_rule.setter
  27. def label_rule(self, value):
  28. if isinstance(value, list):
  29. self._label_rule = list()
  30. for i in value:
  31. if isinstance(i, LabelRule):
  32. self._label_rule.append(i)
  33. else:
  34. self._label_rule.append(LabelRule.from_alipay_dict(i))
  35. def to_alipay_dict(self):
  36. params = dict()
  37. if self.areas:
  38. if isinstance(self.areas, list):
  39. for i in range(0, len(self.areas)):
  40. element = self.areas[i]
  41. if hasattr(element, 'to_alipay_dict'):
  42. self.areas[i] = element.to_alipay_dict()
  43. if hasattr(self.areas, 'to_alipay_dict'):
  44. params['areas'] = self.areas.to_alipay_dict()
  45. else:
  46. params['areas'] = self.areas
  47. if self.label_rule:
  48. if isinstance(self.label_rule, list):
  49. for i in range(0, len(self.label_rule)):
  50. element = self.label_rule[i]
  51. if hasattr(element, 'to_alipay_dict'):
  52. self.label_rule[i] = element.to_alipay_dict()
  53. if hasattr(self.label_rule, 'to_alipay_dict'):
  54. params['label_rule'] = self.label_rule.to_alipay_dict()
  55. else:
  56. params['label_rule'] = self.label_rule
  57. return params
  58. @staticmethod
  59. def from_alipay_dict(d):
  60. if not d:
  61. return None
  62. o = AlipayOpenPublicPersonalizedExtensionCreateModel()
  63. if 'areas' in d:
  64. o.areas = d['areas']
  65. if 'label_rule' in d:
  66. o.label_rule = d['label_rule']
  67. return o