/**
* Add price data to the index data.
*
* {@inheritdoc}
*/
public function addData($storeId, array $indexData)
{
$priceData = $this->resourceModel->loadPriceData($storeId, array_keys($indexData));
foreach ($priceData as $priceDataRow) {
$productId = (int) $priceDataRow['entity_id'];
$isOriginalPriceReliable = $this->isOriginalPriceReliable($indexData[$productId]['type_id']);
$originalPrice = $priceDataRow['min_price'];
$finalPrice = $priceDataRow['min_price'];
if ($isOriginalPriceReliable) {
if ($priceDataRow['price']) {
$originalPrice = $priceDataRow['price'];
}
if ($priceDataRow['final_price']) {
$finalPrice = $priceDataRow['final_price'];
}
}
$indexData[$productId]['price'][] = ['price' => $finalPrice, 'original_price' => $originalPrice, 'is_discount' => $finalPrice < $originalPrice, 'customer_group_id' => $priceDataRow['customer_group_id']];
}
return $indexData;
}