You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.7 KiB

5 years ago
5 years ago
  1. <?php
  2. namespace App\Controller\v3;
  3. use App\Controller\BaseController;
  4. use App\Request\v3\UserOrderListRequest;
  5. use App\Service\v3\Interfaces\OrderListServiceInterface;
  6. use Hyperf\Di\Annotation\Inject;
  7. use Psr\Http\Message\ResponseInterface;
  8. /**
  9. * 订单列表控制器,用户的,商户的
  10. * Class OrderListController
  11. * @package App\Controller\v3
  12. */
  13. class OrderListController extends BaseController
  14. {
  15. /**
  16. * @Inject
  17. * @var OrderListServiceInterface
  18. */
  19. protected $orderListService;
  20. /**
  21. * 用户订单列表(线上订单)
  22. * 1、用户ID、订单类型tab、分页
  23. * 2、返回数据,市场相关id、名称、电话;
  24. * 3、返回数据,订单商品,id、名称、封面图;
  25. * 4、返回数据,订单相关,订单ID、订单号、下单时间、订单状态、订单总额;
  26. * @param UserOrderListRequest $request
  27. * @return ResponseInterface
  28. */
  29. public function onlineForUser(UserOrderListRequest $request)
  30. {
  31. $params = $request->validated();
  32. $list = $this->orderListService->onlineByUser($params['user_id'], $params['tab'], $params['page'], $params['pagesize']);
  33. return $this->success($list);
  34. }
  35. public function onlineForStore()
  36. {
  37. $params = $this->request->all();
  38. $list = $this->orderListService->onlineByStore($params['store_id'], $params['tab'], $params['page'], $params['pagesize']);
  39. return $this->success($list);
  40. }
  41. public function offlineForStore()
  42. {
  43. $params = $this->request->all();
  44. $list = $this->orderListService->offlineByStore($params['store_id'], $params['tab'], $params['page'], $params['pagesize'],$params['start_time'],$params['end_time']);
  45. return $this->success($list);
  46. }
  47. }