AlipayBusinessOrderConsultModel.py 2.8 KB

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