TemplateInfo.py 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  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.FillContent import FillContent
  6. from alipay.aop.api.domain.SignField import SignField
  7. class TemplateInfo(object):
  8. def __init__(self):
  9. self._fill_contents = None
  10. self._name = None
  11. self._signfields = None
  12. self._template_id = None
  13. @property
  14. def fill_contents(self):
  15. return self._fill_contents
  16. @fill_contents.setter
  17. def fill_contents(self, value):
  18. if isinstance(value, list):
  19. self._fill_contents = list()
  20. for i in value:
  21. if isinstance(i, FillContent):
  22. self._fill_contents.append(i)
  23. else:
  24. self._fill_contents.append(FillContent.from_alipay_dict(i))
  25. @property
  26. def name(self):
  27. return self._name
  28. @name.setter
  29. def name(self, value):
  30. self._name = value
  31. @property
  32. def signfields(self):
  33. return self._signfields
  34. @signfields.setter
  35. def signfields(self, value):
  36. if isinstance(value, SignField):
  37. self._signfields = value
  38. else:
  39. self._signfields = SignField.from_alipay_dict(value)
  40. @property
  41. def template_id(self):
  42. return self._template_id
  43. @template_id.setter
  44. def template_id(self, value):
  45. self._template_id = value
  46. def to_alipay_dict(self):
  47. params = dict()
  48. if self.fill_contents:
  49. if isinstance(self.fill_contents, list):
  50. for i in range(0, len(self.fill_contents)):
  51. element = self.fill_contents[i]
  52. if hasattr(element, 'to_alipay_dict'):
  53. self.fill_contents[i] = element.to_alipay_dict()
  54. if hasattr(self.fill_contents, 'to_alipay_dict'):
  55. params['fill_contents'] = self.fill_contents.to_alipay_dict()
  56. else:
  57. params['fill_contents'] = self.fill_contents
  58. if self.name:
  59. if hasattr(self.name, 'to_alipay_dict'):
  60. params['name'] = self.name.to_alipay_dict()
  61. else:
  62. params['name'] = self.name
  63. if self.signfields:
  64. if hasattr(self.signfields, 'to_alipay_dict'):
  65. params['signfields'] = self.signfields.to_alipay_dict()
  66. else:
  67. params['signfields'] = self.signfields
  68. if self.template_id:
  69. if hasattr(self.template_id, 'to_alipay_dict'):
  70. params['template_id'] = self.template_id.to_alipay_dict()
  71. else:
  72. params['template_id'] = self.template_id
  73. return params
  74. @staticmethod
  75. def from_alipay_dict(d):
  76. if not d:
  77. return None
  78. o = TemplateInfo()
  79. if 'fill_contents' in d:
  80. o.fill_contents = d['fill_contents']
  81. if 'name' in d:
  82. o.name = d['name']
  83. if 'signfields' in d:
  84. o.signfields = d['signfields']
  85. if 'template_id' in d:
  86. o.template_id = d['template_id']
  87. return o