AlipayDaoweiOrderRefundModel.py 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  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.OrderRefundInfo import OrderRefundInfo
  6. class AlipayDaoweiOrderRefundModel(object):
  7. def __init__(self):
  8. self._memo = None
  9. self._order_no = None
  10. self._out_refund_id = None
  11. self._refund_amount = None
  12. self._refund_details = None
  13. @property
  14. def memo(self):
  15. return self._memo
  16. @memo.setter
  17. def memo(self, value):
  18. self._memo = value
  19. @property
  20. def order_no(self):
  21. return self._order_no
  22. @order_no.setter
  23. def order_no(self, value):
  24. self._order_no = value
  25. @property
  26. def out_refund_id(self):
  27. return self._out_refund_id
  28. @out_refund_id.setter
  29. def out_refund_id(self, value):
  30. self._out_refund_id = value
  31. @property
  32. def refund_amount(self):
  33. return self._refund_amount
  34. @refund_amount.setter
  35. def refund_amount(self, value):
  36. self._refund_amount = value
  37. @property
  38. def refund_details(self):
  39. return self._refund_details
  40. @refund_details.setter
  41. def refund_details(self, value):
  42. if isinstance(value, list):
  43. self._refund_details = list()
  44. for i in value:
  45. if isinstance(i, OrderRefundInfo):
  46. self._refund_details.append(i)
  47. else:
  48. self._refund_details.append(OrderRefundInfo.from_alipay_dict(i))
  49. def to_alipay_dict(self):
  50. params = dict()
  51. if self.memo:
  52. if hasattr(self.memo, 'to_alipay_dict'):
  53. params['memo'] = self.memo.to_alipay_dict()
  54. else:
  55. params['memo'] = self.memo
  56. if self.order_no:
  57. if hasattr(self.order_no, 'to_alipay_dict'):
  58. params['order_no'] = self.order_no.to_alipay_dict()
  59. else:
  60. params['order_no'] = self.order_no
  61. if self.out_refund_id:
  62. if hasattr(self.out_refund_id, 'to_alipay_dict'):
  63. params['out_refund_id'] = self.out_refund_id.to_alipay_dict()
  64. else:
  65. params['out_refund_id'] = self.out_refund_id
  66. if self.refund_amount:
  67. if hasattr(self.refund_amount, 'to_alipay_dict'):
  68. params['refund_amount'] = self.refund_amount.to_alipay_dict()
  69. else:
  70. params['refund_amount'] = self.refund_amount
  71. if self.refund_details:
  72. if isinstance(self.refund_details, list):
  73. for i in range(0, len(self.refund_details)):
  74. element = self.refund_details[i]
  75. if hasattr(element, 'to_alipay_dict'):
  76. self.refund_details[i] = element.to_alipay_dict()
  77. if hasattr(self.refund_details, 'to_alipay_dict'):
  78. params['refund_details'] = self.refund_details.to_alipay_dict()
  79. else:
  80. params['refund_details'] = self.refund_details
  81. return params
  82. @staticmethod
  83. def from_alipay_dict(d):
  84. if not d:
  85. return None
  86. o = AlipayDaoweiOrderRefundModel()
  87. if 'memo' in d:
  88. o.memo = d['memo']
  89. if 'order_no' in d:
  90. o.order_no = d['order_no']
  91. if 'out_refund_id' in d:
  92. o.out_refund_id = d['out_refund_id']
  93. if 'refund_amount' in d:
  94. o.refund_amount = d['refund_amount']
  95. if 'refund_details' in d:
  96. o.refund_details = d['refund_details']
  97. return o