Найти комплект товаров по входящим в него товарам

Модератор
#
Найти комплект товаров по входящим в него товарам
// Магазин с ID=1
$oShop = Core_Entity::factory('Shop', 1);

// Идентификаторы товаров, которые должны быть в комплекте
$aNeeds = array(12266, 24890, 24891);

if (count($aNeeds))
{
   $oShop_Item = $oShop->Shop_Items;
   $oShop_Item->queryBuilder()
      ->select('shop_items.*')
      ->join('shop_item_sets', 'shop_items.id', '=', 'shop_item_sets.shop_item_id')
      ->where('shop_item_sets. shop_item_set_id', 'IN', $aNeeds)
      ->groupBy('shop_items.id')
      ->having('COUNT(*)', '=', count($aNeeds));
      
   $aShop_Item = $oShop_Item->findAll(FALSE);
   
   echo "\nНайдено: ", count($aShop_Item);
   
   foreach ($aShop_Item as $oShop_Item)
   {
      // do smth.
   }
}
Авторизация