Skip to content

Commit 756cf1e

Browse files
committed
ACP2E-1172: categoryList Graphql request show 0 product count
1 parent 4ea05fc commit 756cf1e

File tree

1 file changed

+22
-5
lines changed

1 file changed

+22
-5
lines changed

app/code/Magento/CatalogGraphQl/Model/AttributesJoiner.php

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ public function join(FieldNode $fieldNode, AbstractCollection $collection, Resol
6464
* @param FieldNode $fieldNode
6565
* @param ResolveInfo $resolveInfo
6666
* @return string[]
67-
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
6867
*/
6968
public function getQueryFields(FieldNode $fieldNode, ResolveInfo $resolveInfo): array
7069
{
@@ -87,10 +86,11 @@ public function getQueryFields(FieldNode $fieldNode, ResolveInfo $resolveInfo):
8786
}
8887
} else {
8988
$selectedFields[] = $field->name->value;
90-
if ($resolveInfo->fieldName === self::REQUEST_FIELD_NAME
91-
&& $field->name->value === CategoryInterface::KEY_PRODUCT_COUNT) {
92-
$selectedFields[] = 'is_anchor';
93-
}
89+
$selectedFields = $this->addIsAnchoredAttributeToSelectedFiled(
90+
$resolveInfo,
91+
$field,
92+
$selectedFields
93+
);
9494
}
9595
}
9696
if ($fragmentFields) {
@@ -178,4 +178,21 @@ private function setSelectionsForFieldNode(FieldNode $fieldNode, array $selected
178178
{
179179
$this->queryFields[$fieldNode->name->value][$fieldNode->name->loc->start] = $selectedFields;
180180
}
181+
182+
/**
183+
* Add `is_anchor` attribute to selected field
184+
*
185+
* @param $resolveInfo
186+
* @param $field
187+
* @param $selectedFields
188+
* @return array
189+
*/
190+
private function addIsAnchoredAttributeToSelectedFiled($resolveInfo, $field, $selectedFields): array
191+
{
192+
if ($resolveInfo->fieldName === self::REQUEST_FIELD_NAME
193+
&& $field->name->value === CategoryInterface::KEY_PRODUCT_COUNT) {
194+
$selectedFields[] = 'is_anchor';
195+
}
196+
return $selectedFields;
197+
}
181198
}

0 commit comments

Comments
 (0)