PaymentSchedule.py 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import json
  4. from alipay.aop.api.constant.ParamConstants import *
  5. class PaymentSchedule(object):
  6. def __init__(self):
  7. self._date = None
  8. self._repaid_interest_total = None
  9. self._repaid_penalty_total = None
  10. self._repaid_principal_total = None
  11. self._start_date = None
  12. self._term = None
  13. self._unpaid_interest_total = None
  14. self._unpaid_penalty_total = None
  15. self._unpaid_principal_total = None
  16. @property
  17. def date(self):
  18. return self._date
  19. @date.setter
  20. def date(self, value):
  21. self._date = value
  22. @property
  23. def repaid_interest_total(self):
  24. return self._repaid_interest_total
  25. @repaid_interest_total.setter
  26. def repaid_interest_total(self, value):
  27. self._repaid_interest_total = value
  28. @property
  29. def repaid_penalty_total(self):
  30. return self._repaid_penalty_total
  31. @repaid_penalty_total.setter
  32. def repaid_penalty_total(self, value):
  33. self._repaid_penalty_total = value
  34. @property
  35. def repaid_principal_total(self):
  36. return self._repaid_principal_total
  37. @repaid_principal_total.setter
  38. def repaid_principal_total(self, value):
  39. self._repaid_principal_total = value
  40. @property
  41. def start_date(self):
  42. return self._start_date
  43. @start_date.setter
  44. def start_date(self, value):
  45. self._start_date = value
  46. @property
  47. def term(self):
  48. return self._term
  49. @term.setter
  50. def term(self, value):
  51. self._term = value
  52. @property
  53. def unpaid_interest_total(self):
  54. return self._unpaid_interest_total
  55. @unpaid_interest_total.setter
  56. def unpaid_interest_total(self, value):
  57. self._unpaid_interest_total = value
  58. @property
  59. def unpaid_penalty_total(self):
  60. return self._unpaid_penalty_total
  61. @unpaid_penalty_total.setter
  62. def unpaid_penalty_total(self, value):
  63. self._unpaid_penalty_total = value
  64. @property
  65. def unpaid_principal_total(self):
  66. return self._unpaid_principal_total
  67. @unpaid_principal_total.setter
  68. def unpaid_principal_total(self, value):
  69. self._unpaid_principal_total = value
  70. def to_alipay_dict(self):
  71. params = dict()
  72. if self.date:
  73. if hasattr(self.date, 'to_alipay_dict'):
  74. params['date'] = self.date.to_alipay_dict()
  75. else:
  76. params['date'] = self.date
  77. if self.repaid_interest_total:
  78. if hasattr(self.repaid_interest_total, 'to_alipay_dict'):
  79. params['repaid_interest_total'] = self.repaid_interest_total.to_alipay_dict()
  80. else:
  81. params['repaid_interest_total'] = self.repaid_interest_total
  82. if self.repaid_penalty_total:
  83. if hasattr(self.repaid_penalty_total, 'to_alipay_dict'):
  84. params['repaid_penalty_total'] = self.repaid_penalty_total.to_alipay_dict()
  85. else:
  86. params['repaid_penalty_total'] = self.repaid_penalty_total
  87. if self.repaid_principal_total:
  88. if hasattr(self.repaid_principal_total, 'to_alipay_dict'):
  89. params['repaid_principal_total'] = self.repaid_principal_total.to_alipay_dict()
  90. else:
  91. params['repaid_principal_total'] = self.repaid_principal_total
  92. if self.start_date:
  93. if hasattr(self.start_date, 'to_alipay_dict'):
  94. params['start_date'] = self.start_date.to_alipay_dict()
  95. else:
  96. params['start_date'] = self.start_date
  97. if self.term:
  98. if hasattr(self.term, 'to_alipay_dict'):
  99. params['term'] = self.term.to_alipay_dict()
  100. else:
  101. params['term'] = self.term
  102. if self.unpaid_interest_total:
  103. if hasattr(self.unpaid_interest_total, 'to_alipay_dict'):
  104. params['unpaid_interest_total'] = self.unpaid_interest_total.to_alipay_dict()
  105. else:
  106. params['unpaid_interest_total'] = self.unpaid_interest_total
  107. if self.unpaid_penalty_total:
  108. if hasattr(self.unpaid_penalty_total, 'to_alipay_dict'):
  109. params['unpaid_penalty_total'] = self.unpaid_penalty_total.to_alipay_dict()
  110. else:
  111. params['unpaid_penalty_total'] = self.unpaid_penalty_total
  112. if self.unpaid_principal_total:
  113. if hasattr(self.unpaid_principal_total, 'to_alipay_dict'):
  114. params['unpaid_principal_total'] = self.unpaid_principal_total.to_alipay_dict()
  115. else:
  116. params['unpaid_principal_total'] = self.unpaid_principal_total
  117. return params
  118. @staticmethod
  119. def from_alipay_dict(d):
  120. if not d:
  121. return None
  122. o = PaymentSchedule()
  123. if 'date' in d:
  124. o.date = d['date']
  125. if 'repaid_interest_total' in d:
  126. o.repaid_interest_total = d['repaid_interest_total']
  127. if 'repaid_penalty_total' in d:
  128. o.repaid_penalty_total = d['repaid_penalty_total']
  129. if 'repaid_principal_total' in d:
  130. o.repaid_principal_total = d['repaid_principal_total']
  131. if 'start_date' in d:
  132. o.start_date = d['start_date']
  133. if 'term' in d:
  134. o.term = d['term']
  135. if 'unpaid_interest_total' in d:
  136. o.unpaid_interest_total = d['unpaid_interest_total']
  137. if 'unpaid_penalty_total' in d:
  138. o.unpaid_penalty_total = d['unpaid_penalty_total']
  139. if 'unpaid_principal_total' in d:
  140. o.unpaid_principal_total = d['unpaid_principal_total']
  141. return o