AlipayOfflineTrade.py 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import json
  4. from alipay.aop.api.constant.ParamConstants import *
  5. class AlipayOfflineTrade(object):
  6. def __init__(self):
  7. self._actual_order_time = None
  8. self._amount = None
  9. self._card_type = None
  10. self._order_biz_context = None
  11. self._out_trade_no = None
  12. self._records = None
  13. self._seller_login_name = None
  14. self._subject = None
  15. self._user_id = None
  16. @property
  17. def actual_order_time(self):
  18. return self._actual_order_time
  19. @actual_order_time.setter
  20. def actual_order_time(self, value):
  21. self._actual_order_time = value
  22. @property
  23. def amount(self):
  24. return self._amount
  25. @amount.setter
  26. def amount(self, value):
  27. self._amount = value
  28. @property
  29. def card_type(self):
  30. return self._card_type
  31. @card_type.setter
  32. def card_type(self, value):
  33. self._card_type = value
  34. @property
  35. def order_biz_context(self):
  36. return self._order_biz_context
  37. @order_biz_context.setter
  38. def order_biz_context(self, value):
  39. self._order_biz_context = value
  40. @property
  41. def out_trade_no(self):
  42. return self._out_trade_no
  43. @out_trade_no.setter
  44. def out_trade_no(self, value):
  45. self._out_trade_no = value
  46. @property
  47. def records(self):
  48. return self._records
  49. @records.setter
  50. def records(self, value):
  51. if isinstance(value, list):
  52. self._records = list()
  53. for i in value:
  54. self._records.append(i)
  55. @property
  56. def seller_login_name(self):
  57. return self._seller_login_name
  58. @seller_login_name.setter
  59. def seller_login_name(self, value):
  60. self._seller_login_name = value
  61. @property
  62. def subject(self):
  63. return self._subject
  64. @subject.setter
  65. def subject(self, value):
  66. self._subject = value
  67. @property
  68. def user_id(self):
  69. return self._user_id
  70. @user_id.setter
  71. def user_id(self, value):
  72. self._user_id = value
  73. def to_alipay_dict(self):
  74. params = dict()
  75. if self.actual_order_time:
  76. if hasattr(self.actual_order_time, 'to_alipay_dict'):
  77. params['actual_order_time'] = self.actual_order_time.to_alipay_dict()
  78. else:
  79. params['actual_order_time'] = self.actual_order_time
  80. if self.amount:
  81. if hasattr(self.amount, 'to_alipay_dict'):
  82. params['amount'] = self.amount.to_alipay_dict()
  83. else:
  84. params['amount'] = self.amount
  85. if self.card_type:
  86. if hasattr(self.card_type, 'to_alipay_dict'):
  87. params['card_type'] = self.card_type.to_alipay_dict()
  88. else:
  89. params['card_type'] = self.card_type
  90. if self.order_biz_context:
  91. if hasattr(self.order_biz_context, 'to_alipay_dict'):
  92. params['order_biz_context'] = self.order_biz_context.to_alipay_dict()
  93. else:
  94. params['order_biz_context'] = self.order_biz_context
  95. if self.out_trade_no:
  96. if hasattr(self.out_trade_no, 'to_alipay_dict'):
  97. params['out_trade_no'] = self.out_trade_no.to_alipay_dict()
  98. else:
  99. params['out_trade_no'] = self.out_trade_no
  100. if self.records:
  101. if isinstance(self.records, list):
  102. for i in range(0, len(self.records)):
  103. element = self.records[i]
  104. if hasattr(element, 'to_alipay_dict'):
  105. self.records[i] = element.to_alipay_dict()
  106. if hasattr(self.records, 'to_alipay_dict'):
  107. params['records'] = self.records.to_alipay_dict()
  108. else:
  109. params['records'] = self.records
  110. if self.seller_login_name:
  111. if hasattr(self.seller_login_name, 'to_alipay_dict'):
  112. params['seller_login_name'] = self.seller_login_name.to_alipay_dict()
  113. else:
  114. params['seller_login_name'] = self.seller_login_name
  115. if self.subject:
  116. if hasattr(self.subject, 'to_alipay_dict'):
  117. params['subject'] = self.subject.to_alipay_dict()
  118. else:
  119. params['subject'] = self.subject
  120. if self.user_id:
  121. if hasattr(self.user_id, 'to_alipay_dict'):
  122. params['user_id'] = self.user_id.to_alipay_dict()
  123. else:
  124. params['user_id'] = self.user_id
  125. return params
  126. @staticmethod
  127. def from_alipay_dict(d):
  128. if not d:
  129. return None
  130. o = AlipayOfflineTrade()
  131. if 'actual_order_time' in d:
  132. o.actual_order_time = d['actual_order_time']
  133. if 'amount' in d:
  134. o.amount = d['amount']
  135. if 'card_type' in d:
  136. o.card_type = d['card_type']
  137. if 'order_biz_context' in d:
  138. o.order_biz_context = d['order_biz_context']
  139. if 'out_trade_no' in d:
  140. o.out_trade_no = d['out_trade_no']
  141. if 'records' in d:
  142. o.records = d['records']
  143. if 'seller_login_name' in d:
  144. o.seller_login_name = d['seller_login_name']
  145. if 'subject' in d:
  146. o.subject = d['subject']
  147. if 'user_id' in d:
  148. o.user_id = d['user_id']
  149. return o