KoubeiCateringOrderBillApplyModel.py 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245
  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.PosDiscountDetail import PosDiscountDetail
  6. from alipay.aop.api.domain.KbPosBillDishDetail import KbPosBillDishDetail
  7. from alipay.aop.api.domain.PosBillPayChannel import PosBillPayChannel
  8. from alipay.aop.api.domain.PosOrderKey import PosOrderKey
  9. class KoubeiCateringOrderBillApplyModel(object):
  10. def __init__(self):
  11. self._bill_amount = None
  12. self._discount_details = None
  13. self._dish_details = None
  14. self._ext_info = None
  15. self._member_flag = None
  16. self._memo = None
  17. self._pay_amount = None
  18. self._pay_channels = None
  19. self._people_list = None
  20. self._pos_order_key = None
  21. self._receipt_amount = None
  22. self._settle_time = None
  23. @property
  24. def bill_amount(self):
  25. return self._bill_amount
  26. @bill_amount.setter
  27. def bill_amount(self, value):
  28. self._bill_amount = value
  29. @property
  30. def discount_details(self):
  31. return self._discount_details
  32. @discount_details.setter
  33. def discount_details(self, value):
  34. if isinstance(value, list):
  35. self._discount_details = list()
  36. for i in value:
  37. if isinstance(i, PosDiscountDetail):
  38. self._discount_details.append(i)
  39. else:
  40. self._discount_details.append(PosDiscountDetail.from_alipay_dict(i))
  41. @property
  42. def dish_details(self):
  43. return self._dish_details
  44. @dish_details.setter
  45. def dish_details(self, value):
  46. if isinstance(value, list):
  47. self._dish_details = list()
  48. for i in value:
  49. if isinstance(i, KbPosBillDishDetail):
  50. self._dish_details.append(i)
  51. else:
  52. self._dish_details.append(KbPosBillDishDetail.from_alipay_dict(i))
  53. @property
  54. def ext_info(self):
  55. return self._ext_info
  56. @ext_info.setter
  57. def ext_info(self, value):
  58. self._ext_info = value
  59. @property
  60. def member_flag(self):
  61. return self._member_flag
  62. @member_flag.setter
  63. def member_flag(self, value):
  64. self._member_flag = value
  65. @property
  66. def memo(self):
  67. return self._memo
  68. @memo.setter
  69. def memo(self, value):
  70. self._memo = value
  71. @property
  72. def pay_amount(self):
  73. return self._pay_amount
  74. @pay_amount.setter
  75. def pay_amount(self, value):
  76. self._pay_amount = value
  77. @property
  78. def pay_channels(self):
  79. return self._pay_channels
  80. @pay_channels.setter
  81. def pay_channels(self, value):
  82. if isinstance(value, list):
  83. self._pay_channels = list()
  84. for i in value:
  85. if isinstance(i, PosBillPayChannel):
  86. self._pay_channels.append(i)
  87. else:
  88. self._pay_channels.append(PosBillPayChannel.from_alipay_dict(i))
  89. @property
  90. def people_list(self):
  91. return self._people_list
  92. @people_list.setter
  93. def people_list(self, value):
  94. self._people_list = value
  95. @property
  96. def pos_order_key(self):
  97. return self._pos_order_key
  98. @pos_order_key.setter
  99. def pos_order_key(self, value):
  100. if isinstance(value, PosOrderKey):
  101. self._pos_order_key = value
  102. else:
  103. self._pos_order_key = PosOrderKey.from_alipay_dict(value)
  104. @property
  105. def receipt_amount(self):
  106. return self._receipt_amount
  107. @receipt_amount.setter
  108. def receipt_amount(self, value):
  109. self._receipt_amount = value
  110. @property
  111. def settle_time(self):
  112. return self._settle_time
  113. @settle_time.setter
  114. def settle_time(self, value):
  115. self._settle_time = value
  116. def to_alipay_dict(self):
  117. params = dict()
  118. if self.bill_amount:
  119. if hasattr(self.bill_amount, 'to_alipay_dict'):
  120. params['bill_amount'] = self.bill_amount.to_alipay_dict()
  121. else:
  122. params['bill_amount'] = self.bill_amount
  123. if self.discount_details:
  124. if isinstance(self.discount_details, list):
  125. for i in range(0, len(self.discount_details)):
  126. element = self.discount_details[i]
  127. if hasattr(element, 'to_alipay_dict'):
  128. self.discount_details[i] = element.to_alipay_dict()
  129. if hasattr(self.discount_details, 'to_alipay_dict'):
  130. params['discount_details'] = self.discount_details.to_alipay_dict()
  131. else:
  132. params['discount_details'] = self.discount_details
  133. if self.dish_details:
  134. if isinstance(self.dish_details, list):
  135. for i in range(0, len(self.dish_details)):
  136. element = self.dish_details[i]
  137. if hasattr(element, 'to_alipay_dict'):
  138. self.dish_details[i] = element.to_alipay_dict()
  139. if hasattr(self.dish_details, 'to_alipay_dict'):
  140. params['dish_details'] = self.dish_details.to_alipay_dict()
  141. else:
  142. params['dish_details'] = self.dish_details
  143. if self.ext_info:
  144. if hasattr(self.ext_info, 'to_alipay_dict'):
  145. params['ext_info'] = self.ext_info.to_alipay_dict()
  146. else:
  147. params['ext_info'] = self.ext_info
  148. if self.member_flag:
  149. if hasattr(self.member_flag, 'to_alipay_dict'):
  150. params['member_flag'] = self.member_flag.to_alipay_dict()
  151. else:
  152. params['member_flag'] = self.member_flag
  153. if self.memo:
  154. if hasattr(self.memo, 'to_alipay_dict'):
  155. params['memo'] = self.memo.to_alipay_dict()
  156. else:
  157. params['memo'] = self.memo
  158. if self.pay_amount:
  159. if hasattr(self.pay_amount, 'to_alipay_dict'):
  160. params['pay_amount'] = self.pay_amount.to_alipay_dict()
  161. else:
  162. params['pay_amount'] = self.pay_amount
  163. if self.pay_channels:
  164. if isinstance(self.pay_channels, list):
  165. for i in range(0, len(self.pay_channels)):
  166. element = self.pay_channels[i]
  167. if hasattr(element, 'to_alipay_dict'):
  168. self.pay_channels[i] = element.to_alipay_dict()
  169. if hasattr(self.pay_channels, 'to_alipay_dict'):
  170. params['pay_channels'] = self.pay_channels.to_alipay_dict()
  171. else:
  172. params['pay_channels'] = self.pay_channels
  173. if self.people_list:
  174. if hasattr(self.people_list, 'to_alipay_dict'):
  175. params['people_list'] = self.people_list.to_alipay_dict()
  176. else:
  177. params['people_list'] = self.people_list
  178. if self.pos_order_key:
  179. if hasattr(self.pos_order_key, 'to_alipay_dict'):
  180. params['pos_order_key'] = self.pos_order_key.to_alipay_dict()
  181. else:
  182. params['pos_order_key'] = self.pos_order_key
  183. if self.receipt_amount:
  184. if hasattr(self.receipt_amount, 'to_alipay_dict'):
  185. params['receipt_amount'] = self.receipt_amount.to_alipay_dict()
  186. else:
  187. params['receipt_amount'] = self.receipt_amount
  188. if self.settle_time:
  189. if hasattr(self.settle_time, 'to_alipay_dict'):
  190. params['settle_time'] = self.settle_time.to_alipay_dict()
  191. else:
  192. params['settle_time'] = self.settle_time
  193. return params
  194. @staticmethod
  195. def from_alipay_dict(d):
  196. if not d:
  197. return None
  198. o = KoubeiCateringOrderBillApplyModel()
  199. if 'bill_amount' in d:
  200. o.bill_amount = d['bill_amount']
  201. if 'discount_details' in d:
  202. o.discount_details = d['discount_details']
  203. if 'dish_details' in d:
  204. o.dish_details = d['dish_details']
  205. if 'ext_info' in d:
  206. o.ext_info = d['ext_info']
  207. if 'member_flag' in d:
  208. o.member_flag = d['member_flag']
  209. if 'memo' in d:
  210. o.memo = d['memo']
  211. if 'pay_amount' in d:
  212. o.pay_amount = d['pay_amount']
  213. if 'pay_channels' in d:
  214. o.pay_channels = d['pay_channels']
  215. if 'people_list' in d:
  216. o.people_list = d['people_list']
  217. if 'pos_order_key' in d:
  218. o.pos_order_key = d['pos_order_key']
  219. if 'receipt_amount' in d:
  220. o.receipt_amount = d['receipt_amount']
  221. if 'settle_time' in d:
  222. o.settle_time = d['settle_time']
  223. return o