order.py 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. # -*- coding: utf-8 -*-
  2. from __future__ import absolute_import, unicode_literals
  3. from optionaldict import optionaldict
  4. from library.wechatpy.client.api.base import BaseWeChatAPI
  5. class MerchantOrder(BaseWeChatAPI):
  6. API_BASE_URL = 'https://api.weixin.qq.com/'
  7. def get(self, order_id):
  8. res = self._post(
  9. 'merchant/order/getbyid',
  10. data={
  11. 'order_id': order_id
  12. },
  13. result_processor=lambda x: x['order']
  14. )
  15. return res
  16. def get_by_filter(self, status=None, begin_time=None, end_time=None):
  17. filter_dict = optionaldict(
  18. status=status,
  19. begintime=begin_time,
  20. endtime=end_time
  21. )
  22. res = self._post(
  23. 'merchant/order/getbyfilter',
  24. data=dict(filter_dict),
  25. result_processor=lambda x: x['order_list']
  26. )
  27. return res
  28. def set_delivery(self, order_id, company, track_no,
  29. need_delivery=1, is_others=0):
  30. return self._post(
  31. 'merchant/order/setdelivery',
  32. data={
  33. 'order_id': order_id,
  34. 'delivery_company': company,
  35. 'delivery_track_no': track_no,
  36. 'need_delivery': need_delivery,
  37. 'is_others': is_others
  38. }
  39. )
  40. def close(self, order_id):
  41. return self._post(
  42. 'merchant/order/close',
  43. data={
  44. 'order_id': order_id
  45. }
  46. )