companyService = new CompanyService(); $this->productService = new ProductService(); } public function behaviors(): array { $behaviors = parent::behaviors(); unset($behaviors['authenticator']); return $behaviors; } /** * * @OA\Get(path="/product", * summary="Список товаров компании", * description="Получить список всех товаров компании", * tags={"Product"}, * @OA\Parameter( * name="company_id", * in="query", * required=true, * @OA\Schema( * type="integer", * default=null * ) * ), * @OA\Parameter( * name="category_id", * in="query", * required=false, * @OA\Schema( * type="integer", * default=null * ) * ), * @OA\Response( * response=200, * description="Возвращает массив", * @OA\MediaType( * mediaType="application/json", * @OA\Schema( * type="array", * @OA\Items( * @OA\Property( * property="id", * type="integer", * example="1", * ), * @OA\Property( * property="title", * type="string", * example="Кальянный клуб LA", * ), * @OA\Property( * property="article", * type="string", * example="005", * ), * @OA\Property( * property="type", * type="integer", * example="1", * ), * @OA\Property( * property="price", * type="integer", * example="250", * ), * @OA\Property( * property="status", * type="integer", * example="1", * ), * @OA\Property( * property="product_category_id", * type="integer", * example="5", * ), * @OA\Property( * property="company_id", * type="integer", * example="23", * ), * ) * ), * ), * * ), * ) * * @return array */ public function actionIndex(int $company_id, int $category_id = null): array { return $this->productService->findBy($company_id, $category_id); } }