container->get(DynamicSegmentFilterRepository::class); $filters = $dynamicSegmentFilterRepository->findBy( [ 'filterData.action' => [ WooCommerceUsedPaymentMethod::ACTION, WooCommerceUsedShippingMethod::ACTION, ], ] ); /** @var DynamicSegmentFilterEntity $filter */ foreach ($filters as $filter) { $filterData = $filter->getFilterData(); $data = $filter->getFilterData()->getData(); if (isset($data['used_payment_method_days'])) { $days = $data['used_payment_method_days']; } elseif (isset($data['used_shipping_method_days'])) { $days = $data['used_shipping_method_days']; } $filterType = $filterData->getFilterType(); $filterAction = $filterData->getAction(); if (isset($days) && is_string($filterType) && is_string($filterAction)) { $data['days'] = $days; $data['timeframe'] = DynamicSegmentFilterData::TIMEFRAME_IN_THE_LAST; $newFilterData = new DynamicSegmentFilterData($filterType, $filterAction, $data); $filter->setFilterData($newFilterData); $this->entityManager->persist($filter); $this->entityManager->flush(); } } } }