/**
  * Helper function that adds a FilterGroup to the collection.
  *
  * @param FilterGroup $filterGroup
  * @param Collection $collection
  * @return void
  * @throws \Magento\Framework\Exception\InputException
  */
 protected function addFilterGroupToCollection(FilterGroup $filterGroup, Collection $collection)
 {
     $fields = [];
     $conditions = [];
     foreach ($filterGroup->getFilters() as $filter) {
         $condition = $filter->getConditionType() ? $filter->getConditionType() : 'eq';
         $field = $this->translateField($filter->getField());
         $fields[] = $field;
         $conditions[] = [$condition => $filter->getValue()];
         switch ($field) {
             case 'rate.tax_calculation_rate_id':
                 $collection->joinCalculationData('rate');
                 break;
             case 'ctc.customer_tax_class_id':
                 $collection->joinCalculationData('ctc');
                 break;
             case 'ptc.product_tax_class_id':
                 $collection->joinCalculationData('ptc');
                 break;
         }
     }
     if ($fields) {
         $collection->addFieldToFilter($fields, $conditions);
     }
 }