Skip to content

Supplier Strategies

LowestPriceStrategy

Select supplier with lowest price:

$strategy = $this->productSupplierFactory->create('LowestPriceStrategy');
$result = $strategy->getSuppliers($product, $options);

LowestPriceWithDeadlineStrategy

Select supplier by price and delivery time:

$strategy = $this->productSupplierFactory->create('LowestPriceWithDeadlineStrategy');
$result = $strategy->getSuppliers($product, ['deadline' => $requiredDate]);

Custom Strategy

To create a custom strategy:

  1. Create class in Tools/ProductSupplier/Strategies/
  2. Extend AbstractProductSupplierStrategy
  3. Implement getSuppliers() method
  4. Register in factory