/**
  * {@inheritdoc}
  */
 public function handle(CriteriaPartInterface $criteriaPart, Criteria $criteria, Search $search, ShopContextInterface $context)
 {
     /** @var CustomerGroupCondition $criteriaPart */
     $filter = new NotFilter(new TermsFilter('blockedCustomerGroupIds', $criteriaPart->getCustomerGroupIds()));
     if ($criteria->hasBaseCondition($criteriaPart->getName())) {
         $search->addFilter($filter);
     } else {
         $search->addPostFilter($filter);
     }
 }