FinanceInvoiceInfo.py 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  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.FinanceFileInfo import FinanceFileInfo
  6. class FinanceInvoiceInfo(object):
  7. def __init__(self):
  8. self._amount = None
  9. self._billing_date = None
  10. self._check_code = None
  11. self._file = None
  12. self._invoice_code = None
  13. self._invoice_number = None
  14. @property
  15. def amount(self):
  16. return self._amount
  17. @amount.setter
  18. def amount(self, value):
  19. self._amount = value
  20. @property
  21. def billing_date(self):
  22. return self._billing_date
  23. @billing_date.setter
  24. def billing_date(self, value):
  25. self._billing_date = value
  26. @property
  27. def check_code(self):
  28. return self._check_code
  29. @check_code.setter
  30. def check_code(self, value):
  31. self._check_code = value
  32. @property
  33. def file(self):
  34. return self._file
  35. @file.setter
  36. def file(self, value):
  37. if isinstance(value, FinanceFileInfo):
  38. self._file = value
  39. else:
  40. self._file = FinanceFileInfo.from_alipay_dict(value)
  41. @property
  42. def invoice_code(self):
  43. return self._invoice_code
  44. @invoice_code.setter
  45. def invoice_code(self, value):
  46. self._invoice_code = value
  47. @property
  48. def invoice_number(self):
  49. return self._invoice_number
  50. @invoice_number.setter
  51. def invoice_number(self, value):
  52. self._invoice_number = value
  53. def to_alipay_dict(self):
  54. params = dict()
  55. if self.amount:
  56. if hasattr(self.amount, 'to_alipay_dict'):
  57. params['amount'] = self.amount.to_alipay_dict()
  58. else:
  59. params['amount'] = self.amount
  60. if self.billing_date:
  61. if hasattr(self.billing_date, 'to_alipay_dict'):
  62. params['billing_date'] = self.billing_date.to_alipay_dict()
  63. else:
  64. params['billing_date'] = self.billing_date
  65. if self.check_code:
  66. if hasattr(self.check_code, 'to_alipay_dict'):
  67. params['check_code'] = self.check_code.to_alipay_dict()
  68. else:
  69. params['check_code'] = self.check_code
  70. if self.file:
  71. if hasattr(self.file, 'to_alipay_dict'):
  72. params['file'] = self.file.to_alipay_dict()
  73. else:
  74. params['file'] = self.file
  75. if self.invoice_code:
  76. if hasattr(self.invoice_code, 'to_alipay_dict'):
  77. params['invoice_code'] = self.invoice_code.to_alipay_dict()
  78. else:
  79. params['invoice_code'] = self.invoice_code
  80. if self.invoice_number:
  81. if hasattr(self.invoice_number, 'to_alipay_dict'):
  82. params['invoice_number'] = self.invoice_number.to_alipay_dict()
  83. else:
  84. params['invoice_number'] = self.invoice_number
  85. return params
  86. @staticmethod
  87. def from_alipay_dict(d):
  88. if not d:
  89. return None
  90. o = FinanceInvoiceInfo()
  91. if 'amount' in d:
  92. o.amount = d['amount']
  93. if 'billing_date' in d:
  94. o.billing_date = d['billing_date']
  95. if 'check_code' in d:
  96. o.check_code = d['check_code']
  97. if 'file' in d:
  98. o.file = d['file']
  99. if 'invoice_code' in d:
  100. o.invoice_code = d['invoice_code']
  101. if 'invoice_number' in d:
  102. o.invoice_number = d['invoice_number']
  103. return o