SettlementService.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?php
  2. namespace addons\HuijuBill\common\service;
  3. use addons\HuijuBill\common\enums\SettlementOrderStatusEnum;
  4. use addons\HuijuBill\common\enums\SettlementTypeEnum;
  5. use addons\HuijuBill\common\logic\PayApiLogic;
  6. use common\models\common\MiddleMch;
  7. use yii\base\Model;
  8. class SettlementService extends Model
  9. {
  10. /**
  11. * 商户ID
  12. *
  13. * @var integer
  14. */
  15. public $mall_id;
  16. /**
  17. * 錯誤
  18. *
  19. * @var string
  20. */
  21. public $error;
  22. /**
  23. * 获取结算列表
  24. *
  25. * @param array $params
  26. * @return array
  27. */
  28. public function getSettlementList($params)
  29. {
  30. $mch = MiddleMch::getMch($this->mall_id);
  31. $service = new PayApiLogic($mch);
  32. $start_time = !empty($params['data']) ? $params['data'][0] : date('Y-m-d', strtotime('-90day'));
  33. $end_time = !empty($params['data']) ? $params['data'][1] : date('Y-m-d');
  34. $page = empty($params['page']) ? 1 : intval($params['page']);
  35. $data = $service->order_settle_list($start_time, $end_time, $page);
  36. $list = $data['items'];
  37. foreach ($list as $k => $v) {
  38. $list[$k]['order_status_text'] = SettlementOrderStatusEnum::getValue($v['order_status']);
  39. $list[$k]['type_text'] = SettlementTypeEnum::getValue($v['type']);
  40. }
  41. $res['list'] = $list;
  42. $res['limit'] = 10;
  43. $res['page_count'] = ceil($data['pageInfo']['total'] / 15);
  44. $res['current_page'] = $data['pageInfo']['currentPage'];
  45. return $res;
  46. }
  47. }