Below is my product collection code:
$productCollection = $this->productCollectionFactory->create();
$productCollection->addMinimalPrice();
$productCollection->addFinalPrice();
$productCollection->addAttributeToFilter('status',
array('eq' => \Magento\Catalog\Model\Product\Attribute\Source\Status::STATUS_ENABLED));
$productCollection->addAttributeToFilter('type_id',
array('eq' => \Magento\Catalog\Model\Product\Type::TYPE_SIMPLE));
$productCollection->addAttributeToFilter(
'visibility', array('in' =>
array(
\Magento\Catalog\Model\Product\Visibility::VISIBILITY_BOTH,
\Magento\Catalog\Model\Product\Visibility::VISIBILITY_IN_CATALOG
)
)
);
if ($productCollection->count())
{
foreach ($productCollection as $product)
{
echo $product->getFinalPrice();
echo $product->getPrice();
}
}
Both price gives same amount.It should give product original price and special price. Please advise me for if I have missed something in code.