KoubeiRetailWmsOutboundorderCreateModel.py 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  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.OperateContext import OperateContext
  6. from alipay.aop.api.domain.OutboundOrderLine import OutboundOrderLine
  7. from alipay.aop.api.domain.OutboundOrder import OutboundOrder
  8. class KoubeiRetailWmsOutboundorderCreateModel(object):
  9. def __init__(self):
  10. self._operate_context = None
  11. self._order_lines = None
  12. self._outbound_order = None
  13. @property
  14. def operate_context(self):
  15. return self._operate_context
  16. @operate_context.setter
  17. def operate_context(self, value):
  18. if isinstance(value, OperateContext):
  19. self._operate_context = value
  20. else:
  21. self._operate_context = OperateContext.from_alipay_dict(value)
  22. @property
  23. def order_lines(self):
  24. return self._order_lines
  25. @order_lines.setter
  26. def order_lines(self, value):
  27. if isinstance(value, list):
  28. self._order_lines = list()
  29. for i in value:
  30. if isinstance(i, OutboundOrderLine):
  31. self._order_lines.append(i)
  32. else:
  33. self._order_lines.append(OutboundOrderLine.from_alipay_dict(i))
  34. @property
  35. def outbound_order(self):
  36. return self._outbound_order
  37. @outbound_order.setter
  38. def outbound_order(self, value):
  39. if isinstance(value, OutboundOrder):
  40. self._outbound_order = value
  41. else:
  42. self._outbound_order = OutboundOrder.from_alipay_dict(value)
  43. def to_alipay_dict(self):
  44. params = dict()
  45. if self.operate_context:
  46. if hasattr(self.operate_context, 'to_alipay_dict'):
  47. params['operate_context'] = self.operate_context.to_alipay_dict()
  48. else:
  49. params['operate_context'] = self.operate_context
  50. if self.order_lines:
  51. if isinstance(self.order_lines, list):
  52. for i in range(0, len(self.order_lines)):
  53. element = self.order_lines[i]
  54. if hasattr(element, 'to_alipay_dict'):
  55. self.order_lines[i] = element.to_alipay_dict()
  56. if hasattr(self.order_lines, 'to_alipay_dict'):
  57. params['order_lines'] = self.order_lines.to_alipay_dict()
  58. else:
  59. params['order_lines'] = self.order_lines
  60. if self.outbound_order:
  61. if hasattr(self.outbound_order, 'to_alipay_dict'):
  62. params['outbound_order'] = self.outbound_order.to_alipay_dict()
  63. else:
  64. params['outbound_order'] = self.outbound_order
  65. return params
  66. @staticmethod
  67. def from_alipay_dict(d):
  68. if not d:
  69. return None
  70. o = KoubeiRetailWmsOutboundorderCreateModel()
  71. if 'operate_context' in d:
  72. o.operate_context = d['operate_context']
  73. if 'order_lines' in d:
  74. o.order_lines = d['order_lines']
  75. if 'outbound_order' in d:
  76. o.outbound_order = d['outbound_order']
  77. return o