MessageTemplate.py 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  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.MessageContext import MessageContext
  6. class MessageTemplate(object):
  7. def __init__(self):
  8. self._context = None
  9. self._template_id = None
  10. @property
  11. def context(self):
  12. return self._context
  13. @context.setter
  14. def context(self, value):
  15. if isinstance(value, MessageContext):
  16. self._context = value
  17. else:
  18. self._context = MessageContext.from_alipay_dict(value)
  19. @property
  20. def template_id(self):
  21. return self._template_id
  22. @template_id.setter
  23. def template_id(self, value):
  24. self._template_id = value
  25. def to_alipay_dict(self):
  26. params = dict()
  27. if self.context:
  28. if hasattr(self.context, 'to_alipay_dict'):
  29. params['context'] = self.context.to_alipay_dict()
  30. else:
  31. params['context'] = self.context
  32. if self.template_id:
  33. if hasattr(self.template_id, 'to_alipay_dict'):
  34. params['template_id'] = self.template_id.to_alipay_dict()
  35. else:
  36. params['template_id'] = self.template_id
  37. return params
  38. @staticmethod
  39. def from_alipay_dict(d):
  40. if not d:
  41. return None
  42. o = MessageTemplate()
  43. if 'context' in d:
  44. o.context = d['context']
  45. if 'template_id' in d:
  46. o.template_id = d['template_id']
  47. return o