Settlement.php 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. /**
  3. * Niushop商城系统 - 团队十年电商经验汇集巨献!
  4. * =========================================================
  5. * Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
  6. * ----------------------------------------------
  7. * 官方网址: https://www.niushop.com
  8. * =========================================================
  9. */
  10. namespace addon\store\storeapi\controller;
  11. use addon\store\model\Settlement as SettlementModel;
  12. use app\model\order\OrderCommon as OrderCommonModel;
  13. use app\storeapi\controller\BaseStoreApi;
  14. /**
  15. * 门店结算控制器
  16. */
  17. class Settlement extends BaseStoreApi
  18. {
  19. /**
  20. * 门店结算列表
  21. */
  22. public function records()
  23. {
  24. $model = new SettlementModel();
  25. $page = isset($this->params[ 'page' ]) ? $this->params[ 'page' ] : 1;
  26. $page_size = isset($this->params[ 'page_size' ]) ? $this->params[ 'page_size' ] : PAGE_LIST_ROWS;
  27. $condition[] = [ 'store_id', '=', $this->store_id ];
  28. $start_time = isset($this->params[ 'start_time' ]) ? $this->params[ 'start_time' ] : '';
  29. $end_time = isset($this->params[ 'end_time' ]) ? $this->params[ 'end_time' ] : '';
  30. if (!empty($start_time)) $start_time = strtotime($start_time);
  31. if (!empty($end_time)) $end_time = strtotime($end_time);
  32. if (!empty($start_time) && empty($end_time)) {
  33. $condition[] = [ 'start_time', '>=', $start_time ];
  34. } elseif (empty($start_time) && !empty($end_time)) {
  35. $condition[] = [ 'end_time', '<=', $end_time ];
  36. } elseif (!empty($start_time) && !empty($end_time)) {
  37. $condition[] = [ 'start_time', '>=', $start_time ];
  38. $condition[] = [ 'end_time', '<=', $end_time ];
  39. }
  40. $order = 'id desc';
  41. $field = 'id,settlement_no,site_id,site_name,store_name,order_money,shop_money,refund_platform_money,platform_money,refund_shop_money,
  42. refund_money,create_time,commission,is_settlement,offline_refund_money,offline_order_money,start_time,end_time';
  43. $list = $model->getStoreSettlementPageList($condition, $page, $page_size, $order, $field);
  44. return $this->response($list);
  45. }
  46. }