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.

64 lines
2.2 KiB

5 years ago
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'], $params['last_id']);
  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'], $params['last_id']);
  39. return $this->success($list);
  40. }
  41. public function offlineForStore()
  42. {
  43. $storeId = $this->request->input('store_id','');
  44. $page = $this->request->input('page',1);
  45. $pagesize = $this->request->input('pagesize',10);
  46. $startTime = $this->request->input('start_time','');
  47. $endTime = $this->request->input('end_time','');
  48. $list = $this->orderListService->offlineByStore($storeId,$page, $pagesize,$startTime,$endTime);
  49. return $this->success($list);
  50. }
  51. public function offlineForUser(UserOrderListRequest $request)
  52. {
  53. $params = $request->validated();
  54. $list = $this->orderListService->offlineByUser($params['user_id'], $params['page'], $params['pagesize']);
  55. return $this->success($list);
  56. }
  57. }