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