Magento Extensions Rating 2024
EXTENSIONS BY CATEGORY
B2B (Business-To-Business)
Blog
Customer
ERP (Enterprise Resource Planning)
Mega Menu
One Step Checkout
Order
POS (Point Of Sale)
Search
Shopping Cart
Sitemap
SEO
Social
Stock & Inventory Management
EXTENSIONS BY DEVELOPER
aheadWorks
Amasty
Boost My Shop
BSS Commerce
Magestore
MageWorx
Mirasvit
Templates Master
Wyomind
XTENTO
Magento 2 Documentation
Magento 2 Documentation
2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
vendor
magento
module-grouped-product-graph-ql
Model
Resolver
GroupedItems.php
Go to the documentation of this file.
1
<?php
6
declare(strict_types=1);
7
8
namespace
Magento\GroupedProductGraphQl\Model\Resolver
;
9
10
use
Magento\Framework\GraphQl\Exception\GraphQlInputException
;
11
use
Magento\Framework\GraphQl\Schema\Type\ResolveInfo
;
12
use
Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Deferred\Product
;
13
use
Magento\Framework\GraphQl\Config\Element\Field
;
14
use
Magento\Framework\GraphQl\Query\ResolverInterface
;
15
use
Magento\GroupedProduct\Model\Product\Initialization\Helper\ProductLinks\Plugin\Grouped
;
16
20
class
GroupedItems
implements
ResolverInterface
21
{
25
private
$productResolver;
26
30
public
function
__construct
(
31
Product
$productResolver
32
) {
33
$this->productResolver = $productResolver;
34
}
35
39
public
function
resolve
(
40
Field
$field,
41
$context,
42
ResolveInfo
$info
,
43
array
$value
=
null
,
44
array $args =
null
45
) {
46
if
(!isset(
$value
[
'model'
])) {
47
throw
new
GraphQlInputException
(
__
(
'"model" value should be specified'
));
48
}
49
50
$data
= [];
51
$productModel
=
$value
[
'model'
];
52
$links
=
$productModel
->getProductLinks();
53
foreach
(
$links
as
$link
) {
54
if
(
$link
->getLinkType() !==
Grouped::TYPE_NAME
) {
55
continue
;
56
}
57
58
$data
[] = [
59
'position'
=> (int)
$link
->getPosition(),
60
'qty'
=>
$link
->getExtensionAttributes()->getQty(),
61
'sku'
=>
$link
->getLinkedProductSku()
62
];
63
}
64
65
return
$data
;
66
}
67
}
Magento\Framework\GraphQl\Query\ResolverInterface
Definition:
ResolverInterface.php:18
Magento\Framework\GraphQl\Schema\Type\ResolveInfo
Definition:
ResolveInfo.php:13
Magento\GroupedProductGraphQl\Model\Resolver\GroupedItems
Definition:
GroupedItems.php:20
Magento\GroupedProductGraphQl\Model\Resolver
Definition:
GroupedItems.php:8
__
__()
Definition:
__.php:13
$link
$link
Definition:
quote_with_downloadable_product.php:27
Magento\Framework\GraphQl\Config\Element\Field
Definition:
Field.php:15
$data
$data
Definition:
attribute_set_with_image_attribute.php:16
$value
$value
Definition:
gender.phtml:16
$links
$links
Definition:
downloadable_product_with_files_and_sample_url.php:39
Magento\GroupedProduct\Model\Product\Initialization\Helper\ProductLinks\Plugin\Grouped\TYPE_NAME
const TYPE_NAME
Definition:
Grouped.php:23
Magento\GroupedProductGraphQl\Model\Resolver\GroupedItems\resolve
resolve(Field $field, $context, ResolveInfo $info, array $value=null, array $args=null)
Definition:
GroupedItems.php:39
Magento\CatalogGraphQl\Model\Resolver\Products\DataProvider\Deferred\Product
Definition:
Product.php:17
$productModel
$productModel
Definition:
create_products.php:7
$info
foreach( $_productCollection as $_product)() ?>" class $info
Definition:
listing.phtml:52
Magento\GroupedProductGraphQl\Model\Resolver\GroupedItems\__construct
__construct(Product $productResolver)
Definition:
GroupedItems.php:30
Magento\GroupedProduct\Model\Product\Initialization\Helper\ProductLinks\Plugin\Grouped
Definition:
Grouped.php:18
Magento\Framework\GraphQl\Exception\GraphQlInputException
Definition:
GraphQlInputException.php:16