ArrangementBaseSelector.py 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import json
  4. from alipay.aop.api.constant.ParamConstants import *
  5. class ArrangementBaseSelector(object):
  6. def __init__(self):
  7. self._ar_statuses = None
  8. self._mark_type = None
  9. self._pd_codes = None
  10. self._pd_marks = None
  11. self._select_pd_mark = None
  12. self._select_pd_name = None
  13. @property
  14. def ar_statuses(self):
  15. return self._ar_statuses
  16. @ar_statuses.setter
  17. def ar_statuses(self, value):
  18. if isinstance(value, list):
  19. self._ar_statuses = list()
  20. for i in value:
  21. self._ar_statuses.append(i)
  22. @property
  23. def mark_type(self):
  24. return self._mark_type
  25. @mark_type.setter
  26. def mark_type(self, value):
  27. self._mark_type = value
  28. @property
  29. def pd_codes(self):
  30. return self._pd_codes
  31. @pd_codes.setter
  32. def pd_codes(self, value):
  33. if isinstance(value, list):
  34. self._pd_codes = list()
  35. for i in value:
  36. self._pd_codes.append(i)
  37. @property
  38. def pd_marks(self):
  39. return self._pd_marks
  40. @pd_marks.setter
  41. def pd_marks(self, value):
  42. if isinstance(value, list):
  43. self._pd_marks = list()
  44. for i in value:
  45. self._pd_marks.append(i)
  46. @property
  47. def select_pd_mark(self):
  48. return self._select_pd_mark
  49. @select_pd_mark.setter
  50. def select_pd_mark(self, value):
  51. self._select_pd_mark = value
  52. @property
  53. def select_pd_name(self):
  54. return self._select_pd_name
  55. @select_pd_name.setter
  56. def select_pd_name(self, value):
  57. self._select_pd_name = value
  58. def to_alipay_dict(self):
  59. params = dict()
  60. if self.ar_statuses:
  61. if isinstance(self.ar_statuses, list):
  62. for i in range(0, len(self.ar_statuses)):
  63. element = self.ar_statuses[i]
  64. if hasattr(element, 'to_alipay_dict'):
  65. self.ar_statuses[i] = element.to_alipay_dict()
  66. if hasattr(self.ar_statuses, 'to_alipay_dict'):
  67. params['ar_statuses'] = self.ar_statuses.to_alipay_dict()
  68. else:
  69. params['ar_statuses'] = self.ar_statuses
  70. if self.mark_type:
  71. if hasattr(self.mark_type, 'to_alipay_dict'):
  72. params['mark_type'] = self.mark_type.to_alipay_dict()
  73. else:
  74. params['mark_type'] = self.mark_type
  75. if self.pd_codes:
  76. if isinstance(self.pd_codes, list):
  77. for i in range(0, len(self.pd_codes)):
  78. element = self.pd_codes[i]
  79. if hasattr(element, 'to_alipay_dict'):
  80. self.pd_codes[i] = element.to_alipay_dict()
  81. if hasattr(self.pd_codes, 'to_alipay_dict'):
  82. params['pd_codes'] = self.pd_codes.to_alipay_dict()
  83. else:
  84. params['pd_codes'] = self.pd_codes
  85. if self.pd_marks:
  86. if isinstance(self.pd_marks, list):
  87. for i in range(0, len(self.pd_marks)):
  88. element = self.pd_marks[i]
  89. if hasattr(element, 'to_alipay_dict'):
  90. self.pd_marks[i] = element.to_alipay_dict()
  91. if hasattr(self.pd_marks, 'to_alipay_dict'):
  92. params['pd_marks'] = self.pd_marks.to_alipay_dict()
  93. else:
  94. params['pd_marks'] = self.pd_marks
  95. if self.select_pd_mark:
  96. if hasattr(self.select_pd_mark, 'to_alipay_dict'):
  97. params['select_pd_mark'] = self.select_pd_mark.to_alipay_dict()
  98. else:
  99. params['select_pd_mark'] = self.select_pd_mark
  100. if self.select_pd_name:
  101. if hasattr(self.select_pd_name, 'to_alipay_dict'):
  102. params['select_pd_name'] = self.select_pd_name.to_alipay_dict()
  103. else:
  104. params['select_pd_name'] = self.select_pd_name
  105. return params
  106. @staticmethod
  107. def from_alipay_dict(d):
  108. if not d:
  109. return None
  110. o = ArrangementBaseSelector()
  111. if 'ar_statuses' in d:
  112. o.ar_statuses = d['ar_statuses']
  113. if 'mark_type' in d:
  114. o.mark_type = d['mark_type']
  115. if 'pd_codes' in d:
  116. o.pd_codes = d['pd_codes']
  117. if 'pd_marks' in d:
  118. o.pd_marks = d['pd_marks']
  119. if 'select_pd_mark' in d:
  120. o.select_pd_mark = d['select_pd_mark']
  121. if 'select_pd_name' in d:
  122. o.select_pd_name = d['select_pd_name']
  123. return o