/** * {@inheritdoc} */ public function assignedProducts($categoryId) { $category = $this->getCategory($categoryId); $productsPosition = $category->getProductsPosition(); /** @var \Magento\Framework\Data\Collection\Db $products */ $products = $category->getProductCollection(); /** @var \Magento\Catalog\Service\V1\Data\Eav\Category\Product[] $dtoProductList */ $dtoProductList = []; /** @var \Magento\Catalog\Model\Product $product */ foreach ($products->getItems() as $productId => $product) { $dtoProductList[] = $this->productLinkBuilder->populateWithArray([ProductLink::SKU => $product->getSku(), ProductLink::POSITION => $productsPosition[$productId]])->create(); } return $dtoProductList; }