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.
77 lines
2.4 KiB
77 lines
2.4 KiB
<?php
|
|
|
|
namespace App\Controller\v3;
|
|
|
|
use App\Controller\BaseController;
|
|
use App\Request\v3\StoreIndexRequest;
|
|
use App\Service\v3\Interfaces\CategoryServiceInterface;
|
|
use App\Service\v3\Interfaces\CollectStoreServiceInterface;
|
|
use App\Service\v3\Interfaces\StoreServiceInterface;
|
|
use Hyperf\Di\Annotation\Inject;
|
|
use Psr\Http\Message\ResponseInterface;
|
|
use \App\Service\v3\Interfaces\BusinessHoursServiceInterface;
|
|
|
|
class StoreController extends BaseController
|
|
{
|
|
|
|
/**
|
|
* @Inject
|
|
* @var StoreServiceInterface
|
|
*/
|
|
protected $storeService;
|
|
|
|
/**
|
|
* @Inject
|
|
* @var CategoryServiceInterface
|
|
*/
|
|
protected $categoryService;
|
|
|
|
/**
|
|
* @Inject
|
|
* @var CollectStoreServiceInterface
|
|
*/
|
|
protected $collectService;
|
|
|
|
/**
|
|
* @Inject
|
|
* @var BusinessHoursServiceInterface
|
|
*/
|
|
protected $businessHoursService;
|
|
|
|
/**
|
|
* 商户详情页
|
|
* 1、商户id用来查询的,还要有user_id
|
|
* 2、返回数据,id、logo、name、收藏状态、简介、地址、营业状态、营业时间、联系电话
|
|
* 3、返回数据,商品推荐的分类,需要经过商户商品反查
|
|
* 4、分类下的商品,则复用商品搜索接口
|
|
* @param StoreIndexRequest $request
|
|
* @return ResponseInterface
|
|
*/
|
|
public function index(StoreIndexRequest $request)
|
|
{
|
|
$params = $request->validated();
|
|
$data = $this->storeService->detail($params['store_id']);
|
|
$data['is_collected'] = (bool)$this->collectService->check($params['user_id'],$params['store_id']);
|
|
$data['goods_types'] = $this->categoryService->allForStore($params['store_id']);
|
|
return $this->success(['store' => $data]);
|
|
}
|
|
|
|
public function getBusinessHours()
|
|
{
|
|
$storeId = $this->request->input('store_id');
|
|
$res = $this->businessHoursService->check($storeId);
|
|
return $this->success($res);
|
|
}
|
|
|
|
public function updateBusinessHours()
|
|
{
|
|
$storeId = $this->request->input('store_id');
|
|
$isRest = $this->request->input('is_rest','');
|
|
$time1 = $this->request->input('time1','');
|
|
$time2 = $this->request->input('time2','');
|
|
$time3 = $this->request->input('time3','');
|
|
$time4 = $this->request->input('time4','');
|
|
$res = $this->businessHoursService->do($storeId,$isRest,$time1,$time2,$time3,$time4);
|
|
return $this->success($res);
|
|
}
|
|
}
|