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.
 
 

65 lines
2.2 KiB

<?php
namespace App\Controller\v3;
use App\Controller\BaseController;
use App\Request\v3\UserOrderListRequest;
use App\Service\v3\Interfaces\OrderListServiceInterface;
use Hyperf\Di\Annotation\Inject;
use Psr\Http\Message\ResponseInterface;
/**
* 订单列表控制器,用户的,商户的
* Class OrderListController
* @package App\Controller\v3
*/
class OrderListController extends BaseController
{
/**
* @Inject
* @var OrderListServiceInterface
*/
protected $orderListService;
/**
* 用户订单列表(线上订单)
* 1、用户ID、订单类型tab、分页
* 2、返回数据,市场相关id、名称、电话;
* 3、返回数据,订单商品,id、名称、封面图;
* 4、返回数据,订单相关,订单ID、订单号、下单时间、订单状态、订单总额;
* @param UserOrderListRequest $request
* @return ResponseInterface
*/
public function onlineForUser(UserOrderListRequest $request)
{
$params = $request->validated();
$list = $this->orderListService->onlineByUser($params['user_id'], $params['tab'], $params['page'], $params['pagesize']);
return $this->success($list);
}
public function onlineForStore()
{
$params = $this->request->all();
$list = $this->orderListService->onlineByStore($params['store_id'], $params['tab'], $params['page'], $params['pagesize']);
return $this->success($list);
}
public function offlineForStore()
{
$storeId = $this->request->input('store_id','');
$page = $this->request->input('page',1);
$pagesize = $this->request->input('pagesize',10);
$startTime = $this->request->input('start_time','');
$endTime = $this->request->input('end_time','');
$list = $this->orderListService->offlineByStore($storeId,$page, $pagesize,$startTime,$endTime);
return $this->success($list);
}
public function offlineForUser(UserOrderListRequest $request)
{
$params = $request->validated();
$list = $this->orderListService->offlineByUser($params['user_id'], $params['page'], $params['pagesize']);
return $this->success($list);
}
}